Live data from Hacker News

LINUX is obsolete (1992)

groups.google.com

41–50 of 76 posts

Re: LINUX is obsolete (1992)

#41
post #7

I find it interesting that this post can be taken two ways. 1. It's clear that Linux 'won' in the marketplace so we can all laugh at how wrong this guy was and the curiosity of these 'microkernel' things and that portability stuff. Lols all around. 2. We've reached a point where ideas are gaining ground about immutable infrastructure, people are talking more about things with similarities to microkernels called unike…

> It's clear that Linux 'won' in the marketplace

it depends a lot on what you mean by won and which marketplace you are talking about.

as a desktop os linux is essentially non existent with an ever shrinking 1.5% of the market share or so as more and more regular joe consumers get machines with windows or os x preinstalled at a much faster rate than expert-level geeks are installing linux.

as a software developer targetting the mainstream it is rare that targetting linux is a profitable venture, because nearly no customers use it and those that do don't spend money on software in the same way as some one living in the Microsoft or Apple ecosystems. OS X also has a tiny market share (around 4% iirc) but people who are willing to pay over the odds to have a pretty workstation seem also not afraid of spending money on software.

as a server platform Linux dominates despite the best efforts of MS and Apple to try and market slightly uglier versions their consumer level desktop OS as a server product. its easier to use remotely, and can easily be configured to not rely on heavy UI features - there are even flavours that cater better to business philosophies on 'stability' (i use that term loosely) like RHEL and CentOS - also stability and open source go hand in hand, because you can fix bugs, or pay people to fix bugs allowing you to throw money at problems to fix them in a way which is impossible with the mainstream OSs

as a software developer it makes sense to target linux first for your big expensive server product. if you don't then you are cutting out your customers...

i don't think either of these situations has much to do with the underlying technology. its much more to do with the OS and what it provides than how it is built to achieve those aims.

Re: LINUX is obsolete (1992)

#42
post #9

Earlier quoted context omitted.

Well, a microkernel is harder to implement than a monolithic one and from a theoretical standpoint is a better design, IMO it deserves a higher grade in an operating system design course. Let's not mythify the 1992 Linux kernel, which probably wasn't _that_ good.

A microkernel is much easier to implement than a monolithic one. Been there, done that. The hard part is to get the messaging done with zero overhead (no copying), but using paging for the mbufs you can get quite far with that.

A microkernel is certainly easier to build than a monolithic kernel, because it does much less. You want to compare a feature-equivalent system, so microkernel + some userland drivers etc vs monolithic kernel.

The monolithic approach is easier because you just call a function in another component or read its data structures. In a microkernel, you need to design interfaces and protocols first.

Re: LINUX is obsolete (1992)

#43
post #42

Earlier quoted context omitted.

A microkernel is much easier to implement than a monolithic one. Been there, done that. The hard part is to get the messaging done with zero overhead (no copying), but using paging for the mbufs you can get quite far with that.

A microkernel is certainly easier to build than a monolithic kernel, because it does much less. You want to compare a feature-equivalent system, so microkernel + some userland drivers etc vs monolithic kernel. The monolithic approach is easier because you just call a function in another component or read its data structures. In a microkernel, you need to design interfaces and protocols first.

No, the monolithic approach is definitely not easier for a simple reason: there is hardly any kernel level debugging going on in a microkernel based system because the kernel is small. Everything else is userland, so you can test your new driver as just another user process. This takes the sting out of a very large chunk of frustrating debugging and gives you access to all the userland tools to home in on the bug.

And even better: a crash of your driver does not take down the whole system. So you can just keep on working.

Designing protocols and interfaces is roughly the same in either case, after all you could settle on a very simple set of messages for most interface problems, with open, close, fcntl, read and write you would be able to do the majority of interface tasks.

Re: LINUX is obsolete (1992)

#44

The problem with this whole debate is that Linus was 'more wrong' than Tanenbaum and Tanenbaum made plenty of mistakes with Minix which also make it more of a macrokernel than a true microkernel. A true microkernel does one thing and one thing only: pass messages. Now that's an ideal and in the real world you don't get to have your ideals realized so rather than to be able to realize this spherical cow you're going t…

> Tanenbaums biggest mistake was to try to monetize Minix through Prentice-Hall,

You make it sound like his capitalist motives worked against him.

Writing and publishing educational material was part of his job. Prentice hall had been publishing his books since the 1970's. I'm sure it seemed like the obvious way to publish his educational material - especially since minix wasn't a standalone thing, but it came with a book. Perhaps he even had an exclusive contract with PH. It probably didn't even occur to him that there was another way to publish the software.

Also, in 1991, making software available for download wasn't as straight forward as it is today. There was no www, and very few Europeans had access to the internet. I know for me a book with a disk would have been the only reasonable way to get it.

Re: LINUX is obsolete (1992)

#45
post #41
post #7

I find it interesting that this post can be taken two ways. 1. It's clear that Linux 'won' in the marketplace so we can all laugh at how wrong this guy was and the curiosity of these 'microkernel' things and that portability stuff. Lols all around. 2. We've reached a point where ideas are gaining ground about immutable infrastructure, people are talking more about things with similarities to microkernels called unike…

> It's clear that Linux 'won' in the marketplace it depends a lot on what you mean by won and which marketplace you are talking about. as a desktop os linux is essentially non existent with an ever shrinking 1.5% of the market share or so as more and more regular joe consumers get machines with windows or os x preinstalled at a much faster rate than expert-level geeks are installing linux. as a software developer tar…

Don't forget that Android also runs on the Linux kernel and there are more Android phones than desktop PCs running any operating system.

Re: LINUX is obsolete (1992)

#46
post #7

I find it interesting that this post can be taken two ways. 1. It's clear that Linux 'won' in the marketplace so we can all laugh at how wrong this guy was and the curiosity of these 'microkernel' things and that portability stuff. Lols all around. 2. We've reached a point where ideas are gaining ground about immutable infrastructure, people are talking more about things with similarities to microkernels called unike…

So we now live in a world where both monolithic and "microkernel" (hybrid) systems are commonplace - there's a bit shy of a billion devices running linux (android) and no shortage of windows and osx hosts around. What can we learn from this?

Well, it doesn't really seem to matter whether you use a monolithic or microkernel design. They both work well enough. Driver development is hard for reasons that have got nothing to do with this, and doesn't appear to change much between the platforms. Success/popularity of operating systems appears to be determined by other factors.

I'm not sure why people feel this is still worth debating. All the evidence points to it being completely unimportant.

Re: LINUX is obsolete (1992)

#47
post #41

Earlier quoted context omitted.

> It's clear that Linux 'won' in the marketplace it depends a lot on what you mean by won and which marketplace you are talking about. as a desktop os linux is essentially non existent with an ever shrinking 1.5% of the market share or so as more and more regular joe consumers get machines with windows or os x preinstalled at a much faster rate than expert-level geeks are installing linux. as a software developer tar…

Don't forget that Android also runs on the Linux kernel and there are more Android phones than desktop PCs running any operating system.

Given the way Google is steering Android these days i am not sure i want it on a "desktop" any time soon.

Back during early 3.x it had a spark of potential. But since then Google has done quite a bit to lock it down so that it is basically a media consumption terminal.

Re: LINUX is obsolete (1992)

#48

The problem with this whole debate is that Linus was 'more wrong' than Tanenbaum and Tanenbaum made plenty of mistakes with Minix which also make it more of a macrokernel than a true microkernel. A true microkernel does one thing and one thing only: pass messages. Now that's an ideal and in the real world you don't get to have your ideals realized so rather than to be able to realize this spherical cow you're going t…

If cost was the only problem, why didn't Hurd take off? Did Minix not suffer from the same problems?

Hurd was a research project as much as a working kernel.

I Think the project restarted 3 times in 10 years...

Linux may have been crude etc, but it was here, it was working, and it was free (in both senses of the word).

Frankly i see the lack of Linux on the desktop less about the quality of Linux, and more about MS abusing its market position and a massive failure to regulate.

Re: LINUX is obsolete (1992)

#49
post #42

Earlier quoted context omitted.

A microkernel is much easier to implement than a monolithic one. Been there, done that. The hard part is to get the messaging done with zero overhead (no copying), but using paging for the mbufs you can get quite far with that.

A microkernel is certainly easier to build than a monolithic kernel, because it does much less. You want to compare a feature-equivalent system, so microkernel + some userland drivers etc vs monolithic kernel. The monolithic approach is easier because you just call a function in another component or read its data structures. In a microkernel, you need to design interfaces and protocols first.

That makes it sounds like a certain fashionable system that sits on top of the Linux kernel is monolithic...

Re: LINUX is obsolete (1992)

#50
post #9

Tanenbaum said that Torvalds would not get a good grade on his course, epic. "I still maintain the point that designing a monolithic kernel in 1991 is a fundamental error. Be thankful you are not my student. You would not get a high grade for such a design :-)" Perfect display of how universities are good at judging people about how well they know how to "play the game" (and usually that involves conforming to whatev…

Well, a microkernel is harder to implement than a monolithic one and from a theoretical standpoint is a better design, IMO it deserves a higher grade in an operating system design course. Let's not mythify the 1992 Linux kernel, which probably wasn't _that_ good.

If, as Tanenbaum did, you look at it from a computer science perspective, Linux wasn't good, indeed. It was 'just' a Unix clone.

From a software engineering perspective, it left a lot to be desired, too. It basically only supported what was on Linus desk.

One could say the things Linux had going for it were a) a GPL license, b) being small, c) arriving at just the right time, and d) Linus willing to accept external input.

Whether a) is an advantage of course depends on personal preference. b) helped with d) because it made it feasible for many to download the thing; c) was luck; d) IMO was the most influential factor.

Post reply on HN