Andy Tanenbaum on 'Who Wrote Linux' 668
Andy Tanenbaum writes "Ken Brown has just released a book on open source code. In it, he claims (1) to have interviewed me, and (2) that Linus Torvalds didn't write Linux. I think Brown is batting .500, which is not bad for an amateur (for people other than Americans, Japanese, and Cubans, this is an obscure reference to baseball). Since I am one of the principals in this matter, I thought it might be useful for me to put my 2 eurocents' worth into the hopper. If you were weren't hacking much code in the 1980s, you might learn something." Tanenbaum's description of the interview process with Brown is classic. See also Slashdot's original story and Linus' reply.
I like the last bit (Score:4, Interesting)
Bitter much?
Re:I like the last bit (Score:5, Interesting)
Re:I like the last bit (Score:5, Informative)
Don't fall for the hype.
On the other hand, QNX is actually pretty true to the concept.
Re:I like the last bit (Score:5, Insightful)
The tone I got was of an affectionate tip o' the hat to what is surely one of the all-time classic flame wars.
Besides, when you >make menuconfig, and you go through there and choose whether you want various bits compiled into the kernel or loaded as modules,
isn't that an admission that the 'truth' on the modular/monolithic argument falls somewhere in the mote in the eye of the Tannenbaum/Torvalds Tempest?
Re:I like the last bit (Score:5, Insightful)
Treating the micro v. monolithic debate as a solved problem ("microkernels win!") is as idiotic as suggesting that object orientation is the ideal solution to all programming problems.
Re:I like the last bit (Score:5, Insightful)
I think he made such a big stink about it during the infamous flame war that, even if it was somehow proven that a macro-kernel is a better design, Tanenbaum could never back down from his premise without losing face.
Re:I like the last bit (Score:4, Insightful)
Re:I like the last bit (Score:5, Interesting)
Apparently, the really trendy kids have decided that microkernels themselves are obsolete, and moved on to something called exokernels [c2.com]. I can't pretend to understand the distinctions involved.
Re:I like the last bit (Score:5, Informative)
To summarize, let me call the part that securely multiplexes hardware the "kernel".
IBM's VM was never that popular in its raw "Exokernel" mode with drivers in application space. However, it is still hugely popular as a way to run multiple Operating Systems as the "applications". Your mainframe can securely run multiple instances of S/390 Linux and traditional mainframe systems together.
Re:I like the last bit (Score:5, Funny)
We have the picokernel already... (Score:5, Funny)
It's what makes pine work.
Re:I like the last bit (Score:4, Interesting)
Tell that to Tanenbaum:
From: ast@cs.vu.nl (Andy Tanenbaum)
Newsgroups: comp.os.minix
Subject: LINUX is obsolete
Date: 29 Jan 92 12:12:50 GMT
". . . While I could go into a long story here about the relative merits of the two designs, suffice it to say that among the people who actually design operating systems, the debate is essentially over. Microkernels have won . .
Cited from here [oreilly.com]
Re:I like the last bit (Score:5, Interesting)
I'll agree with that. However, I can say that for the stuff I do, microkernels win. I've written a microkernel RTOS for an embedded system, and it had the following advantages for me:
1) It was easy to write. (Very modular)
2) It is easy to maintain. (Very modular, and because all interaction is done with messaging, you dont worry about the code you are doing now interacting in some unknown way with something else. ie. You can ignore the rest of the system except for the messages you send to it)
3) It is easy to give it strong deterministic real-time response. This is a big thing for me in the applications I use it for. Data ends up flowing from one task to another, and I just have to make sure my scheduler doesn't mess that up.
4) The overhead introduced by message passing was negligible (The RTOS was implemented to replace an existing system, and did so comfortably)
5) Its really easy to make stable and reliable systems, because everything is chopped up into small well understood sections with well defined interaction between sections.
Microkernels might have slightly lower throughput than monolithic macrokernels, but I am not running a batch transaction processor.
For desktop use, I want controlled latency and reliability. I don't feel that Linux gives me all that it should in those departments, though I use it because it is better than most (with some patching). Kernel modules feel like the worst of both worlds to me.
So, given the priorities I stated above, I think I would prefer a microkernel OS, all other things being equal. I'd jump ship from Linux to one, if most other things are equal.
Other people will have other priorities and I encourage them to use whatever works for them.
Re:I like the last bit (Score:5, Informative)
cheers.
QNX (Score:5, Interesting)
As for Darwin; it was certainly slow on my x86 laptop, but it's not lacking any speed on my iBook. I guess that says something about the quality of the x86 port (hint: there is no such thing).
Poor Andy seems a bit too stuck in his I am right and everyone who disagrees is wrong. I have a book here (Distributed Systems: Principles and Paradigms) in which he claims that a 20% performance loss is not so bad, in exchange for all the benefits a microkernel brings. I most sincerely think that is a ridiculous statement, but fortunately, it doesn't have to be that way. I believe microkernels need not incurr any significant performance penalty at all.
Re:QNX (Score:4, Insightful)
Of course, I don't think microkernels are a superior archeticture to begin with, and I think that a bland "20%" isn't a reasonable estimate of the real-world application or database's performance loss, so I still disagree with Andy.
I'm of the view that the differences between micro and monolithic kernels are really a question of where you place things in a semantic sense. Just as one can write OO code in C, one can write well-isolated modular code in a monolithic kernel. I'd rather have the burden of that modularization taken care of on the developer's end than at runtime.
Re:QNX (Score:5, Insightful)
Good theory. Practice seems to work out differently.
Speed comparisons between products. Seems like 5% difference is enough to declare a clear winner. Unless you look behind the curtain.
Speed increases in hardware? At work I have two computers. I am typing this on NT4 on a 400MHz Gateway. My "other" computer is XP on a 2.4GHz Dell. Other than some legacy dBase for DOS applications the "faster" computer isn't any faster. It does boot faster which means that the XP machine is booted a lot more often than the NT. A 20% performance hit would be the same 20% on both machines.
The quoted improved performance doesn't quite translate into reality. A legitimate 10-times performance (IBM 1410 to IBM 370/135) transated into a 2-times difference in actual throughput. By the way, going the other direction won't work. As a rule of thumb, you will feel 90% of all slowdowns and only 10% of all speedups. This works both directions, like the "uphill both ways" quip.
Re:QNX (Score:5, Informative)
The performance hit of doing a context switch on PowerPC is about the same as doing a function call, which make multithreading and things like microkernels very easy to do fast. On x86, the overhead is often an order of magnitude larger, making microkernels crawl.
Re:QNX (Score:5, Informative)
Re:QNX (Score:4, Interesting)
Re:QNX (Score:4, Informative)
OS X (Score:5, Interesting)
Re:OS X (Score:4, Interesting)
Re:OS X (Score:4, Informative)
Re:I like the last bit (Score:5, Insightful)
Re:I like the last bit (Score:5, Funny)
I object to your comparison between apples and oranges and Macs and PCs. Equating apples compared to oranges with Macs compared to PCs is like comparing comparisons between euphemisms with comparisons between idioms.
Re:I like the last bit (Score:5, Insightful)
Perhaps, just perhaps mind you, he is simply stating what, in his opinion, is true.
KFG
Why it was brought up (Score:5, Insightful)
The fact that Linus wrote Linux "wrong", proves he wrote it and didn't steal it.
Re:I like the last bit (Score:4, Insightful)
Sure there is. It adds detail, and makes the speaker more credible, because it proves that the topic is actually something he cares heavily about. Demonstrating passion is a way to quickly prove that although your beliefs might not be perfectly correct, you've at least spent a lot of time and effort researching them, and are thus an informed source.
And from another perspective: show that he is still antagonistic to Linus's system gives him even more credibility. If a friend vouches for you, that might be discounted as a buddy covering for you- but if an enemy says you're innocent, then he's got no motivation to lie on your behalf.
(This reminds me in a roundabout way of Iraq today: the US Army "raiding" Chalabadi's headquarters, and he's publically "upset" about it. But they could've really been trying to help him gain power in Iraq, because the common people won't trust a leader who's too friendly to the USA. An OT example of how people can be easier to categorize by counting their enemies rather than their supporters)
Re:I like the last bit (Score:5, Insightful)
Arguing about monolithic versus microkernel was like arguing about whether a starving man's meal should be vegetarian or not.
Re:I like the last bit (Score:5, Insightful)
Re:I like the last bit (Score:5, Insightful)
12 years ago, who would have imagined that it is normal and in fact essential for a desktop OS to be able to smoothly handle many IO intensive processes at the same time?
Re:I like the last bit (Score:5, Informative)
Which challenge? (Score:4, Informative)
RTA. particularly the bit where Tanenbaum says that he kept MINIX small in order to to keep it up the challenge of being a good teaching tool. And then goes on to imply that he was suprised that it took so long for the niche of free, open production-featured UNIX to be filled by Linux and BSD.
Of course, Tanenbaum would have prefered that niche to be filled by a microkernel OS, but MINIX was never going to be that OS. MINIX was going to be the code that the creators of free UNIX cut thier teeth on at university. And guess what, it was.
Re:How can Linux be a copy of Minix (Score:5, Insightful)
Since I don't think anyone here has RTFA'd (/. effect and all) it's not worth judging right now. I think it's pretty classy of Tanenbaum to step up and offer some perspective on the AdTI FUD. If he does that as someone who still doesn't buy into Linux, that makes it all the more credible. Do we really want every response to this to be written by a Linux fanboy?
Re:How can Linux be a copy of Minix (Score:5, Informative)
The bitter part comes in the last couple of paragraphs, where he takes the opportunity to say that Linus was a misguided kid who should have paid more attention in class such that he would have seen the obvious superiority of a microkernel over a macrokernel. But he's quick to point out that he and Linus are not enemies.
Re:How can Linux be a copy of Minix (Score:5, Interesting)
I was semi-surprised at how retarded Brown came off in the article. I mean, everything that's come out of his "institution" would lead one to expect that, but somehow I thought maybe it was just an act for the punters. Turns out he really is that dumb. Weird.
Re:How can Linux be a copy of Minix (Score:5, Insightful)
They started off taking money from [digital-law.net] the [adti.net] Swiss [americanswiss.org]. The process seems to go something like this:
1. Get some hack-journalist experience (overfunded and obscure policy journals publish damn near anything; ditto for the Washington Times, as long as it purports to be conservative).
2. Get to know rich people
--a. get cushy internships in college
--b. marry a lawyer at a Big Firm
3. Convince the rich people you know to pay you for hack journalism.
4. Use hack journalism to push dubious foreign-investment schemes
5. PROFIT!!!
The key is that business, academia, law, journalism and government don't really know how to function with one another. They want to, for both good and bad reasons, so a lot of the time they're willing to throw big money conferences, fellowships, publications and "research institutions" that are supposed to grease the wheels.
Added to this, washed-up bigwigs usually want some place to go, and their former friends often set up make-work jobs for them. Lose an election? Why don't you give a lecture once a month at my public policy school. Get shitcanned from your CEO job? Why don't you sit on my government advisory committee. Newspaper column dried up? How bout you be a fellow at my think-tank. And of course, all of these people need gophers, personal assistants, research aides, etc. - a whole industry of suckups scurrying around washups.
The pay is peanuts for the honorees, sometimes even nonexistent. But they like the honorary titles. In exchange, the institution that hands out the titles gets more prestige from having Big Names attached to it. Look at the name-dropping on AdTI website: Jack Kemp, Newt Gingrich (Republicans), John Norquist (Democrat). In turn, the aura of Big Names clustered around an institution makes it easier to sucker donors.
That's basically the scam: laundering prestige for money. All you have to do is Know People(tm).
Re:How can Linux be a copy of Minix (Score:5, Insightful)
The bitter part comes in the last couple of paragraphs, where he takes the opportunity to say that Linus was a misguided kid who should have paid more attention in class such that he would have seen the obvious superiority of a microkernel over a macrokernel. But he's quick to point out that he and Linus are not enemies.
When I read it, to me it came across as a gentle rub, more good natured than bitter. Alas, when reading text, very often it is hard to determine the mind set of the author at the time of witing...
Re:I like the last bit (Score:4, Insightful)
If by "home PC" you mean an Intel x86 machine, and put that into the context of way things were looking around 1990, that is an entirely reasonable standpoint. Not very many people ever did do much multitasking on 386es.
Most people around then (myself included) did not think the x86 architecture was going to hang around much longer. It is quite clear that Tanenbaum shared the majority view at the time, that RISC was the way to go.
Also, the design goals of MINIX, clearly stated by Tanenbaum, (see his book, I've read it.) was for MINIX to be an educational tool, and run on low-end (e.g. 286) PC:s. He was not planning MINIX to be a production-quality system. He did not want to add 386-specific features.
You should not dismiss Tanenbaum so lightly, he most likely is far more knowledgeable on these subjects than you or I. It's like saying Einstein was a moron because he didn't grok quantum theory.
I don't know, perhaps you're a Linux zealot who wants to believe that Linus is always right. But the reason this entire debate is so well-known is that both sides raise valid points. The difference is in their intentions and design goals, not in the facts.
An excellent article (Score:5, Funny)
Curious that someone would spend all that cash and yet have done so little research. Smells of hidden agendas, or no-so-hidden agendas perhaps?
The best part has to be: "But the code was his. The proof of this is that he messed the design up."
I still love the classic conversations from 1992.. (Score:4, Informative)
I've often wondered what things will be like when Hurd is ready, and we'll have GNU and GNU/Linux, and all those BSDs, and OS X all in usage.
And then we'll probably still have to worry about making stuff look right in IE 6, because Microsoft takes forever to update it.
Re:I still love the classic conversations from 199 (Score:5, Informative)
Re:I still love the classic conversations from 199 (Score:4, Informative)
Not until 2000, when Prentice Hall finally came to realize that nobody would pay for Minix with Linux and the BSDs out there.
Re:I still love the classic conversations from 199 (Score:5, Funny)
"the Babylon project was a dream given form
"Its goal: to prevent another war by creating a place where humans and aliens could work out their differences peacefully.
"It's a port-of-call, home away from home for diplomats, hustlers, entrepreneurs, and wanderers.
"Humans and aliens wrapped in two million five hundred thousand tons of spinning metal, all alone in the night.
"It can be a dangerous place, but it's our last, best hope for peace.
"This is the story of the last of the Babylon stations. The year is 2258.
"The name of the place is Babylon5."
"Oh, and GNU Hurd was just released."
This just in. (Score:5, Funny)
Article text (Score:5, Informative)
Some Notes on the "Who wrote Linux" Kerfuffle, Release 1.1
Background
The history of UNIX and its various children and grandchildren has been in the news recently as a result of a book from the Alexis de Tocqueville Institution [adti.net]. Since I was involved in part of this history, I feel I have an obligation to set the record straight and correct some extremely serious errors. But first some background information.
Ken Brown, President of the Alexis de Tocqueville Institution, contacted me in early March. He said he was writing a book on the history of UNIX and would like to interview me. Since I have written 15 books and have been involved in the history of UNIX in several ways, I said I was willing to help out. I have been interviewed by many people for many reasons over the years, and have been on Dutch and US TV and radio and in various newspapers and magazines, so I didn't think too much about it.
Brown flew over to Amsterdam to interview me on 23 March 2004. Apparently I was the only reason for his coming to Europe. The interview got off to a shaky start, roughly paraphrased as follows:
AST: "What's the Alexis de Tocqueville Institution?"
KB: We do public policy work
AST: A think tank, like the Rand Corporation?
KB: Sort of
AST: What does it do?
KB: Issue reports and books
AST: Who funds it?
KB: We have multiple funding sources
AST: Is SCO one of them? Is this about the SCO lawsuit?
KB: We have multiple funding sources
AST: Is Microsoft one of them?
KB: We have multiple funding sources
He was extremely evasive about why he was there and who was funding him. He just kept saying he was just writing a book about the history of UNIX. I asked him what he thought of Peter Salus' book, A Quarter Century of UNIX [amazon.com]. He'd never heard of it! I mean, if you are writing a book on the history of UNIX and flying 3000 miles to interview some guy about the subject, wouldn't it make sense to at least go to amazon.com and type "history unix" in the search box, in which case Salus' book is the first hit? For $28 (and free shipping if you play your cards right) you could learn an awful lot about the material and not get any jet lag. As I sooned learned, Brown is not the sharpest knife in the drawer, but I was already suspicious. As a long-time author, I know it makes sense to at least be aware of what the competition is. He didn't bother.
UNIX and Me
I didn't think it odd that Brown would want to interview me about the history of UNIX. There are worse people to ask. In the late 1970s and early 1980s, I spent several summers in the UNIX group (Dept. 1127) at Bell Labs. I knew Ken Thompson, Dennis Ritchie, and the rest of the people involved in the development of UNIX. I have stayed at Rob Pike's house and Al Aho's house for extended periods of time. Dennis Ritchie, Steve Johnson, and Peter Weinberger, among others have stayed at my house in Amsterdam. Three of my Ph.D. students have worked in the UNIX group at Bell Labs and one of them is a permanent staff member now.
Oddly enough, when I was at Bell Labs, my interest was not operating systems, although I had written one and published a paper about it (see "Software - Practice & Experience," vol. 2, pp. 109-119, 1973). My interest then was compilers, since I was the chief designer of the the Amsterdam Compiler Kit (see Commun. of the ACM, vol. 26, pp. 654-660, Sept. 1983.). I spent some time there disc
Re:Article text (Score:4, Interesting)
That may be true if you look only at the kernel proper, but I'm willing to bet that there are "userspace" processes that have kernel access to an extent that makes the system actully megakernel.
Arguing your comments about microkernels:
I don't believe microkernels are any more secure or insecure, than macrokernels. As for stability, I would rather expect microkernels to be better there. The added flexibility is immense, and has real world uses.
Personally, I favor a system where nearly everything resides in userspace. It might even be feasible to make the system so flexible that different users or even processes can use different memory managers, schedulers, etc. There are a number of OS projects that explore in this direction, but I don't think we're quite there yet.
Re:Article text (Score:5, Interesting)
No no no. Windows is a monolithic kernel. Using Andy's defintions, the drivers run in kernel space; thereby, making it monolithic.
"but I'm willing to bet that there are "userspace" processes that have kernel access to an extent that makes the system actully megakernel."
Nope, this is false. In this sense, Windows NT (not counting 9x/Me because they suck) is identical to Linux. User space processes require system calls and a kernel crossing to have access to any kernel services.
"I don't believe microkernels are any more secure or insecure, than macrokernels."
I strenously disagree. In both Linux and Windows NT, 80+% of crashes are due to problems in drivers. There is a ton of research to back this up (Engler et al, I think). If the drivers existed in user space, a la microkernels, then 80+% of crashes would just disappear. Most people who complain about Windows' crashes do not realize the driver writers are to blame. Yes, Linux will have the same problem as drivers are ported. This also, has been pointed out in much research. THIS is the very reason why Andy dislikes monolithic kernels.
Sounds like my mother-in-law (Score:5, Funny)
Start with a premise, do little or no research, and declare conclusions. When the truth is pointed out, get indignant.
Granted, I haven't read the book in question, but this was a very enlightening article. I especially loved the comment that insinuates that Linus could have done a better job if he HAD stolen the code, than he did.
Re:Sounds like my mother-in-law (Score:4, Informative)
It's an old copyright strategy (Score:5, Insightful)
I think the enemies of Linux are trying a similar strategy based on the addage "if you kill the shepard - the sheep will scatter", "If you lie about something long enough or hard enough, people will believe it". They can't discredit Linux for technological or commercial reasons anymore, so their only option is to discredit Linus. With billions at stake, it could get nasty.
Re:On second thought (Score:5, Interesting)
In one of the "Revolution OS" interviews, he states he's merely the engineer, and RMS is more like the philosopher. I think he wants to remove himself from the political aspect and just enjoy the work. Think Einstein and the atomic bomb.
Re:On second thought (Score:4, Funny)
Re:On second thought (Score:5, Informative)
A closer quote from Revolution OS is "he calls me just an engineer."
Re:On second thought (Score:5, Insightful)
If you want to "secure our freedoms in the technology space" with F/OSS, you need to actually have F/OSS that works well to convince the 99.99% of the world to whom the need and benefit is not intuitively obvious. If all we had were a bunch of RMS clones, we'd be a lot worse off, because he scares the hell out of business types, who are much more concerned with the economic benefits of F/OSS that Linus Torvalds provides.
We need leaders with a variety of different strengths to spread the message to people with a variety of different interests. Linus Torvalds does an excellent job selling the benefits of F/OSS to engineers. The fact that he lets people like Eben Moglen handle the freedom side doesn't mean that he's causing any harm. If Eben Moglen spent his precious time hacking kernel code, we'd all be worse off.
On Minux (Score:5, Informative)
Oh the irony. (Score:4, Interesting)
right?
But who wrote the version of Basic that started bill gates on his path to riches?
The answer of course is that every creative engineering endeavour builds upon what came before. the detractors will call the step that the developer in question took as derivative, obvious, insignificant, or larcenous. the supporters will shine light upon the principal's ability to fuse diverse, unfocused, and/or unapplied parts into a cohesive whole.
to mis-quote grandpa simpson, 'the fax machine isn't anything more than a waffle iron with (something or other that i forgot).'
so, the question is really this: those of you who accuse (probably correctly) whoever is claiming that linus didn't write linux of spreading FUD, have you ever written a similar post smearing gates on basic? pot kettle?
Re:Oh the irony. (Score:4, Insightful)
I'm the first to disagree with anyone who says that Bill Gates isn't a very smart guy. He's got programming skills and incredible business smarts. However, he didn't write DOS, it was a clone of CP/M bought from another seattle company and then resold to IBM. story [diracian.com].
You are right of course, that each engineering marvel builds on something previously. If all the tech in the world were removed, we might know how to build cars and houses and put together computer systems, but we'd never know how to put together a hammer with stones and sticks, or fashion steel and silicone out of iron and sand. It would be interesting, wouldn't it? We'd have to start out with that old tech, to get back to this new stuff.
Anyways. idiots complain about Microsoft all the time, stupidly. But smart people do too - and there are plenty of good arguments against MS that don't require ignorance. The debate will continue. Hopefully Linux will get better, and the computing experience in general will get better. We'll see.
Re:Oh the irony. (Score:5, Informative)
The plot thickens (Score:5, Interesting)
Re:The plot thickens (Score:5, Funny)
1. Describe the components of an operating system, besides the central component, the kernel.
The Klaspil, the Frammistat and the Peramulator (sometimes called the "Virtual McGuggehupphe Valve). The Kaspil formats tuples for processing by the Frammistat, tuples are sorted, tagged and valued by the Perambulator.
2. What do programmers usually develop first, the compiler or the kernel?
Acne. Lots, usually.
3. Does this sequence impact the OS at all?
Probably
4. What's more complicated, the kernel or the compiler?
Girls
5. Why does operating system development take as long as it does?
Why is a duck?
What are the three key things in operating system development that take the longest to perfect?
Obsolecense, threading and nice icons.
6. Do you need operating systems familiarity to write a kernel? Yes / no? Elaborate please.
Yes. No.
7. In your opinion, why aren't there more operating systems on the market?
Terrorism.
Re:The plot thickens (Score:4, Funny)
Great. In principle, this is the "please write an article so that I just have to put my name over it" strategy from the "The Way of the Weasel" Dilbert book.
Malicious intent (Score:5, Interesting)
Re:Malicious intent (Score:5, Informative)
...and here he is on devhardware.com and others! (Score:5, Informative)
Interesting...! I think I'll email PJ with this little lot!
J.
Re:The plot thickens (Score:5, Funny)
The components of the operating system are as follows: The file browser, the kernelized window manager, the web browser, the media player, and the gaping remote exploit. As can be seen by this feature list, Microsoft Windows is the only true operating system on the market today.
Neither can be developed without access to a text editor, so invariably this is always written first. Unfortunately, once it is written, it needs to be compiled, and the compiler itself needs an operating system to run on. This "chicken and egg" problem wasn't solved until 2097, with the invention of time travel.
[Seriously, this guy is wrong to assume that both have to be written in order to have a complete system. Theoretically, you could develop an x86 operating system entirely on an Apple Powerbook, and just copy the binaries over, so you don't need to develop a compiler to develop an operating system.]
Yes. Writing the compiler first opens a gaping hole in the fabric of the universe, while writing the kernel first causes a plague of sabre-toothed cows. The trick is to write them both at the same time so that the cows are immediately sucked into the gaping hole.
"Complicated" means "something I know how to do." "Simple" means "something I don't know how to do, but I know the people who do and they're a bunch of nitwits so how hard can it be?" Given that criteria, I would have to say that both are braindead simple. Ask me again in a couple of years.
There are three rules that apply here. The first is Hofstadter's Law [wikipedia.org]: It always takes longer than you think, even if you've accounted for Hofstadter's Law.
The second rule is the 90% rule: The first 90% of the project will take 90% of the time, and the last 10% will take the other 90% of the time.
The last rule is called the "There's no way in hell we can add all the features the marketing department has already promised our customers, and they just added twenty more, and by the way three of them violate laws of physics" rule. Unfortunately, only the name of the rule has been passed down over the years, so nobody remembers what it was about.
A basic familiarity with computers is helpful, but not strictly necessary. For example, when Dennis Ritchie wrote the compiler for the BCPL language, he didn't actually use a computer. He scrawled the whole thing on a ream of paper, and had his secretary transcribe it. Similarly, when Linus wrote the 0.1 kernel, he used a photocopier.
Because it is not in the interests of the Freemasons to have more operating systems on the market. I can't say anything more about that in this forum, but it's absolutely true.
[Geez. There's a difference between an "operating system" (which a decent grad student can whip out in a few months) and an operating system which can be marketed as competition to the OSes already on the market. Linux 1.0 was probably closer to the former than the latter.]
Who is Justin Orndorff ? (Score:4, Informative)
1. On April 12, 2004, he asked about Linux ownership on usenet linux.kernel, using IP address 66.44.2.45 (RCN dialup access range). He used raison__d_etre@hotmail.com as his originating email address.
References
http://groups.google.com/groups?selm=1Kbes-3hM
2. On April 28, 2004, he asked about obtaining older versions of Minix in a Minix related mailing-list. He used raison__d_etre@HOTMAIL.COM as his originating email address.
References
http://listserv.nodak.edu/scripts/wa.exe?A2=in
3. On May 6, 2004, he posted questions about O.S. development on usenet alt.os.development, using IP address 66.44.4.15 (again, RCN dialup access range). He used jorndorff@adti.net as his originating email address.
References
http://groups.google.com/groups?selm=b6920e1.0
4. Later on May 6, 2004, the very same questions were asked in various web forums by someone using the nickname "jnana".
References
http://www.webmasterworld.com/forum40/1067.htm
http://forums.devhardware.com/showthread.php?t=1
http://www.osdev.org/board.js
5. On may 18th, 2004, he asked questions about corporate contribution into Linux on usenet linux.samba, using IP address 138.88.144.59 (Verizon DSL access range). He used raison__d_etre@hotmail.com as his originating email address.
References
http://groups.google.com/groups?selm=1Xf0Z-7VF
It is very likely that it is indeed only one person as
- The topics are closely related.
- The IP used when posting using the @adti.net address (3) is on the same range as the one used when posting using the @hotmail.com address (1).
- The questions asked using the jnana nickname (4) are the same as the ones asked using the @adti.net address (3).
Obviously, we have someone here, going by the names of Justin Orndorff/Jnana/Raison__d_etre (French for "reason to exist, or reason to be), and who seems very interested in Linux and other FOSS intelectual properties issues.
This person has at least two email addresses
raison__d_etre@hotmail.com
jorndorff@adti.net
What else ?
6. He apparently has a page/blog on Devianart. He uses the same Justin O. and Jnana names. He says he's 22 and lives in CP (?), Maryland. He has apparently started a new job on March 1st.
References
http://jnana.deviantart.com/
http://jnana.dev
7. He seems to like movies, particularly the "poetic" genre.
References
http://www.amazon.com/exec/obidos/tg/cm/member
8. He likes VHS music tapes trading (particularly black metal), has an email address @wam.umd.edu (University of Maryland) where he seems to be a student.
References
http://www.tapetradernetwork.com/Framed_body_r
http://www.tapetradernetwork.
9. A while back he was looking for "Codreanu comp. ['Fidelis Legio']" (whatever that is, apparently more black metal).
References
http://grumblesmurf.net/pipermail/coldmeat-l/2
10. Well, he actually seems to be an English student at U. of Maryland (College Park, CP again, see (6)), and interested in films production.
References
http://cinemaminima.com/blogs/orndorff/
OK, so maybe this is going a little fast but we apparently have an
- English student in Maryland,
- Interested in films
- Using email addresses raison__d_etre@hotmail.com, jorndorff@adti.net and maybe morpheus@wam.umd.edu (fake ?)
- Working since March or April for the ADTI (A. de Tocqueville Institute)
Fighting features (Score:5, Insightful)
Credit Mr. Tanenbaum sticking to his guns on the micro kernel design. But the brilliance of Linus is that he realises you must first have features to fight!
Re:Fighting features (Score:4, Insightful)
There's no room for debate. (Score:5, Funny)
Obligatory mirror (Score:4, Informative)
Here's a mirror [lockjawslair.com] of the article while it lasts.
In conclusion .. (Score:5, Insightful)
What more needs to be said !
Two independently developed *nices (Score:5, Informative)
OMU (6809 processor, ported to 68000) roughly system 7 but only single user, integrated shell.
http://tallyho.bc.nu/~steve/omu.html
UZI (Z80 processor, ported to 180, 280) roughly system 7: multitasking
http://www.dougbraun.com/uzi.html
Really A Secret ? (Score:5, Insightful)
I think its fair to say that "shock horror!" Andy Tanenbaum probably "learned" how to write Minix from somewhere else. In any case in the initial phases of Linux I think its fair to say that Linus did 99% of the work. And after the seed was planted.. well lots of people are now involoved with writing linux.
Its the nature of the beast almost all human acheivements are adaptations of something that came before . Its called development and its incredibly difficult to come up with an idea that doesnt have its basis in something else.
I challenge anyone to try and come up with an idea that doesnt have its origins in something else.
nick
Roblimo busted Ken Brown back in 2002! (Score:5, Informative)
The Important Point (Score:5, Insightful)
Thanks to Mr. Tanenbaum, we have the proof here:
People can create operating systems on their own. Even UNIX-like operating systems. Linus learned from Mr. Tanenbaum. Linus wrote the first kernel, published it and asked for input, which the rest of the world provided.
Linus then acted as a proper project manager, and the rest is history.
So again, whatever people do - do not buy the book.
Now, here's the problem: if we talk about this upcoming book, people will want to buy it. It's the Gibson Effect - the more its denounced, the more people will want to read it, and next thing you know there will be lines of people at the bookstores claiming they can see Jesus's face on this book.
So instead, I recommend to all intelligent folks in the programming community: ignore it. From here on out, don't even refer to the book by name, or its foundation, or the author. The more we pretend it doesn't exist and it's not important, the less interest people will have in it. If someone asks (such as a Pointy Haired Boss guy), shrug and lie as you say "No idea. I heard it was some book, but that it wasn't that good." And then shut up and leave it at that.
Don't give these guys free advertising. Don't even give them an ounce of respect, they don't deserve it.
Re:The Important Point (Score:5, Informative)
I had an experience where an entire development team of twenty people spent about a year and a half writing a large, grandiose enterprise software system that was supposed to be general-purpose and flexible, but in the end was a real performance turd at the job it was supposed to do. Using what I knew about the actual problem from looking at the previous solution's mistakes and the original problem statement, I rewrote the system from scratch over about 8 weeks at a client's site, averaging about 300 SLOCs a day (coding in Java where I can fly), with one developer helping me on a few specific tasks, and we ended up with a system that was functionally equivalent and about 50 times faster than the previous version because it stripped out all the unnecessary modularity (modularity is good, but if you split something that should be one component into ten, you just get lots of extra overhead) and message-passing that gunked up the original design.
I can't help but think of the analogy between this project and the Linux/MINIX effort. My knowledge of the problem was informed by analyzing the earlier design, but not a line of code was actually derived from it. And the twenty-some-odd man year effort was replaced neatly by a 3-man-month effort that was superior.
The moral of the story is that any of us who've been around in the software world long enough will tell you that most any system, assuming you lift all the crazy featurization constraints, can be written fairly rapidly by one person. And that usually you'll get a better result with an early working product and iterative functionality development than you will with a monolithic development effort, assuming you know the architectural parameters going into the effort by having been able to analyze previous efforts at solving a similar problem.
So the point is... keep the assumptions in mind before you start estimating a project's size and scope, man-hour requirements and so on. Development of UNIX-like OSes was a well-defined, well-understood problem at the time Linus did his work. And don't go claiming that somebody accomplished an impossible task unless you have a REALLY good understanding of the software engineering process in general, and the particulars of the problem they solved - in this case Ken Brown has neither. We didn't really need Mr. Tanenbaum to tell us that, but it shows what a stand-up guy he is that he has made a clear effort to defend Linus despite any past arguments they may have had.
Even Ziff Davis is saying AdTI's stance is a crock (Score:5, Informative)
God bless you, Mr. Tanenbaum (Score:4, Insightful)
And especially for being brave enough to address the problem of political repression and scapegoating, if albeit a little obliquely.
Level-headed and interesting (Score:5, Insightful)
First, he goes into the history of why people were souring on UNIX and the various independently-written UNIXalikes. These were mostly individual projects, which really sets the record straight for the people who seem to think that Linus was the first person to do this, and that Linus was somehow the only person intelligent and manly enough to write his own kernel.
At the same time, he lays out the history of UNIX clones, of which Linux was definitely one. It's surprising to me how many people seem to think of Linux as a great, independent OS, and fight so hard to deny that it has roots in UNIX. Of course these people are mostly young and don't know much about computer history. In that respect, this is an educational article.
And, yes, he does talk about the micro vs. monolithic kernel issue, but he does so without fanaticism, and, you know, what he says is generally correct. He's all for small and reliable software, which is something that UNIX was originally but rapidly became the antithesis of. Performance issues, back when people were using 4.77 and 8 MHz desktop processors, well, let's just say that things were different then. Now you have people writing big applications in Python. The real reason Linux ended up with a monolithic kernel is because that's what Linus understood and it was easier for him to write that way.
Did they have a fight over a girl? (Score:5, Interesting)
"Some of you may find it odd that I am defending Linus here. After all, he and I had a fairly public "debate" some years back. My primary concern here is getting trying to get the truth out and not blame everything on some teenage girl from the back hills of West Virginia."
Just curious...
-Derek
Re:Did they have a fight over a girl? (Score:4, Informative)
Summary: (Score:4, Insightful)
I don't have to read the book -particularly after reading Tanenbaum's very convincing presentation that the author doesn't know dick about intellectual property, not to mention he was basically lying about writing a book about the history of Unix, when it is clear his notion from the get go was to write a book titled "SCO is telling the truth about Linux - Really!" The quote above makes it clear that rather than bother to, oh, find some actual copyrighted code in Linux that is stolen, he is arguing the stellar logic that:
1) Open source advocates are contemptuous of copyright law
2) People who are contemptuous of copyright law are plagiarists
3) The people who wrote Linux are open source advocates...
Remind me what de Toqueville said about weaselly corporate shills again?
A quote from the Yahoo article -
"The report," according to Gregory Fossedal, a Tocqueville senior fellow, "raises important questions that all developers and users of open source code must face. While you cannot group all open source programmers and programs together; many are rigorous and respectful of the intellectual property rights, while others speak of intellectual property rights with open contempt." -Emphasis, again, added.
Get it? Failing evidence for any credible claim that they are actually TREATING intellectual property rights with contempt, they will note that they "speak" of them with open contempt... as if there were something wrong with that.
Writing a kernel is easy! (Score:5, Insightful)
Writing a scalable, production-quality OS kernel is another matter entirely. That takes hundreds or thousands of person-years by talented programmers.
Ken Brown is obviously a complete shithead if he doesn't understand this distinction. AST's rebuttal made the facts of the matter abundantly clear, and I'm sure any competent OS developer he asked would have told him the same thing.
The dog that didn't bark (Score:4, Insightful)
That's when I discovered that (1) he had never heard of the patent, (2) did not know what it meant to dedicate a patent (i.e., put it in the public domain), and (3) really did not know a thing about intellectual property law. He was confused about patents, copyrights, and trademarks.
Do you not find it strange that the President of an organisation involved in arguments about patents, copyrights and trademarks should be so ignorant of patents, copyrights and trademarks?
Mirror (Score:5, Informative)
Mirror #1 [earlham.edu]
Mirror #2 [dhs.org]
Tanenbaum ROCKS!!! (Score:4, Insightful)
Also Tanenbaum made one of my favorite comments, something like this...
The wonderful thing about standards, is there are so many to choose from.
Tanenbaum is one the best minds in Computer Science.
Is Microsoft really behind this? (Score:5, Insightful)
The nonsense coming out out of AdTI together with Andrew Tanenbaum's description of his interview make me wonder whether the speculation that Microsoft is behind this is really correct. Microsoft has tons of money and some fairly smart people, even in management. I find it hard to believe that they couldn't do a better job than this. Even if they need a putatively independent institution as a front, they could write the material themselves. They could even have their chosen institution hire somebody halfway competant for the project. It's hard to believe that they couldn't do better than this.
I wonder if this is perhaps just somebody trying to make a name for himself and/or bring in money for himself or his institute rather than something directly arranged by Microsoft.
Follow-up to yesterday's discussion (Score:5, Informative)
www.cs.vu.nl/~ast/brown/followup
Andy Tanenbaum
Re:Tanenbaum was wrong about microkernels (Score:5, Informative)
Background
The history of UNIX and its various children and grandchildren has been in the news recently as a result of a book from the Alexis de Tocqueville Institution. Since I was involved in part of this history, I feel I have an obligation to set the record straight and correct some extremely serious errors. But first some background information.
Ken Brown, President of the Alexis de Tocqueville Institution, contacted me in early March. He said he was writing a book on the history of UNIX and would like to interview me. Since I have written 15 books and have been involved in the history of UNIX in several ways, I said I was willing to help out. I have been interviewed by many people for many reasons over the years, and have been on Dutch and US TV and radio and in various newspapers and magazines, so I didn't think too much about it.
Brown flew over to Amsterdam to interview me on 23 March 2004. Apparently I was the only reason for his coming to Europe. The interview got off to a shaky start, roughly paraphrased as follows:
AST: "What's the Alexis de Tocqueville Institution?"
KB: We do public policy work
AST: A think tank, like the Rand Corporation?
KB: Sort of
AST: What does it do?
KB: Issue reports and books
AST: Who funds it?
KB: We have multiple funding sources
AST: Is SCO one of them? Is this about the SCO lawsuit?
KB: We have multiple funding sources
AST: Is Microsoft one of them?
KB: We have multiple funding sources
He was extremely evasive about why he was there and who was funding him. He just kept saying he was just writing a book about the history of UNIX. I asked him what he thought of Peter Salus' book, A Quarter Century of UNIX. He'd never heard of it! I mean, if you are writing a book on the history of UNIX and flying 3000 miles to interview some guy about the subject, wouldn't it make sense to at least go to amazon.com and type "history unix" in the search box, in which case Salus' book is the first hit? For $28 (and free shipping if you play your cards right) you could learn an awful lot about the material and not get any jet lag. As I sooned learned, Brown is not the sharpest knife in the drawer, but I was already suspicious. As a long-time author, I know it makes sense to at least be aware of what the competition is. He didn't bother.
UNIX and Me
I didn't think it odd that Brown would want to interview me about the history of UNIX. There are worse people to ask. In the late 1970s and early 1980s, I spent several summers in the UNIX group (Dept. 1127) at Bell Labs. I knew Ken Thompson, Dennis Ritchie, and the rest of the people involved in the development of UNIX. I have stayed at Rob Pike's house and Al Aho's house for extended periods of time. Dennis Ritchie, Steve Johnson, and Peter Weinberger, among others have stayed at my house in Amsterdam. Three of my Ph.D. students have worked in the UNIX group at Bell Labs and one of them is a permanent staff member now.
Oddly enough, when I was at Bell Labs, my interest was not operating systems, although I had written one and published a paper about it (see "Software - Practice & Experience," vol. 2, pp. 109-119, 1973). My interest then was compilers, since I was the chief designer of the the Amsterdam Compiler Kit (see Commun. of the ACM, vol. 26, pp. 654-660, Sept. 1983.). I spent some time there discussing compilers with Steve Johnson, networking with Greg Chesson, writing tools with Lorinda Cherry, and book authoring with Brian Kernighan, among many others. I also became friends with the other "foreigner," there, Bjarne Stroustrup, who would later go on to design and implement C++.
In short, although I had nothing to do with the development of the original UNIX, I knew all the people involved and much of the history quite well. Furthermore, my contact with the UNIX group at Bell Labs was not a secret; I even thanked them all for having me as a summer visitor in the preface to the first editio
Re:Tanenbaum was wrong about microkernels (Score:4, Funny)
I think I can hear the faint cursing of a VU system administrator somewhere
Re:Tanenbaum was wrong about microkernels (Score:4, Funny)
No wonder they're so happy!
Monolithic versus microkernel (Score:5, Informative)
John Sauter (J_Sauter@Empire.Net)
Re:Monolithic versus microkernel (Score:5, Insightful)
The microkernel idea derives from one basic principle: anything that doesn't need to run in kernelspace, shouldn't be in kernelspace.
There are several hypothetical benefits to this approach. For one, code that executes in kernel space is trusted. You'll notice that a lot of CS academics advocate microkernel architectures. It's because the less you have in the kernel, the easier it is to verify the kernel. The fewer the set of kernel primitives you have, the easier it is to reason about how the kernel will behave. In modern microkernels (see: L4, or it's free variant Fiasco), pretty much the only thing of importance left in kernel space is the scheduler, process management, and a few basic stubs for memory management. Most of the memory management implementation itself is pulled out into userspace.
The other benefit of microkernels is that they allow the system to be more flexible, when designed correctly. For example, having drivers in userspace means that you don't have the Linux issue with having to match driver versions with kernel versions. Another good example is that you _still_ cannot reasonably mount filesystems as a non-priviledged user in Linux. It's not unreasonable to expect that if you have access to a filesystem image, and you have access to the mount point, that you be allowed to extend the mount point with a view into the filesystem that you have control of. It should be possible, but it's not - mostly because the FS core is embedded into the kernel. And yes, there are kernel modules that promote the VFS layer to userspace - and they work pretty well. But there's really no need to have an artificial distinction between userspace FS impementations and kernelspace. There's nothing special about parsing directory and file structures that really needs to be in the kernel.
There are, and always will be, performance hits associated with moving kernel stuff into userspace. You necessarily have to have context switches for message passing - which has to be implemented in the kernel to be trusted in a microkernel design. The question is wether you think the benefits of microkernel design are worth that tradeoff.
I think they are. A 10% hit in performance is going to get eaten up as hardware gets better and faster. But that 50% increase in manageability and flexibility is going to pay dividends well into the future.
-Laxitive
Re:Grain of salt please (Score:4, Interesting)
Worse, he said "Linus wrote Linux as far as I know" Then when the moron said that One person couldn't possibly write a kernel, Andrew listed six other examples (including himself) showing that one person could do that. Remember reading (the post) is fundamental.
How is that for a grain of salt?
Re:Right, thanks for pointing out the origin of a (Score:4, Informative)
So to say you are batting(hitting) five hundred means you were successful half the time.
Re:Let's reignite the fight! (Score:5, Funny)
Re:Backhanded and Grudging (Score:5, Insightful)
It's on the order of Michael Cowpland's acknowledging that Microsoft's undocumented APIs were no threat and no hindrance in the development of WordPerfect because they were just for internal plumbing and of no benefit to someone writing an app on top of them.
Bah that makes him human (Score:4, Insightful)
It is not unlike the whole GNU/linux argument that Stallman keeps bringing up. Stallman fundamentaly believes in the GNU and what it stands for.
Linus isn't to concerned about ideals. That is his secret. He is rather pragmatic and makes the choice that works right now. It is why it is the cute little penguin and not some super slick logo or the BSD devil that is the symbol for everything MS is not. Minix, BSD, hurd. All are free and true to some higher ideal about software. But linux rules them all in actually being used.
Tanenbaum and Stallman are the shoulders Linux stands on (with a lot of others of course) but at the same time it is also betraying them a little. That tanenbaum and Stallman can't help but point this out makes them real human people. Not some politically correct mouthpiece. I like them all the more for it.