FreeBSD, Stealthy Open Source Project
zam4ever writes "Sean Michael Kerner has written an article on how FreeBSD has become a Stealth-Growth Open Source Project with various reasons outlined for FreeBSD's growth over the last years."
← Back to Stories (view on slashdot.org)
Quandt also contends that FreeBSD is not currently on the same level as Linux when it comes to supporting heavy enterprise workloads...
:)
I was almost certain this paragraph was going to end praising FreeBSD over Linux, and I was slightly suprised to see this was not the case. FreeBSD's ability to cope with extremely high workloads is often cited as one of the reasons to use it over Linux in such environments.
However, I don't remember ever seeing any evidence of this, except that FreeBSD has proven itself time and time again on some of the largest, busiest internet sites. It'd be interesting to see how the two compared side-by-side in a real production environment. Perhaps someone can convince Yahoo to switch to Linux for a day
</ BSD advocacy >
I know for damn sure I'm one of those who's gonna seriously love having a 5-STABLE branch. :)
Damn tho, they need to stop talking to Linux people for these articles. I'm sick of hearing the GPL partyline.
FreeBSD is used on over 95 of the top 100 servers (greatest average uptime). FreeBSD is tested and true on the server-side in a way few linux distrobutions can claim. The closest any distro has come to actually matching reliability with FreeBSD is Debian. But even then, FreeBSD is still light-years ahead. I'm not really sure what inspired this article, but a simple google search reveals that BSD is the route most major corporations are taking with servers. So while I do appreciate GNU/GPL support, try to be less blatant. ;)
Woah, 3 devils on the main page (for me at least), all posted within a few minutes. Is BSD dying faster today or are they simply on Speed?
Bitten Apples are still better than dirty Windows...
Uh oh. I read the sentence "Linux actually inherits a lot of BSD code" and immdiately thought of Ken Brown. Ken, if you're reading this (or having it translated into a version using only monosyllabic words) be advised that the preceding quote refers to GNU/Linux, not the Linux kernel that Linux wrote in a year.
Actually, I was trying to be Insightful, not Funny.
It is now official. FreeBSD is Undead.
It has long been argued that FreeBSD is dead, but now new evidence is coming to light that it has been resurrected, and like a zombie process is lurching across the Unix landscape once again.
Recent growth in FreeBSD's market share, as reported by Slashdot, is evidence that a Faustian pact with the daemons has been made. Stay tuned for more on this recent development...
over one million new domains were hosted on FreeBSD over the last year
Since OS X (Darwin) is based on FreeBSD, does this mean that the Netcraft figures counted OS X Server hosts as FreeBSD?
But why hasn't FreeBSD become as widespread as Linux? The answers may lie in its history.
That's roughly like asking: why do people eat less chocolate than they eat potatoes?
The answer is not history, it's that they are different kinds of "products" with different strengths and weaknesses.
The thing that sells me for FreeBSD in corporate environments is that FreeBSD is an operating system. The same group of people do the kernel *and* the OS. I've put a lot of FreeBSD boxes in production corporate environments, and I've never been bitten by the choice of OS, so I've become a pretty loyal punter. On the other hand, I just can't bring myself to put any OS that uses the linux *kernel* (there isn't an OS called 'linux' as best as I can tell) on a production enviroment - I've always had the impression that the Linuxes are all terribly fragmented, incoherent, and you never know what you're getting.
(by about now, all the script kids with mod points have cluelessly clicked the 'flamebait' button already... should I bother going on?!!! :-) )
In other news, I've become a really big fan of Gentoo Linux... it's just brilliant. I'm using it all kinds of non-production environments, and loving every minute of it. Bottom line though, it's too hard to sell something that is just a kernel as stable, reliable, and suitable for business.
I find your ideas intriguing and I wish to subscribe to your newsletter.
FreeBSD is a "stealthy" open source project in the same way the Brooklyn Bridge is a "stealthy" public works project:
It's been there forever, doing its job, fully appreciated only by an informed minority.
PS: Neither are for sale. :-)
org.slashdot.post.SignatureNotFoundException: ewg
I have several corporate systems consisting of Sun E10k hosts, Linux, and FreeBSD systems. In my experience, FreeBSD performs very well under heavy load, on par with Solaris and slightly better than Linux. Not that I'm downing Linux; Each OS has strengths and weaknesses, but the author seemed to indicate that FreeBSD was not suitable for corporate use and I believe that it is.
According to Open Source Development Labs (OSDL), which bills itself as a "center of gravity" for Linux development, Free BSD is on a separate path compared to Linux. Then why aren't they called the Linux Development Labs?
Let me say that I'm a happy Linux user, with 3 systems, each working fairly well (only one is in constant use; the others I use for fun). In my experience Linux is a very robust system (I've tried Gentoo and Red Hat, with Gentoo being my favorite), but I also tried OpenBSD. It gave me the feeling that if I got to know it better, then it would be great. But I wasn't into running a big server, so I left it alone. At some point, I would like to try FreeBSD, because it has a great reputation. I don't have the hardware right now, but I heard about a FreeBSD LiveCD that I would like to know more about. Why do open-source projects bicker among each other so much? Think "Life of Brian": Brian: "People, people, we should be fighting the common enemy." Fighters: "The Judean People's Front!" Brian: "No! The Romans!" Until Windows is brought down to an equal level, there is no reason to compete among Open OSs. After all, the *NIX (or *BSD) motto is: do one thing, do it well.
As far as stability and consistancey goes, only Debian-Stable approaches BSD, because Debian enforces a strict development and testing process (as opposed to adding in just any random unstable bleeding edge package because it is "new").
Where Linux does badly is in "out of memory" situations. I doubt a load average of 7 will, by itself, kill any system, but I've seen Linux boxes become unusable because of memory leaks -- hard reboot required, or equally bad, eventually some random processes get killed that bring the machine back up but all those processes have to be restarted by hand. Ditto if all those processes contributing to the load average of 7 required a huge chunk of memory. FreeBSD shines in this situation. If you configure enough swap space, it will usually get through somehow, if not, it will kill the offending process but not butcher the system.
it uses a much more monolithic kernel than Linux, making it lose some flexibility
Wrong. FreeBSD uses KLD modules just as extensively as Linux.
You wouldn't really want to use FreeBSD for an embedded system
I'm using FreeBSD on Soekris net4801 boxes as router/postfix/imap/http/... low-power ADSL appliance.
cpghost at Cordula's Web.
A few hundred words of copy from a Linux advocate with a few choice quotes from a BSD advocate for balance. Other than the once-a-month "there is more than linux in open-source operating systems" there is not really that much in this article that is NEWS or worth reading.
I don't believe (although I could well be wrong. Please correct me if I am) that it uses the new KSE in the 5.x branch, so it's still slower than on other platforms for multithreaded things.
I am TheRaven on Soylent News
It's not about how small the kernel image gets, but how much RAM it typically uses. The net4801 is a rather powerful box with 128 MB RAM. You can easily fit a FreeBSD base system on a 512 MB CF card and operate without the need for swap. A stripped down kernel would take approx. 2.5 MB diskspace, but you can tune it down to nearly 800k if you really must. BTW, you can put a small Linux system on that box just the same. It just happens hat I used 5.2.1 because it supports PXE booting and network install out of the box.
cpghost at Cordula's Web.
I was a big RedHat/Linux user until about 5 or so years ago. I got sick of:
* The constantly changing startup environment and filesystem layout. I started typing "evolving", but that implies it was small changes for the better, not wholesale changes which weren't always for the worse.
* Kernel upgrades became a big nuisance, requiring me to track down a whole bunch of userland applications that needed updating for the kernel. to be usable (psutils, for one). Why the kernel and key kernel applications aren't packaged together is beyond me.
* The installer became more and more piggish, adding X11 elements even when I specifically told it not to. The portions were hard to remove, since they almost always were snared in RPM dependencies.
* RPM itself wasn't bad, but what DID drive me nuts about binary packages was the total absence of build documentation. So many UNIX applications have significant build-time options which are never documented in RPM. SRPM helped, but it was still an annoyance.
FreeBSD just seems how it *should* be. The filesystem and startup environment isn't static, but doesn't make wholesale changes. The entire system is rebuildable from source, applications are transparently and easily buildable from source thanks to ports.
FreeBSD's installer could be improved, though. sysinstall needs to be reinvented and perhaps have picobsd merged into it. I'd love to be able to install a variable-sized FreeBSD for firewall or appliance-type installs.
The article ignores the biggest obstacle that *BSD faced in its early days, which gave Linux a big head start: the AT&T lawsuit.
The FUD was flying and unlike today's situation with the SCO attacks, the open source model was not well known, and the idea of a free *BSD was not as established as Linux is today. The suit was eventually taken care of (AT&T had violated UCB's license terms, heh, heh) but the damage to *BSD's momentum was done, and Linux had taken a mindshare lead.
``After all, the *NIX (or *BSD) motto is: do one thing, do it well.''
I think the arguing goes really well.
Please correct me if I got my facts wrong.
Those are the current *binary packages*. In other words, this is what IS directly supported by Sun, allowing for an easy binary install. Whereas, if you want 1.4.2, you can get that, but you have to follow a few more steps, as mentioned by "APurplePolarBear" above. (and you have to wait through an interminable compile time -- fortunately, FreeBSD compiles like a champ, still handling its other processes, even for the most demanding portions of a compile)
I think you could say the same of any non-Windows/Mac OS. Unless, that is, this really is the year of Linux On The Desktop. ;-)
Fewer drivers are available (especially those available as binary modules for Linux).
This is somewhat true, but the counterargument is that most FreeBSD drivers support every bit of functionality that a piece of hardware can offer. For example, if your NIC has a built-in PRNG, then FreeBSD will probably use it as a hardware accelerator for rand(). Linux is pretty good about this, too, but generally speaking when FreeBSD says that they support something, they mean all of it.
Many applications developed for the GNU system won't work on a vanilla FreeBSD system. While this is the applications' fault, it still is a disadvantage for FreeBSD.
If by "many applications" you mean "some commercial programs", then I'd have to agree. If you meant that as a general statement, then I'd have to vehemently disagree. I ran FreeBSD with a KDE desktop as my personal workstation for a long time, and don't remember any specific apps that I could use under Linux that weren't available in FreeBSD.
It also has fewer binary packages available than Debian GNU/Linux.
According to apt-cache, my Debian/unstable system has 16725 installable packages. There are 11236 Makefiles in my /usr/ports on the FreeBSD server next to me. Debian wins, but I wouldn't call it a landslide. :)
The ports system really is the killer app for me. I love (and depend on) the ability to compile the options I need into an application. I like Debian a lot, but it's a pain in the neck to maintain your own version of a package with non-Debian-standard build options.
Dewey, what part of this looks like authorities should be involved?
Benchmarks, smenchmarks. They reveal only so much as realworld tests is the only way to go. If you are serious, set up both systems, optimize them and beat the hell out of both with the server-daemon you intend to run (for db's, use Postgresql (optimized of course) instead of MySQL, if you intend to use a db under heavy load. Low-med loads anything will do). If you don't know how? Don't bother with benchmarks either. Instead, go for a Linux-system that requires little skill to set up, use and patch. For serious servers you test all options under proper conditions. Would you buy a car based upon other peoples tests without even driving it a bit yourself? After your tests you know which system is better for your setup. THAT is what counts, not benchmarks. ____________________________
Life is what happened when Good Intentions met Harsh Reality (the brother of the more infamous Chaos).
A lot of "Daemon worshipper since ever" and "Tried Linux, didn't like it" in here. Some "Like both". A few trolls have been modded down.
But when looking at it, *BSD users are throwing praise at each others in here. It's not like anyone is arguing in here, because mostly people with the same opinion responded to the article.
But no one is really talking about why Linux has more market/mind share. Or why the kernel developers for Linux have created a technologically similar kernel without having a head start (i.e. a full UNIX kernel). Or why - if any *nix - is taught, nearly always Linux is taught at universities. What made Linux the platform of choice for so many people in so "little" time?
These are not flames. These are questions I'd really like answers for. And maybe the *BSD communities should have them, to take advantage of that knowledge!
Nothing gained from 20 somewhat posts of the style "I like the ports tree", "Me, too!".
Start asking: "Why isn't *BSD dominating the *nix world now?" Don't answer: "It doesn't want to." Because that's not true. Hear yourselves talk. You want to! But you don't.
So why? Don't give me the USL/Novell case. In the time from 1991-1993 Linux had not become a comparable kernel, it became after.
Is it the license? The more chaotic collaboration? Linus' personality? The anti-Windows stance? The urge for people to develop something new (that lured more developers)? Why is (almost virtually etc.) nobody talking of a FreeBSD desktop?
As long as a lot of people talk about history, or past successes, or think along "I always have done it that way / have used it" nothing is won for *BSD in terms of "innovation" (it hurts to write it). *BSD needs some new answers to the Linux question, not some self-content same ol', same ol'.
If *BSD asked these questions, found the answers for them, and used them, it actually again become the most-used *nix system.
This is true: "I got an email suggesting that I re-check NetBSD. The results are nothing short of astonishing. In two weeks time the NetBSD team made dramatic improvements." This is impressive and we should congratulate the NetBSD team for optimizing so quickly. However, let's not forget they did so in *reaction* to specific benchmarks, rather than having generally fast code which was proven by a few specific benchmarks, as FreeBSD 5.1 and Linux 2.6 did. Unless proven otherwise, I'd be forced to assume that generally, the code scalability in NetBSD is less than in FreeBSD 5.1/Linux 2.6, with these specific benchmarks being exceptions. Undoubtably, all of the OSes/distros could have been tweaked to improve these benchmarks, but NetBSD is the only one that was, or we were made aware of. Again, congratulations to them for showing they could fix the problems these benchmarks exposed, but it's not nearly as impressive as having good code the first time around. We know they can code to fix a flaw, but can they write code that scales well on arbitary code? -Dan
Ever see those movies Airplane and Airplane 2? You know how there's those scenes where everyone forms a line to bitch-slap a hysterical passenger? Well that's what's going on here with all the "No" replies I'm getting. I already got a satisfactory boolean answer with the first posted reply- enough already! I was just wondering if OS X Server was getting market share but appeared as FreeBSD online, the way Safari identifies itself as Mozilla to web servers. I was just curious. I got responses from people who know their stuff. The matter is closed. Move along.
I love the BSDs, first played with them when Linux was a toy. When we were evaluating OSes for our Web Servers, we installed an OpenBSD machine and a Redhat machine and went to lunch. When I got back from lunch, before we could go to work, I was fielding calls that my new Redhat machines was launching attacks in Germany. We decided not to use Redhat at that point.
We recently started playing with FreeBSD 5 and RHEL 3 for comparisons... Quite frankly, I MUCH prefer the BSD ports to up2date, they are terrific. Both OSes are pretty good in the performance departments (OpenBSD while a rock, just couldn't perform).
Why did I switch to Redhat?
Redhat is simply moving in a direction that I like. Getting the machines to talk to our LDAP Server and Kerberos KDC (an OS X Server that does our central directory system) is a joke, as was straight LDAP before we started playing with Kerberos.
Adding software is a bit easier in BSD-land, because if I need to switch compile-time options, the ports are MUCH easier to work with than SRPMS. Granted that compiling source on Linux is easier, because most developers target Linux first, however, source tarballs are great for testing, not so great to roll out and keep track of across my networks.
Redhat support, while pretty mediocre at the low-end (RHEL 3.0 ES, $350/machine or so), I can put support requests in and get a response over time and get things escalated to engineering. With Apple Support, it's even worse, I can fill something out on Apple's bug report/feature request site, but I can't find out if they are doing anything on it.
It's a dilemma for a small company, you don't have the money to get the GOOD support from a top company, but dealing with a small company may get you personal service, but not the capabilities of the big boys.
FreeBSD is a GREAT system, and the ports/packages are a DREAM to work with.
The greatest thing about a BSD is how streamlined/stripped down the core is, then it is off to ports to configure.
The worst thing about a BSD is how streamlined/stripped down the core is, as making network configuration changes is just harder/more time-consuming, with multiple files to change.
FreeBSD, great OS, just not offering the easy-to-use Enterprise features that Redhat provides. Without the easy integration, it just isn't as easy for my little business to take advantage of everything that I can with Redhat.
Breakfast served all day!
Also if you notice the The socket benchmark, FreeBSD was optimized for when a process allocates in excess of 3500 sockets. Also in Measuring HTTP request latency you can see that there is optimization for when there have been in excess of 4000 requests. These types of clever optimizations are what sets FreeBSD apart.
Also keep in mind that absolute magnitude is not what is really important in these test results. The idea is that if your software scales well, you just get enough hardware to handle what you expect as worst case. The nice thing is that FreeBSD has some optimizations that are directed for scaling even better under some particular high load cases.
I would not say from these tests that FreeBSD performed much worse than Linux. In fact mmap syscalls are not actually used much except for mapping in dynamic libraries on many server type loads.
The names match. The code never did. Alan Cox once
asked Berkeley to use the BSD code under the GPL
and was turned down. Thus, the BSD code could not
be used.
It's obvious if you look at the old code. BSD has
a VAX heratage, where pages were 512 bytes and
memory was costly. Thus BSD used the mbuf, with a
linked list of little memory blocks. Linux used the
skbuf, which involved a nice linear chunk of memory
for better performance on a PC.
Boy, and I thought the Mac crowd was rabid!
Agile Artisans
Consider this: computers are getting more and more popular; they are being integrated into more aspects of our lives than they ever were before, and now it's standard for people to own them. Another interesting combination is that personal computers have gotten cheaper and more powerful at the same time.
Of course, none of this is a new development; people could have and were saying these sorts of things over a decade ago, but the good thing is that it's still true.
What's newer is the fact that open source seems to have escalated since then; every day it keeps becoming a bigger and bigger deal. More large companies are working with it than ever before, development has increased, and code maturity levels are always rising. A linux system installed today is something really different than what I started out using only three years ago.
Okay, so what does this all mean, and what does it have to do with BSD? Well, nobody will deny that linux is the big thing, and, while linux gets most of the press, BSD has always been around, and BSD is always being further developed and improved upon at a rate not at all unlike linux. What's good for one open source software product is good for another, and it seems that BSD is chugging right along with the rest of them.
I don't have data like Netcraft does, and it's a mistake to make hard conclusions based on pseronal experience, but I've spent a bit of time on the #freebsd channel on freenode, and from that alone I see FreeBSD adoption/development taking place. Any time I go in there (the channel is a little crowded), there is always somebody there who has questions about FreeBSD; some of them are curious about it, some are trying to install it for the first time, some are new to their systems and need help getting started with a particular task, and some are a little bit more experienced but are still pressing forward with something new. These people are always there. Talking to some of them, you'd find that most were people who had been using linux and started using FreeBSD after hearing good things about it or simply developing an interest in something new.
When people aren't talking about learning FreeBSD, they are talking about projected development, new features, etc. And this is all very apt because new developments in this modern operating system have proliferated (just look at all the changes in the FreeBSD new technology release).
I can imagine how people might consider BSD to be something traditionally "old-fashioned", but to me it's about as shiny and new as linux, and I regard both systems with equal fervor.