Topic: Linus compares Linux and BSDs

http://os.newsforge.com/article.pl?sid=05/06/09/2128249

I recently asked Linus Torvalds for his thoughts on the relative strengths and weaknesses of Linux and BSD, and about how much synergy there might be between the Linux kernel and the BSDs.

Falk AdSolution
I prefaced my query to Linus by recounting my observations from a Usenix conference in San Diego a few years ago. He was a speaker that day, and a group of BSD users came right down to the front row to hear him. In fact, they laughed and joked with him, and eventually gave Linus one of the beanies with horns on it they were wearing, a familiar symbol to BSD fans.

They may have been surprised by his reaction. I was. He took the beanie they offered, put it on, and wore it during his entire presentation. No big deal, the leader of the Linux kernel wearing BSD colors. He defused what could have been a contentious moment.

NewsForge: I want to ask you a few uninformed questions about the similarities, differences, and synergy -- if any -- between the Linux kernel and the BSDs.

Torvalds: I really don't much like the comparisons. In many ways they aren't even valid, since "better" always ends up depending on "for what?" and "according to what criteria?".

NF: BSD is still considered by some to be more "technically correct" than the Linux kernel. Do you think the BSDs are better technically than the Linux kernel?

Torvalds: Linux has a much wider audience, in many ways. That ranges from supporting much wider hardware (both in the driver sense and in the architecture sense) to actual uses. The BSDs tend to be focused in specific areas, while I have always personally felt that any particular focus on any particular use is a bad thing.

Which one is "better"? To me, Linux is much better, since to me, the important thing for an OS is how well it performs under different patterns, be they embedded, server, or desktop, or just some totally crazy person in a basement trying something new.

But some people disagree with me, and like to limit their work to specific areas, and like the fact that developers have one cohesive goal, and don't care about anything else. Some people consider the Linux development model "too permissive," in other words -- they want the project to concentrate on X, where X is some random area that they care about.

Which mindset is right? Mine, of course. People who disagree with me are by definition crazy. (Until I change my mind, when they can suddenly become upstanding citizens. I'm flexible, and not black-and-white.)

NF: If the BSDs were better technically five years ago, has the playing field leveled since then?

Torvalds: I don't think they were better five years ago (see above), and I don't think the question really makes sense.

Are there areas where you could point to "X does Y better"? Oh, sure, that's inevitable. But exactly because Linux tries to be "good enough" for everybody, you'll find a lot of areas where Linux is better (often a lot better -- as in "it works"), and then you'll find a few narrow areas where one particular BSD version will be better.

To me, it's largely a mentality issue. I said "good enough," and that's really telling. The BSD people (and keep in mind that I'm obviously generalizing) are often perfectionists. They hone something specific for a long time, and then they frown on anything that doesn't meet their standards of perfection. The OpenBSD single-minded focus on security is a good example.

In contrast, one of my favorite mantras is "perfect is the enemy of good," and the idea is that "good enough" is actually a lot more flexible than some idealized perfection. The world simply isn't black-and-white, and I recognize a lot of grayness. I often find black-and-white people a bit stupid, truth be told.

NF: Is sharing between BSD and the Linux kernel a common occurrence? And if so, does it go both ways?

Torvalds: It's quite rare on the kernel level. It happens occasionally, mainly in drivers, and sometimes on the "idea" level (don't get me wrong -- it's not an acrimonious setting, and people do talk about things). But the fact is, it's usually more effort to share things and try to synchronize and agree on them than it is to have independent projects.

On a user level, there's obviously tons of sharing, since there you don't have the communication issues, and user projects tend to be pretty independent of each other (and the kernel) anyway.

NF: Are there parts of BSD today that you would like to see adopted in the kernel?

Torvalds: I certainly don't have any specifics, but that's not saying that I'd be against it. It just means that I don't know anything about BSD technical internals, so I'm the wrong person to ask. Ask somebody who uses both.

Note: Tune in Wednesday for the views of BSD leaders as they answer the same questions posed to Linus.

For example, Linux had at least two completely independent USB stacks before Linus Torvalds rejected them both and wrote a third one from scratch, after he found both existent Linux  stacks unsatisfactory.  (When pressed for an explanation as to why he selected the API he did, Torvalds stated: "because I wanted to."

Re: Linus compares Linux and BSDs

scuzzo you do realize that posting the article verbatim is a voilation of the copyright, don't you?

smash the state in '08!

Re: Linus compares Linux and BSDs

Torvalds: Linux has a much wider audience, in many ways. That ranges from supporting much wider hardware (both in the driver sense and in the architecture sense) to actual uses.

I can't seem to find a definitive list of what architectures all the Linux distros support, but even it's slightly more than NetBSD, NetBSD supporting that many architectures and being one OS and not a bunch of distros based on the same kernel is a pretty huge feat.

okay, I just looked this up.  according to Wikipedia, "at last count", Linux supports 20 different architectures.  that's uh, less than Net.

I'm looking forward to the article on Wednesday!

edit: okay, I think I'm wrong!  the count of 20 for Linux was based on CPU types, and the same count for Net is 17!  either way, it's a hell of a lot more impressive for one OS to support that many.

Last edited by asemisldkfj (2005-06-13 22:46:43)

Re: Linus compares Linux and BSDs

asemisldkfj wrote:

edit: okay, I think I'm wrong!  the count of 20 for Linux was based on CPU types, and the same count for Net is 17!  either way, it's a hell of a lot more impressive for one OS to support that many.

Yeah I was going to say architectures and cpus are not exactly the same thing. I think netbsd and linux are both doing good in this regard.

smash the state in '08!

5

Re: Linus compares Linux and BSDs

zenlunatic wrote:

Yeah I was going to say architectures and cpus are not exactly the same thing. I think netbsd and linux are both doing good in this regard.

I believe linux has the advantage in that it supports MMU-less architectures, while NetBSD doesn't (not sure if for lack of interest or lack of manpower).

I don't like the "good enough" mentality. In general the features implemented by the BSDs tend to take more time to be finished, but are usually more stable and solid.

Re: Linus compares Linux and BSDs

andre wrote:
zenlunatic wrote:

Yeah I was going to say architectures and cpus are not exactly the same thing. I think netbsd and linux are both doing good in this regard.

I believe linux has the advantage in that it supports MMU-less architectures, while NetBSD doesn't (not sure if for lack of interest or lack of manpower).

yea they have uClinux for this, cool feature

For example, Linux had at least two completely independent USB stacks before Linus Torvalds rejected them both and wrote a third one from scratch, after he found both existent Linux  stacks unsatisfactory.  (When pressed for an explanation as to why he selected the API he did, Torvalds stated: "because I wanted to."

Re: Linus compares Linux and BSDs

zenlunatic wrote:

scuzzo you do realize that posting the article verbatim is a voilation of the copyright, don't you?

He also made the test highly unreadable

andre wrote:

I don't like the "good enough" mentality. In general the features implemented by the BSDs tend to take more time to be finished, but are usually more stable and solid.

I was sure you wouldn't smile

Guru for a day, newbie for a lifetime

Re: Linus compares Linux and BSDs

from the original text wrote:

They may have been surprised by his reaction. I was. He took the beanie they offered, put it on, and wore it during his entire presentation. No big deal, the leader of the Linux kernel wearing BSD colors.....

What's wrong with that ? Do they have to separate sth or is there some kind of war ...?

Guru for a day, newbie for a lifetime

Re: Linus compares Linux and BSDs

original article wrote:

To me, it's largely a mentality issue. I said "good enough," and that's really telling. The BSD people (and keep in mind that I'm obviously generalizing) are often perfectionists. They hone something specific for a long time, and then they frown on anything that doesn't meet their standards of perfection. The OpenBSD single-minded focus on security is a good example.

In contrast, one of my favorite mantras is "perfect is the enemy of good," and the idea is that "good enough" is actually a lot more flexible than some idealized perfection. The world simply isn't black-and-white, and I recognize a lot of grayness. I often find black-and-white people a bit stupid, truth be told.

I am so keeping this to show to our Linux fanboi security admin next time 10 or 20 RedHat boxes get rooted in one night. Sorry Linus, "good enough" is simply not "good enough"

... and then they said "I bet you can't make MINIX kernel panic!!!" And that's when I got mad

Re: Linus compares Linux and BSDs

Oh come on....  "Mr Torvalds, Linux kernel hacker, which is better BSD or Linux?"    -   he's hardly going to put down his own kernel now, is he?

"UBER" means I don't drink the coffee... I chew the beans instead
             -- Copyright BSDnexus

Re: Linus compares Linux and BSDs

spyretto wrote:
zenlunatic wrote:

scuzzo you do realize that posting the article verbatim is a voilation of the copyright, don't you?

He also made the test highly unreadable

Hence the link I put at the top you wombat ...

Last edited by scuzzo (2005-06-14 16:07:09)

For example, Linux had at least two completely independent USB stacks before Linus Torvalds rejected them both and wrote a third one from scratch, after he found both existent Linux  stacks unsatisfactory.  (When pressed for an explanation as to why he selected the API he did, Torvalds stated: "because I wanted to."

Re: Linus compares Linux and BSDs

andre wrote:

I don't like the "good enough" mentality. In general the features implemented by the BSDs tend to take more time to be finished, but are usually more stable and solid.

I can't stand the "good-enough, ship it" mentality either.  I put up with it all the time at work, though, and it drives me nuts.  There's not enough planning ahead of time, and everything is just "make it work, and make it work now".  There are no standards for anything, the code is sloppy, and we spend more time down the road fixing things.

We've actually had to completely re-write several of the databases / applications that the school district relies on because the initial "design" was so horrible.  And now we have to do it again.

But I don't have a degree, and only 5 years on-the-job experience, so my opinion doesn't count for anything.  sad  Nevermind that everything I bring up as needing a better design or planning eventually collapses under its own weight.

Re: Linus compares Linux and BSDs

phoenix wrote:

I can't stand the "good-enough, ship it" mentality either.  I put up with it all the time at work, though, and it drives me nuts.  There's not enough planning ahead of time, and everything is just "make it work, and make it work now".  There are no standards for anything, the code is sloppy, and we spend more time down the road fixing things.

Are we working in the same company ???!! smile

<wintellect> NetBSD users are smart enough to accept that there's no 3D support tongue

14

Re: Linus compares Linux and BSDs

We all probably work at the same place tongue

Re: Linus compares Linux and BSDs

That's why Dilbert is so popular, because, as Andre so aptly wrote, we all work at the same place--regardless of whether we're in Brazil, NYC or Canada.

<@andre> i would be so much more efficient if i wasn't so stupid

Re: Linus compares Linux and BSDs

You americans don't even know Europe exists !

Brazil, NYC, Canada ... France, Switzerland, Russia !!! big_smile

<wintellect> NetBSD users are smart enough to accept that there's no 3D support tongue

Re: Linus compares Linux and BSDs

scottro wrote:

That's why Dilbert is so popular, because, as Andre so aptly wrote, we all work at the same place--regardless of whether we're in Brazil, NYC or Canada.

whats with the cheetah

For example, Linux had at least two completely independent USB stacks before Linus Torvalds rejected them both and wrote a third one from scratch, after he found both existent Linux  stacks unsatisfactory.  (When pressed for an explanation as to why he selected the API he did, Torvalds stated: "because I wanted to."

Re: Linus compares Linux and BSDs

dynek wrote:

You americans don't even know Europe exists !

Brazil, NYC, Canada ... France, Switzerland, Russia !!! big_smile

Ehm..add...Greece

Guru for a day, newbie for a lifetime

Re: Linus compares Linux and BSDs

Sheesh. I was speaking in general--yes, all of the countries in all of the world, including Japan (I don't think we have any Japanese members here.)

BTW, the author of Dilbert thinks Switzerland is the most wonderful country in the world.

<@andre> i would be so much more efficient if i wasn't so stupid

20

Re: Linus compares Linux and BSDs

scottro wrote:

Sheesh. I was speaking in general--yes, all of the countries in all of the world, including Japan

... and Elbonia smile

Re: Linus compares Linux and BSDs

good one andre big_smile.

Re: Linus compares Linux and BSDs

Don't forget Australia and Uzbekistan, you don't want to piss THEM off.

This is post 2!

Last edited by Nirbo (2005-06-16 22:18:39)

Re: Linus compares Linux and BSDs

Oh come on, BSDNexus forum members, which is better BSD or Linux? you're hardly going to put down BSD, are you?

Talk about objectiveness... i think everybody tends to be biased so I never listen to these types of debates in order to form my opinion.

Re: Linus compares Linux and BSDs

cthulhu wrote:

Oh come on, BSDNexus forum members, which is better BSD or Linux? you're hardly going to put down BSD, are you?

Talk about objectiveness... i think everybody tends to be biased so I never listen to these types of debates in order to form my opinion.

As I've posted before, half of the posts here are "linux sucks, it is just a kernel"...

Guru for a day, newbie for a lifetime

25

Re: Linus compares Linux and BSDs

spyretto wrote:

As I've posted before, half of the posts here are "linux sucks, it is just a kernel"...

And the other half is you whining about something and not contributing a single bit to whatever the topic of the thread is.

But I'm not suprized. Most linux users I've met can't stand criticism about their beloved OS, or their favourite distribution of the month.