LWN.net Logo

BSD cognoscenti on Linux (NewsForge)

NewsForge talks with a couple of BSD developers (Theo de Raadt and Christos Zoulas) to get their impressions of Linux. "Linux's code is much newer and it keeps constantly being re-factored. This has the nice side effect of keeping the code simple and readable (at the base system layers such as VM and FS), but stability is suffering. While 2.4.x was a monotonic climb to stability, the road of 2.6.x has been very bumpy."
(Log in to post comments)

BSD cognoscenti on Linux (NewsForge)

Posted Jun 15, 2005 17:31 UTC (Wed) by cantsin (subscriber, #4420) [Link]

Kudos to the NetBSD developer. This is the first fair, ideology-free and technically informed comparison between a BSD and Linux I have ever read. It also backs up my own experiences with (Debian GNU/)Linux and NetBSD respectively.

BSD cognoscenti on Linux (NewsForge)

Posted Jun 15, 2005 18:20 UTC (Wed) by ajross (subscriber, #4563) [Link]

Well, it's technically informed certainly. Christos in particicular shows a lot more knowlege about the Linux kernel than either Linus or Theo exhibit about their respective "competitors."

Theo in particular was his normal, abrasive self. He takes factually correct but minor points ("Linux us just a kernel, we're a whole OS") and uses them to justify rather questionable conclusions ("We don't need hacks in the wrong place to fix a problem.") This kind of argument is sometimes true, sometimes not, and almost never very helpful except as talking points for a flame war. Name something specific or stop flaming.

To be fair, Christos takes his share of unjustified potshots too: "The Linux kernel tries to mimic the native operating system on each platform, so system calls are different. [...] programs that compile and work on Linux/i386 might [not] compile or work on Linux/SPARC64.", here bending a verifiable but minor fact (per-architecture syscalls) into a ridiculous conclusion. Pretty much the entire userspace experience on a modern Unix-like OS compiles cleanly on either NetBSD or Linux on any architecture, but somehow linux can't even handle porting across architectures? Please.

The bottom line is that Theo was technically mute and very biased, and Christos was technically interesting and mildly biased. My suggestion would be to read Christos' answers and ignore Theo's. OpenBSD didn't really show itself too well in this article. And all I learned about NetBSD that I didn't already know is that it still has a monolithic kernel lock and can't schedule multiple threads across CPUs.

All told, I think I prefer Linus's ignore-the-competition-and-talk-about-linux tactic, honestly.

BSD cognoscenti on Linux (NewsForge)

Posted Jun 16, 2005 9:32 UTC (Thu) by xoddam (subscriber, #2322) [Link]

Theo in particular was his normal, abrasive self ... technically mute and very biased

To be fair, he has been asked exactly the same questions over and over lately.

I prefer Linus's ignore-the-competition-and-talk-about-linux tactic, honestly.

That's essentially what Theo did last time.

Voting with my feet

Posted Jun 21, 2005 13:46 UTC (Tue) by hackerb9 (guest, #21928) [Link]

Pretty much the entire userspace experience on a modern Unix-like OS compiles cleanly on either NetBSD or Linux on any architecture, but somehow linux can't even handle porting across architectures? Please.

I think you may have misread Christos. He wasn't pointing out a practical problem for Linux, but rather giving a concrete example of the different mindset of the NetBSD kernel developers.

Although Christos was more concerned with the portability of kernel drivers (note his two other mentions of it), he was making a point that there can even exist userspace applications which don't port cleanly, simply due to the design of Linux. It's a small example of cruftiness which NetBSD doesn't have.

--Ben

P.S. I'm currently using my Linux box to type this post and my NetBSD box to rest my feet. Why? Because Linux has drivers to use my cellphone as a modem and NetBSD doesn't.

monotonic climb?

Posted Jun 15, 2005 18:07 UTC (Wed) by ncm (subscriber, #165) [Link]

Strange perspective... In my experience the various 2.4 releases were all over the map, and it didn't really start to stabilize until... 2.4.18? 2.4.22? 2.6.1 was better than any 2.4 kernel, and it's been all improvement since, albeit with occasional breakage of obscure stuff I don't use.

Yes, the OOM killer still sucks, and so does page/buffer memory management. ("Swappiness"? Feh.) It would better remember which pages of running programs it pushed out to make room for file cache images, and decay the latter out on a schedule. How long do you really need to keep a copy of a file you wrote or looked at, just once, in cache? Decay it out and read back in an active page known to be useful because it's been used, repeatedly, before. Don't wait until I move the mouse and make me sit staring stupidly at a blank window for 30 seconds while you rush around doing what you should have got done over the last half hour when you weren't doing anything else.

Resource accounting still interacts awfully with the OOM killer. Turn it on, and the OOM killer goes on a killing spree while swap is still hardly used.

There's still enormous room for improvement. Here's a hint, Mr. Kernel Guy: time spent building your kernel is easy to minimize, but screen re-paint latency makes a much bigger difference to the other 99.x% of us users -- and even most of us who do build kernels.

monotonic climb?

Posted Jun 15, 2005 21:12 UTC (Wed) by oak (guest, #2786) [Link]

Programs using mmap() can tell it which way they want to treat the files;
pre-fetch them, discard immediately after user etc. I think that would
help several applications (e.g. ones that never backtrack files).

Robert Love mentioned this in his GUADEC talk...

Haven't we already learned

Posted Jun 16, 2005 0:32 UTC (Thu) by lenster (guest, #13833) [Link]

You get no where when you ask Theo to compare OpenBSD to any other system. It's completely uninformative from a technical standpoint.

Haven't we already learned

Posted Jun 16, 2005 1:02 UTC (Thu) by flewellyn (subscriber, #5047) [Link]

I think we've learned that you get nowhere when you ask Theo to, well, talk much. As opposed to code. He does that very well.

Just let the guy code away, and everybody's happy. (Especially users of OpenBSD firewall boxen, like me.)

Copyright © 2005, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds