Overview of the BSDs
zeekiorage writes "A good informative article about the various BSD OSs, their legacy, philosophy and importance on the ExtremeTech web site. Excerpt from the article: 'Nowadays, the term 'The BSDs' refers to the family of operating systems which were derived, to a greater or lesser extent, from BSD. The five best known BSDs are FreeBSD, NetBSD, OpenBSD, BSD/OS, and Darwin (which serves as the foundation for Apple's MacOS X). But virtually all modern operating systems -- from Windows to BeOS to Linux -- rely on crucial BSD code to run.'"
While i use OpenBSD 3.1 on my server at home, and love their security standpoint, i couldn't help but correct the article. It mentions that there's been one hole in 6 years, what it doesn't say, is that it is only the default install that has that track record, not the ports database or any of the apps people compile themselves. It's an important distinction to make.
I think (the 1 paragraph answer), Linux is popular because of the "Tech Boom Era", where companies could get millions in funding for having a business plan written on a napkin. Linux embodied the "One Smart Guy Takes On The World", and "Everything Is Changing" ideals that drove the economy a few years back. To think that Linus, a single guy, with a rag-tag group of developers, with their sandals and freakishly stylish hair, could make an OS that would compete with the biggest and best offerings from Sun and IBM. Its a cultural thing. Linux had timing. BSD has been around much longer, and its much more mature than Linux. Linux has GREAT marketing, BSD has (basically) none.
Its not about the technology, but about the marketing, the timing, and the media's embrace.
One word: optics.
.. when a dog bites a man, thats relevant and important news (because you dont want to be bitten, right?) The problem is, its not news that sells. And so you end up with media that would rather print the "man bites dog" story intead of the "dog bites man" story, even tho "man bites dog" stories have little or no relation to your continued existance and are unlikely ever to affect your life.
.. and get ported to the BSDs after. From that perspective, you could argue that Linux is the more important OS for the end user since thats where all the desktop wars are being fought in the *nix world.
News works like this
So BSD has always been doing well in the server/ISP/*nix market, so its not news. Linux's surge in popularity, and thus all the wonderful brand value you can leech off of its popularist image, is responsible for all the bru-haha.
The only other thing worth mentionning is that most of the GUI stuff going on, which matters most to end users, was written by people on Linux
"Old man yells at systemd"
The Linux community is larger. I'm guessing that this is because Linux was written for x86 origionally, and was therefore available for the platform just about everybody has before BSD was. Obviously this is not true now, but momentum is a hard thing to overcome. I'm not confident on my timeline here, so if someone could prove that BSD was available for x86 prior to 1991, I'd happily concede the point.
The Linux community is less mature. Obviously there are some negative aspects to this, and I'm sure you could find a few BSD folks who would be happy to list them for you. However, there are positive aspects as well. The most important, I think, is that it leads to more focus on things "normal" people (meaning people who aren't sysops) care about, like games. This lures more "normal" people into the community, who lure their frinds into the community, making it larger.
The Linux community is more vocal. I think this is largely connected to the "immaturity" of the Linux community, and serves as both blessing and curse. Regardless, the world listens to those who speak out, and the fact that our culture glorifies youth almost to the point of worship goes a long way towards mitigating the negative aspects of the lack of maturity in the public eye.
Anyway, that's my take on it. For the record, I'm a Linux guy. To my knowledge I have never used a BSD.
Under capitalism man exploits man. Under communism it's the other way around.
I'm not joking. Lack of drivers? I've never had that problem. I have plenty of different boxes, all hardware usable under OpenBSD. Crude system limits? Without going into perticulars, you do know about configuring limits correct? IPv6 implementation is Kame, how is that non-standard? I'm not even going to address the crashing problem, if it crashes -- report it and it will get fixed. The boxes I have dont mysteriously crash.
BSD may not be as fool-proof as Linux.. it requires a brain to operate. My OpenBSD firewalls can show you how mature it is, with their only downtime being 5minutes to throw on the latest release.
I think most of your arguments are based on a chicken-and-egg fallacy. You are saying that BSD's relative unpopularity are due to these things. I really think these things FOLLOWED Linux's popularity.
:).
* Linux got popular, so a lot of people wrote drivers for it.
* System limits have significant advantages, especially in the server setting where a box will server a well-defined role with things like # of processes, etc. staying relatively constant. They allow for more efficient memory layout and fewer runtime calculations. I think they are still there because they still have advantages in some cases -- and these are the cases where people will choose BSD over Linux. In the cases where this is a disadvantage, go ahead and use Linux if you want to (although so far I've never really had a problem with the limits). In fact, a couple of times, they've saved me when I made som programming errors and dropped the equivalent of a fork() bomb on my machine. The limits prevented the bad program from monopolizing all resources, and I was able to terminate my buggy program.
* Userland -- you may have a point. I haven't looked into it all that much. But again, this might be a chicken-and-egg thing. Linux's userland developed because of the community and not vice-versa.
* IPv6 problems -- I hadn't heard about that. I'm sure it will be fixed soon enough.
* Crashing -- I think everything crashes on some platforms that don't have properly written drivers. I've got a FreeBSD server that only comes down on power failures and kernel upgrades. By now, I'm pretty confident that it is bulletproof. I'm sure different distributions have different characteristics, just as different Linux versions and distros do. But you can get FreeBSD to be as stable as anyone needs. Go to NetCraft and see longest uptimes. You have to go down to #20 before you get to one that isn't BSD.
And besides -- the daemon in sneakers is cool
Time flies like an arrow. Fruit flies like a banana.
The article's point is that the a company can't use GPL'd code in their proprietary products and then charge licensing fees for the use of that software. Since most of the commercial software industry makes its moeny on licensing fees, the article argues that this essentially taking their incentive away from improving the code.
And with that point I disagree. Very little of the software used today is licensed on a large scale, but those that are (Solaris, Windows, MS Office) are commonly known. The author here is seeing a few trees here and callign them the forrest.
Instead most software is developed inhouse for inhouse applications (web apps, LOB apps, etc.) and these pieces are not sold on the open market. So in many areas, I believe that there is a financial incentive to take GPL code and improve it, and like with the BSD license, return that improved code to the community (if it is community owned, then the community can support it). The incentive here is not the gain in revenue from licensing fees but rather the cost savings by large-scale group-development, where no one entity is paying for every developer hour.
LedgerSMB: Open source Accounting/ERP
But what can we expect when we do plenty of BSD-bashing and run plenty of ridiculous "BSD is dying" articles?
This intense rivalry between the BSD and Linux communities is something that baffles me, since both basically want the same goals -- freedom for users, excellent software -- but go about doing it in different ways.
From my reasoning, people who GPL their programs are extremely worried about the possibility of the "public" project dying off, and a corporate project which doesn't care about freedom taking over; they also want to draw programs out into the open, hence the requirement that any modifications or programs based on a GPL'ed program be GPL'ed. People who use the BSD license just want to let others use their code for whatever purpose, so long as the original code is revealed; they obviously prefer the BSD license, and hope that others will be convinced to license their BSD-license-based software under teh BSD license, but do not force the issue, as does the GPL. The GPL is a slightly more aggressive approach.
Both camps are also concerned with the excellence of their products, though that concern manifests itself in different ways. While OpenBSD and NetBSD tend to focus on security and portability, respectively (and both of them on stablity), Linux' tend to focus more on performance, features, and ease of use. Of course, you can't speak for all of the Linux' as one. Debian and Slackware have a pretty rounded effort regarding security, stability, performance, and features, despite being somewhat difficult in ease of use. Alternatively, distributions like Mandrake and Corel tend to focus hardly on ease of use, while RedHat and Suse focus on ease of use and stability.
There is no absolute right or wrong. Different things are better for different users, depending on their technical needs and their politics.
Ultimately, all OSS / FS communities benefit from one another, particularly Linux and BSD, which have benefitted greatly from eachother. Linux has gained much in terms of hard technical details from BSD; conversely, BSD has benefitted from Linux being in the spotlight, as there are more applications for Linux, which means more apps that may run under BSD.
For me, the GPL and Debian are my license and OS of choice. I choose Linux over BSD because I'm a personal user and I need driver support for things like graphics cards from Nvidia and ATI; Debian because, among the Linux', it does tend to be the most stable and steadfast, with excellent quality-control.
For other people, something else is best. For those that love having absolute control, Slackware is best. For those who just want something that's overall pretty well rounded, RedHat, Caldera, Suse, etc are the way to go. For those who want something that focuses most on ease of use, Mandrake or Corel are good options. Other people will want a BSD OS. For those for whom security is a big issue, OpenBSD is the one of choice; for the person who needs something portable, NetBSD; for the all-around power-user, FreeBSD. Of course, that's just my opinion.
social sciences can never use experience to verify their statemen
a userland with less features
It's whatever floats your boat. GNU has historically extended the classic UNIX utilities to the nth degree, while BSD has been content to replicate the classic UNIX utilities (in a lot of cases, the BSD utilities ARE the classic UNIX utilities). It's the difference between "give them enough rope to hang themselves" and "K.I.S.S".
Neither way is wrong, so neither way is evidence of superiority.
A Government Is a Body of People, Usually Notably Ungoverned
A good example is tar. GNU tar has many more command line switches and options than the standard (not just BSD) tar has. It means that scripts written assuming a GNU tar won't always work on machines with a standard tar.
Another example, of which I actually have both versions is make. GNU has added a whole stack of new functionality and stuff to its version of make. There's nothing wrong with it, but it ain't standard. The reason I have two versions of make installed is that there's a heck of a lot of software that implicitly assumes GNU make is standard. A significant fraction of the ports specify GNU make as a dependency precisely because of this.
The biggest surprise a Linuxite in BSDland will encounter is that a lot of what they thought was standard UNIX was really GNU. Some of these "linuxisms" are really basic, like shell scripts with the heading #!/bin/sh that only work with bash, to the more obscure, like why ldconfig doesn't behave the way you think it should.
A Government Is a Body of People, Usually Notably Ungoverned