ArticleslgStudy

computer science

Tanenbaum–Torvalds debate

Tanenbaum–Torvalds debate is a computer science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand Tanenbaum–Torvalds debate rather than just read about it. In short: Starting in 1992, Andrew S. Tanenbaum and Linus Torvalds had a written debate over the Internet regarding the Linux kernel and kernel architecture in general.

Tanenbaum–Torvalds debate — main illustration
Tanenbaum–Torvalds debate — illustration

Key takeaways

  • Tanenbaum–Torvalds debate belongs to computer science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect Tanenbaum–Torvalds debate to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of Tanenbaum–Torvalds debate from memory before moving on to harder problems.

Reference excerpt

Starting in 1992, Andrew S. Tanenbaum and Linus Torvalds had a written debate over the Internet regarding the Linux kernel and kernel architecture in general. Tanenbaum, the creator of Minix, began the debate in Usenet discussion group comp.os.minix, arguing that microkernels are superior to monolithic kernels and therefore Linux was, even in 1992, obsolete. The debate has sometimes been considered a flame war.

The debate

While the debate initially started out as relatively moderate, with both parties involved making only banal statements about kernel design, it grew progressively more detailed and sophisticated with every round of posts. Besides just kernel design, the debate branched into several other topics, such as which microprocessor architecture would win out over others in the future. Besides Tanenbaum and Torvalds, several other people joined the debate, including Peter MacDonald, an early Linux kernel developer and creator of one of the first distributions, Softlanding Linux System; David S. Miller, one of the core developers of the Linux kernel; and Theodore Ts'o, the first North American Linux kernel developer. The debate opened on January 29, 1992, when Tanenbaum first posted his criticism on the Linux kernel to comp.os.minix, noting how the monolithic design was detrimental to its abilities, in a post titled "LINUX is obsolete". While he initially did not go into great technical detail to explain why he felt that the microkernel design was better, he did suggest that it was mostly related to portability, arguing that the Linux kernel was too closely tied to the x86 line of processors to be of any use in the future, as this architecture would be superseded by then. To put things into perspective, he mentioned how writing a monolithic kernel in 1991 is "a giant step back into the 1970s". Since the criticism was posted in a public newsgroup, Torvalds was able to respond to it directly. He did so a day later, arguing that MINIX has inherent design flaws (naming the lack of multithreading as a specific example), while acknowledging that he finds the microkernel kernel design to be superior "from a theoretical and aesthetical" point of view. He also claimed that since he was developing the Linux kernel in his spare time and giving it away for free (Tanenbaum's MINIX was not free at that time), Tanenbaum should not object to his efforts. Furthermore, he mentioned how he developed Linux specifically for the Intel 80386 because it was partly intended as a learning exercise for Torvalds himself; while he conceded that this made the kernel itself less portable than MINIX, he asserted that this was an acceptable design principle, as it made the application programming interface simpler and more portable. For this reason, he stated, "linux is more portable than minix." Following Linus' reply, Tanenbaum argued that the limitations of MINIX relate to him being a professor, stating the requirement for the system to be able to run on the rather limited hardware of the average student, which he noted was an Intel 8088-based computer, sometimes even without a hard drive. Linux was, at that time, specifically built for the Intel 386, a significantly more powerful (and expensive) processor. Tanenbaum also specifically states "... as of about 1 year ago, there were two versions [of MINIX], one for the PC (360K diskettes) and one for the 286/386 (1.2M). The PC version was outselling the 286/386 version by 2 to 1." He noted that even though Linux was free, it wouldn't be a viable choice for his students, as they would not be able to afford the expensive hardware required to run it, and that MINIX could be used on "a regular 4.77 MHz PC with no hard disk." To this, Kevin Brown, another user of the Usenet group, replied that Tanenbaum should not complain about Linux's ties to the 386 architecture, as it was the result of a conscious choice rather than lack of knowledge about operating system design, stating "... an explicit design goal of Linux was to take advantage of the special features of the 386 architecture. So what exactly is your point? Different design goals get you different designs." He also stated that designing a system specifically for cheap hardware would cause it to have portability problems in the future. Despite the fact that MINIX did not fully support the newer hardware, Tanenbaum argued that since the x86 architecture would be outdone by other architecture designs in the future, he did not need to address the issue, noting "Of course 5 years from now that will be different, but 5 years from now everyone will be running free GNU on their 200 MIPS, 64M SPARCstation-5." He stated that the Linux kernel would eventually fall out of style as hardware progressed, due to it being so closely tied to the 386 architecture. Torvalds attempted to end the discussion at that point, stating that he felt he should not have overreacted to Tanenbaum's initial statements, and that he was composing a personal email to him to apologise. However, he would continue the debate at a later time.

Aftermath Despite this debate, Torvalds and Tanenbaum appear to be on good speaking terms; Torvalds wants it understood that he holds no animosity towards Tanenbaum, and Tanenbaum underlines that disagreements about ideas or technical issues should not be interpreted as personal feuds.

… excerpt ends here. Continue reading the full article.

Illustrations

Tanenbaum–Torvalds debate illustration
Tanenbaum–Torvalds debate illustration
Tanenbaum–Torvalds debate: Graphic of a monolithic kernel running kernel space entirely in supervisor mode
Graphic of a monolithic kernel running kernel space entirely in supervisor mode
Tanenbaum–Torvalds debate: Microkernel architecture relies on user-space server programs.
Microkernel architecture relies on user-space server programs.

Worked examples

Example 1 — a first encounter with Tanenbaum–Torvalds debate

Start with the simplest possible case. Write down what Tanenbaum–Torvalds debate claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In computer science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to Tanenbaum–Torvalds debate before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about Tanenbaum–Torvalds debate ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of Tanenbaum–Torvalds debate

In research
Tanenbaum–Torvalds debate appears in computer science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses Tanenbaum–Torvalds debate in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
Tanenbaum–Torvalds debate is common in secondary-school and first-year university syllabi. It links to neighbouring topics 1992 in computing, 2006 in computing, Computer science in the Netherlands, so understanding it makes those chapters shorter.
In everyday life
Look for Tanenbaum–Torvalds debate outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.
Ask Teacher Smith questions about this articleOpens your AI tutor with a question about “Tanenbaum–Torvalds debate” →

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study Tanenbaum–Torvalds debate in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what Tanenbaum–Torvalds debate means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain Tanenbaum–Torvalds debate out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is Tanenbaum–Torvalds debate in simple terms?

Starting in 1992, Andrew S. Tanenbaum and Linus Torvalds had a written debate over the Internet regarding the Linux kernel and kernel architecture in general.

Why does Tanenbaum–Torvalds debate matter?

Because it connects several computer science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study Tanenbaum–Torvalds debate?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on Tanenbaum–Torvalds debate.

Tags

  • 1992 in computing
  • 2006 in computing
  • Computer science in the Netherlands
  • History of free and open-source software
  • January 1992
  • Linus Torvalds
  • Linux
  • Minix
  • Operating system criticisms
  • Operating system kernels

Keep exploring