
Linux is Obsolete (1992) - tim_sw
https://groups.google.com/forum/#!topic/comp.os.minix/wlhw16QWltI%5B1-25%5D
======
TheMagicHorsey
Though history seems to prove him wrong, Tanenbaum wasn't incorrect.

Linux to me is an example of the wrong thing at the right time. Linux
embracing Posix and fully supporting Intel gave programmers exactly what they
wanted right at the nascency of the dotcom boom. Apache, MySQL and PHP needed
a home that wasn't Windows ... and Linux provided that home on the best
dollar-for-dollar processors on the planet.

If Motorola or IBM had challenged Intel with cheap, better processors then
history might have looked different because Linux wouldn't have been a
solution on those platforms.

Linux works well enough I suppose, but the fact that we have this gigantic
mess, where we run an OS, and then run a hypervisor on it, and then run more
copies of an OS, and then finally get to run our application code, tells me
something is quite wrong.

The fact that unikernels are even a thing tells me that people DO feel the
pain of monokernels and yearn for something simpler. Securing a monokernel
like Linux, even one so open and scrutinized, is really, really hard. There is
just so much surface area in the kernel to attack. Everything is so
heavyweight.

I think Tannenbaum was right, but he just wasn't enough of a hacker to get
things done in time to catch the wave that the dotcom boom created.

To me the dream would be something like Google's new Fuschia OS where
everything is capability-based so security is built into the OS concept from
the very beginning.

~~~
Const-me
> and Linux provided that home on the best dollar-for-dollar processors on the
> planet.

FreeBSD was very competitive. They both were launched around the same time,
first version of Linux released in 1991, 386BSD in 1992. They share a lot of
features, i386 target, posix compatibility. BSD pioneered some very important
technologies, kqueue (epoll was couple years later in Linux), jail (docker was
a decade later), etc.

I still don’t understand why everyone uses Linux now, but BSD only stayed in
very niche markets.

~~~
wink
What timeframe are we talking about here? Maybe I'm late to the party, but
even for "special interest" Linux in the late 90s was already kind of well-
known compared to the BSDs. (I was in school back then, no internet, and only
learned about Linux from some folks already studying computer science). And
I'm just using that point of data because when I came in contact with Linux
there wasn't really much about FreeBSD, so either that was my bubble or it was
technically competitive but had already lost the popularity contest.

~~~
Const-me
> it was technically competitive but had already lost the popularity contest.

I think that’s the case. It never gained traction outside of niche markets.
Most ISPs in late 90s were running a lot of BSD-based servers, companies like
Apple, Juniper, Sony, Nintendo are still using BSD kernel and/or other
components in their products, but it was and still is relatively little-known
OS.

I can’t say I’m happy about that. I’m currently working on an embedded Linux-
based firmware, I’d gladly switched to BSD. Maybe it’s just my irrational
fears but I feel BSD is more reliable. However, that would require too much
work to accomplish. I need stable and reliable GPU and WiFi drivers; hardware
vendors (ARM and Realtek, respectively) only ship drivers for Linux, and I
don’t think I’m competent in that area to attempt to port them, I never did
substantial work on Linux nor BSD device drivers.

------
samdoidge
> Apologies to ast, and thanks to John Nall for a friendy "that's not how it's
> done"-letter. I over-reacted, and am now composing a (much less acerbic)
> personal letter to ast. Hope nobody was turned away from linux due to it
> being (a) possibly obsolete (I still think that's not the case, although
> some of the criticisms are valid) and (b) written by a hothead :-)

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

Comparing this to his more recent emails, it doesn't seem him he has mellowed
with age!

~~~
asdfman123
Yeah, I came here to post that "last flamefest" part. Oh Linus, it certainly
won't be your last...

------
_sdegutis
> _" Be thankful you are not my student. You would not get a high grade for
> such a design :-)"_

It's really amazing to read and see all sorts of good points from both sides,
and know that if it weren't for the benefit of hindsight, I'm not really sure
which side I would agree with.

But I really strongly get the feeling that Andy had a great opportunity thrown
into his lap, but by looking at MINIX as a "non-serious" hobby (as Linus
implied) that he only did for fun and to unwind, and by not really listening
to his user base (make it free, fix filesystem race conditions, add POSIX
compatibility, etc), he really threw the opportunity away for it to grow.
Which is fine if growth was never the goal.

And sure, a project owner doesn't _have to_ say yes to every feature, and they
actually probably shouldn't. But you have to let what you're creating evolve
into something that meets needs, and turn into something different. Look at
the first page of commits on Semantic-UI's repo. It was called Origami (then
Shape) and was meant for doing 3D stuff in JS, before he renamed it to
Semantic and turned it into a JS-based version of Bootstrap. Terrible example
and doesn't really apply here but I remembered coming across that fascinating
bunch of commits the other day and wanted to share it with someone.

~~~
raister
I've always thought, however, that Torvalds was in fact Tanenbaum's student in
Univ. of Helsinki... Well, if ast stated that linus was not, then, obviously,
he was not at all.

~~~
poizan42
Tanenbaum has never taught at the University of Helsinki, so it would have
been difficult for Torvalds to have been his student there...

~~~
raister
Good point! Andrew Stuart Tanenbaum (born March 16, 1944), sometimes referred
to by the handle ast,[6] is an American-Dutch computer scientist and professor
emeritus of computer science at the Vrije Universiteit Amsterdam in the
Netherlands

------
dang
Discussed in 2009:
[https://news.ycombinator.com/item?id=545213](https://news.ycombinator.com/item?id=545213)

2012:
[https://news.ycombinator.com/item?id=3785363](https://news.ycombinator.com/item?id=3785363)

2014:
[https://news.ycombinator.com/item?id=7223306](https://news.ycombinator.com/item?id=7223306)

2015:
[https://news.ycombinator.com/item?id=8942175](https://news.ycombinator.com/item?id=8942175)
and
[https://news.ycombinator.com/item?id=9739016](https://news.ycombinator.com/item?id=9739016).

------
pjmlp
In a way Tanenbaum won.

Micro-kernels are everywhere on high integrity computing, run on the radios of
mobile OS.

User space drivers, containers, hipervisors, Project Treble are all examples
of trying to bend Linux into the same design.

~~~
indolering
They were both right, it's just dependent on the timeframe.

Monolithic kernels "won" because they made pragmatic design decisions based on
the hardware and software available. Linux in particular worked well partly
because it built on a 20-year-old OS design.

Microkernels have had another ~30 years to develop and they are now
performance competitive with monolithic kernels [1]. There is still a large
legacy investment in monolithic kernels, but as security becomes increasingly
important ... it's hard to see monolithic kernels staying the dominant form of
OS design in the future.

Tanenbaum is a computer scientist, Linus is a computer engineer.

[1]: [https://os.inf.tu-dresden.de/pubs/sosp97/](https://os.inf.tu-
dresden.de/pubs/sosp97/)

~~~
mseebach
The article you linked to is 21 years old. Microkernels is the fusion power of
software, always 50 years in the future. They're great in theory, it's just
that nobody got them to work outside the lab.

As for security, yes, there are still vulnerabilities in the Linux kernel, and
a microkernel might be helpful here, but it seems to me that the high-impact
vulnerabilities we've seen in the past few years have been outside the kernel
(spectre/meltdown and rowhammer in hardware and heartbleed in userspace). It's
not obvious that microkernels will give a big enough security benefit for the
investment to catch the technology up to the state of the art.

~~~
pjmlp
Funny because apparently they run on my phone broadband radio chip, in many
industrial automation control systems, medical devices, avionics and cars.

It sounds pretty much outside the lab to me.

------
acomjean
For those that don't know.. Tannenbaum wrote the book on Operating Systems...
Well a book. I think his OS Minix[2] is in there. Its on every intel CPU, but
I think that was news to Tannenbaum.

This argument was at its root a "theory" vs. "getting it done" now argument. I
think thats why it resonates.

[1][https://www.amazon.com/Modern-Operating-Systems-Andrew-
Tanen...](https://www.amazon.com/Modern-Operating-Systems-Andrew-
Tanenbaum/dp/013359162X)
[2][https://en.wikipedia.org/wiki/MINIX](https://en.wikipedia.org/wiki/MINIX)

This is a debate about how OS's should be structured. There is some merit to
Tanenbaums MicroKernel approach, but ultimately its slower and for an OS that
matters, thus Linux being ascendant . Also everywhere gcc was ported could
compile and run linux.

Microkernels "lost" but there was a microkernel called "Mach" worked on by
Avie Tevanian who went to Next then to Apple. I think OS-X is kinda
microkernel based (if they're still using XNU which is loosely based on the
mach microkernel.).

[https://en.wikipedia.org/wiki/XNU](https://en.wikipedia.org/wiki/XNU)

I still miss HPUX RTE for PARISC(Real Time Extensions) for sending jobs to
specific processors or processor sets, disabling interupts....

If you like OSs. I like the case studies in the dinosaur book: (stupid text-
book prices though....)

[4] [https://www.amazon.com/Operating-System-Concepts-Abraham-
Sil...](https://www.amazon.com/Operating-System-Concepts-Abraham-
Silberschatz/dp/0470128720)

~~~
yeahbutbut
> This basically was at its root a "theory" vs. "getting it done" argument.

Because worse is better. [https://www.jwz.org/doc/worse-is-
better.html](https://www.jwz.org/doc/worse-is-better.html)

~~~
jwilk
Copy&paste the link. Do _not_ click.

------
bitL
So funny. Linus would be probably kicked out of Tanenbaum's OS class, and most
of Andy's predictions were incorrect (still waiting for my GNU/HURD on MIPS).
The lesson is not to get discouraged by prevailing winds of academia I guess,
they have different objectives, and their processing of reality is on a more
abstract level, meaning ideas might look better in theory, but not so great in
practice.

~~~
pjmlp
It is running on the radio chip of your mobile phone.

[https://gdmissionsystems.com/products/secure-
mobile/hypervis...](https://gdmissionsystems.com/products/secure-
mobile/hypervisor)

~~~
AnimalMuppet
Which is mildly interesting, but a long way from "microkernels are where OSes
are going in the next decade or two (from 1992)".

Microkernels were not a completely worthless idea, and they have appeared here
and there. But in terms of OSes, they lost for three decades after
Tannenbaum's statement.

------
rixrax
Netiquette[1] mentioned. I just re-read it after so many years. :) This makes
me realize how old I've become (for they made us read some pre-RFC versions
before getting accounts to Sun workstations in college). Oh how civilized the
online discussions used to be. And how the community self policed, until it
didn't[2].

Maybe FB, Reddit and others should put their AI researchers into good use and
make people and bots alike take a hard to cheat test on Netiquette before
being allowed to post stuff that will be seen by others. And implement a one
month 'observation-only' period as suggested by Netiquette[1]... ;-)

[1] [https://tools.ietf.org/html/rfc1855](https://tools.ietf.org/html/rfc1855)
[2]
[https://en.wikipedia.org/wiki/Eternal_September](https://en.wikipedia.org/wiki/Eternal_September)

------
timeandagain
Tanenbaum reminds me of those "smart people" Art Williams was talking about in
his 1987 "Just Do It" speech. Good to learn of another example of "more smart"
not being "more successful".

~~~
slededit
He did by creating MINIX. His loss to Linux was not from an unwillingness to
get his hands dirty and build something.

~~~
gowld
MINIX was an educational demo. He slapped on a restrictive license even though
he didn't make money from it, because his ego didn't want other people to
touch his baby. Then he never made time to build anything useful with it.
Being right about something you aren't going to build is worse than being a
little wrong about something you build.

~~~
stock_toaster
[https://en.wikipedia.org/wiki/MINIX_3](https://en.wikipedia.org/wiki/MINIX_3)

> Its use in the Intel ME makes it the most widely used OS on Intel processors
> starting as of 2015, with more installations than Microsoft Windows,
> GNU/Linux, or macOS.

That's... not too shabby, if you ask me.

------
raister
Did everybody else reading this just disregard other people's comments on that
thread and skip it just to read ast and torvalds debatting?

~~~
_sdegutis
I really thought I was going to, but the other replies provide so much
context, plus it's kind of like time traveling and being a fly on the wall in
a conversation that took place over 25 years ago. I'm just imagining them all
looking like the cast of Friends while sitting at their 15-inch 90s PC screens
typing these electronic-mails in software I wouldn't recognize. And you have
people chiming in and calling out argument flaws and offering suggestions on
new words for "make POSIX" like posixiate. Fun stuff! It's like the comment
section of an HN post. Which is funny because HN evolved out of mailing lists
like that, and the culture did too.

~~~
netule
Same feeling here, I usually skim these threads for the big names, but in this
case there is so much historical context that makes this a great read. It
would be wonderful to have been a subscriber to this mailing list back in the
90's.

~~~
unilynx
it was a newsgroup - usenet was still a thing, and not just about binaries,
back then

------
Animats
Back then, nobody realized how bloated the Linux kernel was going to become,
with way too much in kernel space. The kernel is somewhere above 15 million
lines of code now.

~~~
axaxs
I think AST did. IMHO, drivers belong in user space. There's an exponential
number of devices out there, jamming them into the kernel has been a messy
chore at best.

~~~
gkya
As someone completely alien to that side of computing except rudimentary stuff
most people know, I never understood the reason why the drivers have to be
maintained in the kernel tree. Maybe include the most common stuff, but why
not have a second, distinct linux-drivers project that maintains those stuff
in their own time?

Also, why we don't have a common interface to drivers at least between Linux
and BSD by now? I don't like that there's animosity between the two
ecosystems. That way we could have, if technicalities permit, a way for many
diverse OS models to enter into the competition: if the drivers are written
agains a certain standardised interface, one can code-up an OS to support that
interface, and just like with POSIX, the OS would have a whole suite of
drivers available from day one. Better for the driver authors too.

~~~
AnIdiotOnTheNet
Linux kernel maintainers are actively hostile to the concept of a stable
driver ABI. They believe that drivers are best maintained with the kernel so
that they can be kept up and fixed.

Given that Linux has the broadest hardware support of any open source OS, and
arguably any OS period, it's difficult to say they aren't right.

~~~
pjmlp
Which is exactly what Project Treble introduces, it converts Linux into a
micro-kernel design, where each driver runs in its own process with a tiny
kernel presence, communicating over Android RPC mechanisms.

[https://source.android.com/devices/architecture/hidl/](https://source.android.com/devices/architecture/hidl/)

~~~
snvzz
Are Treble drivers compatible with Fuchsia? That'd be cool.

~~~
pjmlp
No idea, but I don't think so as they are completely different architectures.

~~~
snvzz
Genode has an ABI for userspace (which includes OS components and drivers)
that works across multiple kernels, which are mostly microkernels, but also
Linux.

Considering Google designed both Treble and Fuchsia, it's not such a crazy
idea.

------
messe
> _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._

This will always be my favourite quote from this exchange. Just imagine what
desktop computing would look like today had that come to pass.

------
ransom1538
For those readers that are curious who Tannenbaum is, he wrote (the best IMHO)
operating systems book [0]. This book contained the complete source of an
operating system 'Minix'. At the same time Torvalds wanted to build a OS
system. Did Torvalds use/steal or extend the Minix source? It is extremely
controversial [1] amount CS types.

[https://www.amazon.com/Modern-Operating-Systems-Andrew-
Tanen...](https://www.amazon.com/Modern-Operating-Systems-Andrew-
Tanenbaum/dp/013359162X) [0]

[http://wiki.c2.com/?MinixOperatingSystem](http://wiki.c2.com/?MinixOperatingSystem)
[1]

~~~
stiGGG
Because you misspelled it twice, Tanenbaum‘s OS is called Minix.

------
nickik
Network effects don't only depend on quality. Is basically the summation of
this whole debate.

If you had 2 teams and both could start from 0 and spend 5 years to develop an
operating system most people would probably pick some version of microkernel
design.

~~~
AnimalMuppet
Most people would pick the OS that was of a microkernel design? No way. Most
people would pick whichever one was most solid and/or had the most features.

~~~
nickik
I mean for development.

~~~
AnimalMuppet
Oh, I see. I will not argue against your position, now that I understand it.

------
mmaunder
The most insightful thing about this repost is that Google groups is still
around. Tried to find it recently and couldn't. Woohoo!

------
bad_user
One thing that jumps at me is how childish and rude Linus is in his response.
I think at that time he was 23 years old, so an adult.

As a piece of advice to young people, try not to be rude and accept criticism
with grace, as the Internet has a long memory and you'll probably not be
respected enough for your achievements to be tolerated, like Linus is.

~~~
tehlike
Linus is still rude or rather, blunt. To be honest, though, i prefer blunt
over fluff or politically correct way.

Way more informative.

~~~
Barrin92
Bluntness doesn't increase the information content of a message, it's just a
way to force one's message through. Everything that can be said bluntly can be
said politely, and usually to greater effect.

I'm always confused by people who defend Linus style because it isn't just
blunt but often plain insulting for no apparent reason at all.

There are many problems with this. Apart from antagonizing people as already
mentioned, if someone is constantly screaming they lose the ability to
modulate how serious they actually are. You can rarely tell whether Linus is
legitimately upset because he seems almost always upset. It's better to
default to politeness if only because if you're actually upset at least I know
that I need to pay attention.

~~~
User23
Some people really appreciate the blunt communications style. Some people
don't. I personally believe one should be able to appreciate all
communications styles, because it provides you access to more information.
Ignoring something smart because one got bad feelings from how it was said
strikes me as rather puerile.

~~~
gkya
> I personally believe one should be able to appreciate all communications
> styles

Wut? Some communication styles are just "harassment", including Linus'. One
can put up with it, but appreciation? BS. Linus is worse than Kalanick.

------
AnimalMuppet
> As a result of my occupation, I think I know a bit about where operating are
> going in the next decade or so.

> 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.

That's a theoretician confusing theory and practice.

And note that Tannenbaum isn't one of the "people who actually design
operating systems". Tannenbaum designed toys to demonstrate concepts, not OSes
for real-world use.

And, was Tannenbaum right that NT was a microkernel design? I have this vague
memory that the drivers were supposed to be in user space, but they moved at
least the video drivers into the kernel for performance reasons.

------
himom
Ah yes, this oldie newsgroup post from ast, the guy whom wrote a bunch of
mandatory CS textbooks and MINIX 2 (before the course moved to FreeBSD) which
we had to hack on in ECS150. I’m sure he’s crazy rich by now from passive
income.

A hypothetical kernel&userland like OpenBSD built on seL4 (a-la DragonFly or
MINIX 3), implemented in Rust, OCaml or Haskell, with thorough unit,
integration tests and perhaps formal proofs, seems like the safest, not
necessarily the fastest, kernel approach possible using modern technologies.
seL4 communicating by sending messages is really efficient and builds in IPC
as a fundamental, low-latency operation.

~~~
AnimalMuppet
> A hypothetical kernel&userland like OpenBSD built on seL4 (a-la DragonFly or
> MINIX 3), implemented in Rust, OCaml or Haskell, with thorough unit,
> integration tests and perhaps formal proofs, seems like the safest, not
> necessarily the fastest, kernel approach possible using modern technologies.

Seems to me like an approach that would take even longer to implement than
Hurd did.

------
gbaygon
If anybody can provide an alternative source for the text thanks in advance.
It requires a google login for reading.

~~~
jorams
You can open it in a private browsing window. It only requires login if you
were previously logged in to a Google account, and that login has expired.
Incredibly annoying.

------
pofilat
several past discussions:
[https://hn.algolia.com/?query=%20LINUX%20is%20obsolete%20(19...](https://hn.algolia.com/?query=%20LINUX%20is%20obsolete%20\(1992\)%20&sort=byPopularity&prefix&page=0&dateRange=all&type=story)

