Unhappy campers Linux Inside
[Prev][Next][Index][Thread]

Unhappy campers



I've been getting a bit of mail lately from unhappy campers.  (Actually 10 
messages from the 43,000 readers may seem like a lot, but it is not really.)
There seem to be three sticking points:

   1. Monolithic kernels are just as good as microkernels
   2. Portability isn't so important
   3. Software ought to be free

If people want to have a serious discussion of microkernels vs. monolithic
kernels, fine.  We can do that in comp.os.research.  But please don't sound off
if you have no idea of what you are talking about.  I have helped design
and implement 3 operating systems, one monolithic and two micro, and have 
studied many others in detail.  Many of the arguments offered are nonstarters
(e.g., microkernels are no good because you can't do paging in user space--
except that Mach DOES do paging in user space).  

If you don't know much about microkernels vs. monolithic kernels, there is
some useful information in a paper I coauthored with Fred Douglis, Frans
Kaashoek and John Ousterhout in the Dec. 1991 issue of COMPUTING SYSTEMS, the 
USENIX journal).  If you don't have that journal, you can FTP the paper from 
ftp.cs.vu.nl (192.31.231.42) in directory amoeba/papers as comp_sys.tex.Z 
(compressed TeX source) or comp_sys.ps.Z (compressed PostScript). The paper
gives actual performance measurements and supports Rick Rashid's conclusion that 
microkernel based systems are just as efficient as monolithic kernels.

As to portability, there is hardly any serious discussion possible any more.
UNIX has been ported to everything from PCs to Crays.  Writing a portable
OS is not much harder than a nonportable one, and all systems should be
written with portability in mind these days.  Surely Linus' OS professor
pointed this out.  Making OS code portable is not something I invented in 1987.

While most people can talk rationally about kernel design and portability,
the issue of free-ness is 100% emotional.  You wouldn't believe how much
[expletive deleted] I have gotten lately about MINIX not being free.  MINIX
costs $169, but the license allows making two backup copies, so the effective 
price can be under $60.  Furthermore, professors may make UNLIMITED copies 
for their students. Coherent is $99. FSF charges >$100 for the tape its "free" 
software comes on if you don't have Internet access, and I have never heard 
anyone complain.  4.4 BSD is $800.  I don't really believe money is the issue.
Besides, probably most of the people reading this group already have it.

A point which I don't think everyone appreciates is that making something
available by FTP is not necessarily the way to provide the widest distribution.
The Internet is still a highly elite group.  Most computer users are NOT on it.
It is my understanding from PH that the country where MINIX is most widely used
is Germany, not the U.S., mostly because one of the (commercial) German 
computer magazines has been actively pushing it.  MINIX is also widely  used in
Eastern Europe, Japan, Israel, South America, etc.  Most of these people would
never have gotten it if there hadn't been a company selling it.

Getting back to what "free" means, what about free source code?  Coherent
is binary only, but MINIX has source code, just as LINUX does.  You can change
it any way you want, and post the changes here.  People have been doing that 
for 5 years without problems. I have been giving free updates for years, too. 

I think the real issue is something else. I've been repeatedly offered virtual
memory, paging, symbolic links, window systems, and all manner of features. I 
have usually declined because I am still trying to keep the system simple 
enough for students to understand.  You can put all this stuff in your version,
but I won't put it in mine. I think it is this point which irks the people who
say "MINIX is not free," not the $60.

An interesting question is whether Linus is willing to let LINUX become "free"
of his control.  May people modify it (ruin it?) and sell it?  Remember the
hundreds of messages with subject "Re: Your software sold for money" when it 
was discovered the MINIX Centre in England was selling diskettes with news 
postings, more or less at cost?

Suppose Fred van Kempen returns from the dead and wants to take over, creating
Fred's LINUX and Linus' LINUX, both useful but different. Is that ok?  The 
test comes when a sizable group of people want to evolve LINUX in a way Linus 
does not want.  Until that actually happens the point is moot, however.

If you like Linus' philosophy rather than mine, by all means, follow him, but 
please don't claim that you're doing this because LINUX is "free."  Just
say that you want a system with lots of bells and whistles.  Fine. Your choice.
I have no argument with that.  Just tell the truth.

As an aside, for those folks who don't read news headers, Linus is in Finland
and I am in The Netherlands.  Are we reaching a situation where another
critical industry, free software, that had been totally dominated by the U.S.
is being taken over by the foreign competition?  Will we soon see
President Bush coming to Europe with Richard Stallman and Rick Rashid
in tow, demanding that Europe import more American free software?

Andy Tanenbaum (ast@cs.vu.nl)