Bosko Milekic imported mbuma, an mbuf and cluster allocator built on the UMA (Uniform Memory Access) framework, that will replace mballoc, the old allocator. Bosko has written a paper talking about the new allocator.
Bosko Milekic imported mbuma, an mbuf and cluster allocator built on the UMA (Uniform Memory Access) framework, that will replace mballoc, the old allocator. Bosko has written a paper talking about the new allocator.
i have noticed that the BSD people like to investigate issues, design solutions, publish them in a coherent manner, and open the work up for peer review.
i wish the same was true for development on the linux kernel. this is more true since the linux kernel is “very advanced” – but I, and my colleagues and friends, cannot easily find such published designs and analyses for say the linux network buffer memory allocator. this is not an an incitement or cheap comment, this is true for non elite people like myself who want to find not just the information (“read the code”, how helpful) but also the design and thought process behind such implementations.
Well, that is the main difference between Linux. On one side we have Linux which is an orgy of code being submitted left, right and centre where as FreeBSD takes the more academic approach to developing by writing whitepapers, getting feedback, then writing a design, getting more feedback, then implementing the design.
Although this does slow down the development, what it does allow is for adequate testing of the concept before it developed. Not to sound mean, but how many additions have been sent to the linux kernel only to find that it needs to be replaced completely in 3 months time because there was an inherient limitation caused by the lack of insight by the original programmer.
For example, very little of UFS has changed over the life of FreeBSD. Appart from the usual house cleaning and tuning, it has pretty much stayed stable for the many years it has been used. Same goes for the networking stack as well and many other parts of the FreeBSD operating system.
Well, that is the main difference between Linux. On one side we have Linux which is an orgy of code being submitted left, right and centre where as FreeBSD takes the more academic approach to developing by writing whitepapers, getting feedback, then writing a design, getting more feedback, then implementing the design.
Not at all. Much of the design and discussion goes on behind the scenes, on mailing lists, in “real world” workplaces, in text documents. Just because they don’t tend to produce as many pretty postscript documents, doesn’t mean Linux kernel hackers don’t research, design, and follow good engineering procedures.
It seems to me that actually, the FreeBSD guys spend all their time procrastinating, patting themselves on their backs, and bitching about Linux. See the FreeBSD 5 development branch, for example: it is so weighed down with locking that the network stack is less than half the speed of FreeBSD 4, and yet it still doesn’t even scale to 2 CPUs for this alarmingly common workload:
http://marc.theaimsgroup.com/?t=108490932700001&r=1&w=2&n=77
The purpose of this development branch was to get “world class scalability without ending up with a tangle of locking like Linux is going to”. Actually it is turning into a train wreck due to lack of design and testing.
Although this does slow down the development, what it does allow is for adequate testing of the concept before it developed. Not to sound mean, but how many additions have been sent to the linux kernel only to find that it needs to be replaced completely in 3 months time because there was an inherient limitation caused by the lack of insight by the original programmer.
Name one.
How about FreeBSD SCHED_ULE scheduler, which is a reimplementation of Linux 2.6’s scheduler? However, due to lack of testing and/or ability to fix it, it continues to have big problems.
For example, very little of UFS has changed over the life of FreeBSD. Appart from the usual house cleaning and tuning, it has pretty much stayed stable for the many years it has been used. Same goes for the networking stack as well and many other parts of the FreeBSD operating system.
FreeBSD added softupdates to UFS, Linux added journalling to ext2. Linux’s solution seems to be turning out the superior design.
http://marc.theaimsgroup.com/?l=freebsd-current&m=108562544930755&w…
Now, let me give you FreeBSDer’s some advice. FreeBSD is not God’s gift to man. It is not flat out better than Linux. And Linux is not an orgy of code being submitted and backed out left and right.
FreeBSD is actually quite far behind Linux in some areas and is getting further behind in many. It is risking a great deal by ignoring its own problems, and ignoring and dismissing or making up excuses when it is inferior to Linux.
Get your arses into gear, stop patting each other’s backs, stop making the same old jokes about Linux being for people who hate Windows ad nausea, stop telling people they must have done something wrong if they show Linux doing better than FreeBSD at something, accept some responsibility and accountability, admit your mistakes. It still isn’t too late for FreeBSD.
Does anyone else find themselves terminally annoyed and bored with the way FreeBSD articles are continually hijacked and turned into FreeBSD versus Linux discussions?