Tanenbaum-Torvalds debate
Encyclopedia
The Tanenbaum–Torvalds debate is a debate between Andrew S. Tanenbaum
Andrew S. Tanenbaum
Andrew Stuart "Andy" Tanenbaum is a professor of computer science at the Vrije Universiteit, Amsterdam in the Netherlands. He is best known as the author of MINIX, a free Unix-like operating system for teaching purposes, and for his computer science textbooks, regarded as standard texts in the...

 and Linus Torvalds
Linus Torvalds
Linus Benedict Torvalds is a Finnish software engineer and hacker, best known for having initiated the development of the open source Linux kernel. He later became the chief architect of the Linux kernel, and now acts as the project's coordinator...

, regarding Linux
Linux kernel
The Linux kernel is an operating system kernel used by the Linux family of Unix-like operating systems. It is one of the most prominent examples of free and open source software....

 and kernel architecture in general. Tanenbaum began the debate in 1992 on the Usenet
Usenet
Usenet is a worldwide distributed Internet discussion system. It developed from the general purpose UUCP architecture of the same name.Duke University graduate students Tom Truscott and Jim Ellis conceived the idea in 1979 and it was established in 1980...

 discussion group [news:///comp.os.minix comp.os.minix], arguing that microkernel
Microkernel
In computer science, a microkernel is the near-minimum amount of software that can provide the mechanisms needed to implement an operating system . These mechanisms include low-level address space management, thread management, and inter-process communication...

s are superior to monolithic kernel
Monolithic kernel
A monolithic kernel is an operating system architecture where the entire operating system is working in the kernel space and alone as supervisor mode...

s and therefore Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...

 was, even in 1992, obsolete. Other notable hackers such as David S. Miller
David S. Miller
David Stephen Miller is an American software developer working on the Linux kernel, where he is the primary maintainer of networking and the SPARC implementation, and is also involved in other development work...

 and Theodore Ts'o
Theodore Ts'o
Theodore Y. "Ted" Ts'o is a software developer mainly known for his contributions to the Linux kernel, in particular his contributions to file systems.He graduated in 1990 from MIT with a degree in computer science...

 joined the debate.

The debate has sometimes been considered a flame war.

This subject was revisited in 2006 after Tanenbaum wrote a cover story for Computer magazine
Computer (magazine)
Computer is an IEEE Computer Society practitioner-oriented magazine issued to all members of the society. It contains peer-reviewed articles, regular columns and interviews on current computing-related issues. The magazine can be categorized somewhere between a trade magazine and a research...

 titled "Can We Make Operating Systems Reliable and Secure?".
While Tanenbaum himself has mentioned that he did not write the article to renew the debate on kernel design,
the juxtaposition of the article and an archived copy of the 1992 debate on the technology site Slashdot
Slashdot
Slashdot is a technology-related news website owned by Geeknet, Inc. The site, which bills itself as "News for Nerds. Stuff that Matters", features user-submitted and ‑evaluated current affairs news stories about science- and technology-related topics. Each story has a comments section...

 caused the subject to be rekindled.
Torvalds posted a rebuttal of Tanenbaum's arguments via an online discussion forum,
and several technology news sites began reporting the issue.
This prompted Jonathan Shapiro to respond that most of the field-proven reliable and secure computer systems use a more microkernel-like approach.

The debate

While the debate initially started out as relatively moderate, with both parties involved making only banal statements about kernel design, it would get 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
Microprocessor
A microprocessor incorporates the functions of a computer's central processing unit on a single integrated circuit, or at most a few integrated circuits. It is a multipurpose, programmable device that accepts digital data as input, processes it according to instructions stored in its memory, and...

 would win out over others in the future. Besides Tanenbaum and Torvalds, several other people joined the debate, including Peter MacDonald
Peter MacDonald (computer programmer)
Peter MacDonald is a Canadian software engineer, best known as the creator of Softlanding Linux System , widely regarded as the first complete Linux distribution. Some of his work served as a foundation of Wine...

, an early Linux kernel developer and creator of one of the first distributions
Linux distribution
A Linux distribution is a member of the family of Unix-like operating systems built on top of the Linux kernel. Such distributions are operating systems including a large collection of software applications such as word processors, spreadsheets, media players, and database applications...

, Softlanding Linux System
Softlanding Linux System
Softlanding Linux System was an early Linux distribution founded by Peter MacDonald in May, 1992.SLS was the first release to offer a comprehensive Linux distribution containing more than the Linux kernel and basic utilities, including TCP/IP and the X Window System.- History :SLS was the most...

; David S. Miller
David S. Miller
David Stephen Miller is an American software developer working on the Linux kernel, where he is the primary maintainer of networking and the SPARC implementation, and is also involved in other development work...

, one of the core developers of the Linux kernel; and Theodore Ts'o, the first North America
North America
North America is a continent wholly within the Northern Hemisphere and almost wholly within the Western Hemisphere. It is also considered a northern subcontinent of the Americas...

n Linux kernel developer.

“Linux is obsolete”

The first occurrence of this debate was recorded on January 29, 1992, when Tanenbaum first posted his criticism on the Linux kernel to comp.os.minix, noting how the monolithic
Monolithic kernel
A monolithic kernel is an operating system architecture where the entire operating system is working in the kernel space and alone as supervisor mode...

 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
Minix
MINIX is a Unix-like computer operating system based on a microkernel architecture created by Andrew S. Tanenbaum for educational purposes; MINIX also inspired the creation of the Linux kernel....

 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
Intel 80386
The Intel 80386, also known as the i386, or just 386, was a 32-bit microprocessor introduced by Intel in 1985. The first versions had 275,000 transistors and were used as the central processing unit of many workstations and high-end personal computers of the time...

 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
Application programming interface
An application programming interface is a source code based specification intended to be used as an interface by software components to communicate with each other...

 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
Intel 8088
The Intel 8088 microprocessor was a variant of the Intel 8086 and was introduced on July 1, 1979. It had an 8-bit external data bus instead of the 16-bit bus of the 8086. The 16-bit registers and the one megabyte address range were unchanged, however...

-based computer, sometimes even without a hard drive.
Linux was, at that time, specifically built for the Intel 80386, 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
X86 architecture
The term x86 refers to a family of instruction set architectures based on the Intel 8086 CPU. The 8086 was launched in 1978 as a fully 16-bit extension of Intel's 8-bit based 8080 microprocessor and also introduced segmentation to overcome the 16-bit addressing barrier of such designs...

 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
GNU
GNU is a Unix-like computer operating system developed by the GNU project, ultimately aiming to be a "complete Unix-compatible software system"...

 on their 200 MIPS, 64M SPARCstation-5." He stated that the Linux kernel would eventually fall out of taste as hardware would progress, due to it being so closely tied to the 386 architecture. (See the section "Erroneous predictions" for a detailed account of this claim.)

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 e-mail to him to apologize. 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.

Erroneous predictions

When the issue and full initial debate were published in the O'Reilly Media
O'Reilly Media
O'Reilly Media is an American media company established by Tim O'Reilly that publishes books and Web sites and produces conferences on computer technology topics...

 book Open Sources: Voices from the Open Source Revolution
Open Sources: Voices from the Open Source Revolution
Open Sources: Voices from the Open Source Revolution is a book published by O'Reilly Media. It is an anthology of essays written by luminaries of the open source and free software movements...

in 1999, it stated that the debate exemplifies “the way the world was thinking about OS design at the time”.

The 386 processor was then the most widespread chip “by several times”, according to participant Kevin Brown, with the 486 used in high-end computers, and the 286 almost obsolete, and the World Wide Web
World Wide Web
The World Wide Web is a system of interlinked hypertext documents accessed via the Internet...

 was not yet widely used. One of Tanenbaum's arguments against Linux was that it was too closely tied to the x86 line of processors, which he claimed was “not the way to go”. However, , x86 and its backwards compatible extension x86-64 remain the overwhelmingly dominant CPU architectures on desktop computers. Linux has since been ported to many other processor architectures, including ARM
ARM architecture
ARM is a 32-bit reduced instruction set computer instruction set architecture developed by ARM Holdings. It was named the Advanced RISC Machine, and before that, the Acorn RISC Machine. The ARM architecture is the most widely used 32-bit ISA in numbers produced...

, AVR32, Alpha
DEC Alpha
Alpha, originally known as Alpha AXP, is a 64-bit reduced instruction set computer instruction set architecture developed by Digital Equipment Corporation , designed to replace the 32-bit VAX complex instruction set computer ISA and its implementations. Alpha was implemented in microprocessors...

, IA-64, 680x0
68k
The Motorola 680x0/m68000/68000 is a family of 32-bit CISC microprocessors. During the 1980s and early 1990s, they were popular in personal computers and workstations and were the primary competitors of Intel's x86 microprocessors...

, MIPS
MIPS architecture
MIPS is a reduced instruction set computer instruction set architecture developed by MIPS Technologies . The early MIPS architectures were 32-bit, and later versions were 64-bit...

, POWER/PowerPC
PowerPC
PowerPC is a RISC architecture created by the 1991 Apple–IBM–Motorola alliance, known as AIM...

, and SPARC
SPARC
SPARC is a RISC instruction set architecture developed by Sun Microsystems and introduced in mid-1987....

.

Another recurring topic in the debate discusses alternatives to Linux
Linux kernel
The Linux kernel is an operating system kernel used by the Linux family of Unix-like operating systems. It is one of the most prominent examples of free and open source software....

 and MINIX
Minix
MINIX is a Unix-like computer operating system based on a microkernel architecture created by Andrew S. Tanenbaum for educational purposes; MINIX also inspired the creation of the Linux kernel....

, such as GNU
GNU
GNU is a Unix-like computer operating system developed by the GNU project, ultimately aiming to be a "complete Unix-compatible software system"...

 and 4.4BSD
Berkeley Software Distribution
Berkeley Software Distribution is a Unix operating system derivative developed and distributed by the Computer Systems Research Group of the University of California, Berkeley, from 1977 to 1995...

. Tanenbaum suggested the former in his first post, stating that unlike Linux, it was a “modern” system. In his second post, he mentioned that “[...] 5 years from now everyone will be running free GNU on their 200 MIPS, 64M SPARCstation-5”. Several debaters disagreed that GNU was a suitable alternative. Kevin Brown called it vaporware
Vaporware
Vaporware is a term in the computer industry that describes a product, typically computer hardware or software, that is announced to the general public but is never actually released nor officially canceled. Vaporware is also a term sometimes used to describe events that are announced or predicted,...

, and stated that Linux would likely benefit from the x86 architecture which would continue to be common and become more accessible to a general audience. Theodore Ts'o, an early Linux contributor, said that while a microkernel approach would have benefits, “[...] Linux is here, and GNU isn't — and people have been working on Hurd
GNU Hurd
GNU Hurd is a free software Unix-like replacement for the Unix kernel, released under the GNU General Public License. It has been under development since 1990 by the GNU Project of the Free Software Foundation...

 for a lot longer than Linus has been working on Linux”.
Torvalds, aware of GNU's efforts to create a kernel, stated “If the GNU kernel had been ready last spring, I'd not have bothered to even start my project: the fact is that it wasn't and still isn't.”

4.4BSD-Lite would not be available until two years later due to the USL v. BSDi
USL v. BSDi
USL v. BSDi was a lawsuit brought in the United States in 1992 by Unix System Laboratories against Berkeley Software Design, Inc and the Regents of the University of California over intellectual property related to UNIX...

 lawsuit, filed by AT&T
AT&T
AT&T Inc. is an American multinational telecommunications corporation headquartered in Whitacre Tower, Dallas, Texas, United States. It is the largest provider of mobile telephony and fixed telephony in the United States, and is also a provider of broadband and subscription television services...

's subsidiary Unix System Laboratories
Unix System Laboratories
Unix System Laboratories was originally organized as part of Bell Labs in 1989. USL joined with the UNIX Software Operation, also a Bell Laboratories division, in 1990. It assumed responsibility for Unix development and licensing activities...

 against Berkeley Software Design
Berkeley Software Design
Berkeley Software Design Inc. was a corporation which developed, sold licenses for, and supported BSD/OS , a commercial and partially proprietary variant of the BSD Unix operating system for PC compatible computer systems...

, which pertained to the intellectual property
Intellectual property
Intellectual property is a term referring to a number of distinct types of creations of the mind for which a set of exclusive rights are recognized—and the corresponding fields of law...

 related to UNIX
Unix
Unix is a multitasking, multi-user computer operating system originally developed in 1969 by a group of AT&T employees at Bell Labs, including Ken Thompson, Dennis Ritchie, Brian Kernighan, Douglas McIlroy, and Joe Ossanna...

. The lawsuit slowed development of the free-software descendants of BSD for nearly two years while their legal status was in question. As Linux did not have such legal ambiguity, systems based on it gained greater support. A settlement between USL v. BSDi was reached in January 1994, and 4.4BSD was released in June. (While the final release was in 1995, several free versions based on this version have been maintained since, including FreeBSD
FreeBSD
FreeBSD is a free Unix-like operating system descended from AT&T UNIX via BSD UNIX. Although for legal reasons FreeBSD cannot be called “UNIX”, as the direct descendant of BSD UNIX , FreeBSD’s internals and system APIs are UNIX-compliant...

, OpenBSD
OpenBSD
OpenBSD is a Unix-like computer operating system descended from Berkeley Software Distribution , a Unix derivative developed at the University of California, Berkeley. It was forked from NetBSD by project leader Theo de Raadt in late 1995...

 and NetBSD
NetBSD
NetBSD is a freely available open source version of the Berkeley Software Distribution Unix operating system. It was the second open source BSD descendant to be formally released, after 386BSD, and continues to be actively developed. The NetBSD project is primarily focused on high quality design,...

.)

The Samizdat incident

On 23 March 2004, Kenneth Brown
Kenneth Brown (author)
Kenneth P. Brown, Jr. is an American lobbyist and author, and the former president of the Alexis de Tocqueville Institution , a think tank based in Arlington, Virginia....

, president of the Alexis de Tocqueville Institution
Alexis de Tocqueville Institution
The Alexis de Tocqueville Institution is a Washington, D.C.–based conservative think tank that produced reports and policy research....

, interviewed Tanenbaum. This was a prelude to the pending publication of a book by Brown titled Samizdat: And Other Issues Regarding the 'Source' of Open Source Code
Samizdat (book)
Samizdat: And Other Issues Regarding the 'Source' of Open Source Code is a book by Kenneth Brown, which was prereleased in May 2004 and was to be published later that year by the Alexis de Tocqueville Institution...

. The book claims that Linux was initially illegally copied from MINIX. Tanenbaum published a strong rebuttal, defending Torvalds, and stated at that time:


I would like to close by clearing up a few misconceptions and also correcting a couple of errors. First, I REALLY am not angry with Linus. HONEST. He's not angry with me either. I am not some kind of "sore loser" who feels he has been eclipsed by Linus. MINIX was only a kind of fun hobby for me. I am a professor. I teach and do research and write books and go to conferences and do things professors do. I like my job and my students and my university. [...] I wrote MINIX because I wanted my students to have hands-on experience playing with an operating system. After AT&T forbade teaching from John Lions
John Lions
John Lions was an Australian computer scientist. He is best known as the author of Lions' Commentary on UNIX 6th Edition, with Source Code, commonly known as the Lions Book.-Early life:...

' book
Lions' Commentary on UNIX 6th Edition, with Source Code
Lions' Commentary on UNIX 6th Edition, with Source Code by John Lions contains the complete source code of the 6th Edition Unix kernel plus a commentary. It is commonly referred to as the Lions book...

, I decided to write a UNIX-like system for my students to play with. [...] I was not trying to replace GNU/HURD or Berkeley UNIX. Heaven knows, I have said this enough times. I just wanted to show my students and other students how you could write a UNIX-like system using modern technology. A lot of other people wanted a free production UNIX with lots of bells and whistles and wanted to convert MINIX into that. I was dragged along in the maelstrom for a while, but when Linux came along, I was actually relieved that I could go back to professoring. [...] Linus seems to be doing excellent work and I wish him much success in the future.

While writing MINIX was fun, I don't really regard it as the most important thing I have ever done. It was more of a distraction than anything else. The most important thing I have done is produce a number of incredibly good students, especially Ph.D. students. See my home page for the list. They have done great things. I am as proud as a mother hen. To the extent that Linus can be counted as my student, I'm proud of him, too. Professors like it when their students go on to greater glory.


External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK