
The Tanenbaum-Torvalds Debate (1992) - theoutlander
http://oreilly.com/catalog/opensources/book/appa.html
======
ayrx
"To put this discussion into perspective, when it occurred in 1992, the 386
was the dominating chip and the 486 had not come out on the market. Microsoft
was still a small company selling DOS and Word for DOS. Lotus 123 ruled the
spreadsheet space and WordPerfect the word processing market. DBASE was the
dominant database vendor and many companies that are household names today--
Netscape, Yahoo, Excite--simply did not exist."

Funny how another 15 years changes things. I wonder how many people will
remember Netscape in a few years. I have never heard of Excite before this.
Yahoo is just about the furthest thing from people's mind nowadays when
talking about technology companies.

~~~
sdrothrock
> Yahoo is just about the furthest thing from people's mind nowadays when
> talking about technology companies.

Yahoo is actually very, very dominant here in Japan. There's even a (popular)
Yahoo ISP.

I probably know more Japanese people with Yahoo e-mail addresses than I do
Japanese people with gmail addresses.

~~~
eloisant
That's a join venture dominated by Softbank (that's also a cell phone
operator, and owner of Sprint).

Yahoo Inc. only holds 35% of it, and licences his name to this separate
company.

User accounts are separate too, if you create an account everywhere in the
world but Japan it's a @yahoo.com account, but in Japan it's @yahoo.co.jp.

------
paulannesley
Choice quotes from ast:

> 5 years from now [1992 -> 1997] everyone will be running free GNU on their
> 200 MIPS, 64M SPARCstation-5

> My point is that writing a new operating system that is closely tied to any
> particular piece of hardware, especially a weird one like the Intel line, is
> basically wrong.

~~~
userbinator
That first quote is funny when you look at this:
[http://en.wikipedia.org/wiki/Instructions_per_second#Timelin...](http://en.wikipedia.org/wiki/Instructions_per_second#Timeline_of_instructions_per_second)

> Intel Pentium Pro 541 MIPS at 200 MHz ... 1996

Also this list of benchmarks suggests a SPARCstation5 was either _slower_ or
roughtly the same performance as the 1st-generation Pentiums (which came out
in '93, only a year after that post): [http://www.vintage-
computer.com/vcforum/showthread.php?11079...](http://www.vintage-
computer.com/vcforum/showthread.php?11079-Sun-Sparcstation5-is-it-worth-it)

But this was definitely a time when betting on RISC-based desktops seemed like
a good idea.

~~~
Rusky
Even better is that x86 started translating its instruction set into an
internal RISC-like set, so RISC kind of won anyway.

~~~
mcv
RISC didn't "kind of" win; it really won, due to everybody walking around with
tiny RISC computers in their pockets. Running a variety of linux.

~~~
userbinator
I don't think it's that clear of a victory; ARM is everywhere (and so is MIPS,
to a lesser extent) and is commonly mentioned, that much is true, but there
are far more ISAs that most people don't hear about in mundane embedded
applications (of which there are _many_ ) - 8051, 6502, PIC, etc. which are
definitely CISCs.

Also the x86 being "RISC-like" internally is a bit of a misnomer - x86 uops
are much wider (118 bits for the P6, even wider for later models) than most
RISCs' fixed 32-bit instructions. Modern RISCs like the ARM Cortex series also
decode instructions into wider uops.

~~~
paulannesley
> 6502 … which are definitely CISCs

It seems the "6502 risc or cisc" debate was never really solved, as a Google
search for that phrase will show.

------
danielbarla
Can't help but chuckle at his apology / signature around the halfway point:

> Linus "my first, and hopefully last flamefest" Torvalds

Somehow I never noticed that before.

------
henrikschroder
> In fact I have sent out feelers about some "linux-kernel" mailing list which
> would make the decisions about releases, as I expect I cannot fully support
> all the features that will /have/ to be added: SCSI etc, that I don't have
> the hardware for. The response has been non-existant: people don't seem to
> be that eager to change yet.

I guess interest materialized after a while...

------
Joeman
Small correction, the 80486 was on the market in 1989.

------
Ecio78
Partially related, if somebody is interested The Linux Foundation together
with edX MOOC platform are offering a free Linux course since few days[1]. It
seems to be quite basic (I've just started it, knowing already something-but-
never-enough of Linux) but considering that is provided by The Linux
Foundation, "sponsored" by Linus Torvalds and it was normally done in
real/virtual classroom for 2400$, it's probably worth doing it ;)

[1]
[https://www.edx.org/course/linuxfoundationx/linuxfoundationx...](https://www.edx.org/course/linuxfoundationx/linuxfoundationx-
lfs101x-introduction-1621#.U-Wxct_E_JU)

------
markbnj
It's a trip re-reading this stuff. It was almost painful to read Linus'
apology for going off on ast, only because I remember all too well being just
that same young hothead just a little bit earlier (about a half decade or so).

------
pconner
Before reading this, I had no idea that Ken Thompson used to work at Georgia
Tech

------
js2
Discussed just a few weeks ago -
[https://news.ycombinator.com/item?id=8010719](https://news.ycombinator.com/item?id=8010719)

------
xsace
So that took place on bulletin boards? What's the equivalent to it nowadays?
Is there a place where the action take place with today big thinkers?

~~~
theoutlander
Google Groups is where all those newsgroups are accessible now. I'm sure you
can use other clients as well, but GG seems very convenient!

You can find the original thread here:
[https://groups.google.com/forum/#!topic/comp.os.minix/wlhw16...](https://groups.google.com/forum/#!topic/comp.os.minix/wlhw16QWltI%5B1-25-false%5D)

~~~
LaikaF
They're asking what replaced newsgroups not where to get more old newsgroups.

Unless everyone is still using newsgroups for something besides piracy which
is the only time I've really heard them used in a modern context.

~~~
theoutlander
The question was "What's the equivalent to it nowadays?"... unless there's
something else that I'm missing, I think google groups is where such
discussions take place and that's where I've participated in for the last
decade or so.

I don't think newsgroups are only used for piracy. Most open source products
have a Google Group associated with it unless they're using the discussion on
Github or Stackoverflow chat / IRC.

------
vilda
To be fair, Linux evolves a lot since then. It's not as monolithic as it used
to be - it has layers, modules, subsystems (vfs, usb), interfaces.

~~~
rythie
It's still fundamentally monolithic though, a crash in a module or subsystem
still brings the entire system down. The point of a microkernel is to bring
the subsystems into user space, where a crash can be tolerated.

Linux essentially is made stable by the sign-off/code-review/sub-system
maintainers which keep the code quality high.

~~~
tbrownaw
It really depends what you mean by "monolithic".

Properly I would think it should refer to program structure, and how well
independent pieces of code are (logically) separated and able to tolerate
failures in eachother.

Here it's just being used to mean "single unprotected address space", where a
particular class of bugs (memory corruption) can cause arbitrary problems in
completely unrelated code. Would this mean that a kernel written in some
managed memory-safe language (I think msft has an experimental C# one) _cannot
possibly_ be monolithic?

~~~
rythie
I mean monolithic in terms of what the argument was about. Monolithic Kernels
can't generally be written in a managed memory-safe language, because it's the
kernel that does the memory-safe part. With a microkernel, parts can be
written in memory-safe languages, that's why Singularity has to use one:
[http://en.wikipedia.org/wiki/Singularity_%28operating_system...](http://en.wikipedia.org/wiki/Singularity_%28operating_system%29)

------
mrfusion
I never understood the significance of this. what's the big deal about it?

Someone made me read it when I was learning Linux for the first time 15 years
ago. I'm not sure what I was supposed to get from it ...

~~~
Ologn
It's a discussion similar in some ways to Richard P. Gabriel's "Lisp: Good
News, Bad News, How to Win Big". It's similar to Eric Ries's ideas about a
minimally viable product.

Lisp Machines running Lisp programs edited in Emacs might be the theoretically
superior way to do things. Microkernels which don't crash when some device
code fails might be a superior way to do things. In a competitive market with
things moving forward, people don't always have the time to fiddle with
something until it's perfect. By the time the Lisp people get together and
hash out Common Lisp (which Gabriel says was in many ways a poor compromise),
or simplify everything with Scheme - the Unix/C people have already won. By
the time things like Hurd finally become viable, OS's like Linux are already
everywhere. People will take the poor substitute now and make it the default
worldwide, and live with the backwards compatibility problems rather than wait
years for people to come down from ivory towers with the perfect solution. You
can go on and on with the examples - which chip had a better instruction set,
MIPS or the Intel chip with all its legacy stuff? It doesn't matter, Intel
already had a toehold and people would rather stick with it than switch.

------
cagenut
its amazing how similar "microservices vs monolithic" is today

history doesn't repeat itself, but it rhymes

~~~
chubot
Yup, this has been observed recently: "Data Centers are microkernels done
accidentally"

[http://scholar.google.com/scholar?cluster=674259428780315955...](http://scholar.google.com/scholar?cluster=674259428780315955&hl=en&as_sdt=0,39)

The microservices / web services thing is basically a microkernel
architecture, but done over multiple machines.

And actually Linus was prescient enough to state this. His argument against
microkernels was that it makes algorithms more complicated -- you end up
developing distributed algorithms for everything. He says OS algorithms are
easier with shared data structures.

He explicitly said that microkernels could make sense when you have real
distributed hardware and no shared memory. That seems to be what has happened.
Linux has turned into a single node OS running the microkernel-ish components
for a distributed OS.

------
mufumbo
I love this. We are truly living in great times.

