It is not a problem unique to academia. Anytime you prioritize the perspective of your own expertise, you have this problem.
As you said, he may have been right about where things “ought” to go. In that way, it is the same as an engineer telling you that they know where their field will go in 10 years. They are often wrong when they forget that technology is not the only force at work.
Why Linux won is good history to know but few of the reasons will advance OS research.
He was probably not wrong that microkernels as the future in that most new OS projects will use that design at some point. Just like most dev will be in memory safe languages at some point. Look at Redox, using both a microkernel and Rust.
The trick is that recognizing that “at some point” may not be now even if you are right. As Keynes said about investing (also future prediction), “the market can stay irrational longer than you can stay solvent”.
Also note that the design of Linux itself changed after this debate as well. The system of pluggable modules is not a microkernel but it is not exactly a true monolithic kernel either. We do mot “compile in” all our device drivers. Also, the FUSE user mode filesystem looks pretty microkernel-like to me.
Microkernels have a lot of advantages. Enough that Andrew T thought they were the obvious choice. So did HURD. They are also harder to implement. In this era for easy virtual machines, containers, and the cloud, I think it is a lot easier. It was a lot harder when Linux was being written in-place of 386 PC hardware. More importantly, microkernels are a bit less efficient. Again, that does not matter quite as much today in many cases. The kernel itself is only using a tiny fraction of your memory and CPU capacity. In the era of 386 hardware with while digit megabytes of RAM, it still mattered a lot.
Remember that MINIX, the microkernel being defended, got installed in very Intel CPU for years. There may have been more instances of Minix than there was of Linux.
Also, I do not think that Linux “won” because of technology. BSD already existed when Linux was born and for years BSD was clearly technically superior. Linux got the momentum and the mindshare. Why? I think the AT&T lawsuit was the primary factor. A lot of other proper credit the GPL. Few would argue it was because Linux was better back then.
Why Linux won is not going to advance OS research. Companies kirk Microsoft and IBM have big “research” arms that produce “working” tech all the time that showcase ideas that are “the future”. It is not like these companies frequently throw-out their successful products every time this happens. But ideas do trickle in. And as I said above, even Linux has borrowed from the “losing” ideas showcased in “Linux is obsolete”.
> Also note that the design of Linux itself changed after this debate as well. The system of pluggable modules is not a microkernel but it is not exactly a true monolithic kernel either. We do mot “compile in” all our device drivers. Also, the FUSE user mode filesystem looks pretty microkernel-like to me.
In the 1990's the XFree86 X11 server ran as root as a userspace process. I remember people wanting to move graphics into the kernel and Linus said something like "You all think microkernels are better with userspace device drivers, well XFree86 is a user space device driver."
We used to have 10 different X servers for each graphics chip and a symlink from X to the one for the card you have installed.
Since then we got DRI in the kernel for graphics but it was a debate for a while.
GGI was another effort to put graphics into the kernel. There are some quotes from Linus in this article.
As you said, he may have been right about where things “ought” to go. In that way, it is the same as an engineer telling you that they know where their field will go in 10 years. They are often wrong when they forget that technology is not the only force at work.
Why Linux won is good history to know but few of the reasons will advance OS research.
He was probably not wrong that microkernels as the future in that most new OS projects will use that design at some point. Just like most dev will be in memory safe languages at some point. Look at Redox, using both a microkernel and Rust.
The trick is that recognizing that “at some point” may not be now even if you are right. As Keynes said about investing (also future prediction), “the market can stay irrational longer than you can stay solvent”.
Also note that the design of Linux itself changed after this debate as well. The system of pluggable modules is not a microkernel but it is not exactly a true monolithic kernel either. We do mot “compile in” all our device drivers. Also, the FUSE user mode filesystem looks pretty microkernel-like to me.
Microkernels have a lot of advantages. Enough that Andrew T thought they were the obvious choice. So did HURD. They are also harder to implement. In this era for easy virtual machines, containers, and the cloud, I think it is a lot easier. It was a lot harder when Linux was being written in-place of 386 PC hardware. More importantly, microkernels are a bit less efficient. Again, that does not matter quite as much today in many cases. The kernel itself is only using a tiny fraction of your memory and CPU capacity. In the era of 386 hardware with while digit megabytes of RAM, it still mattered a lot.
Remember that MINIX, the microkernel being defended, got installed in very Intel CPU for years. There may have been more instances of Minix than there was of Linux.
Also, I do not think that Linux “won” because of technology. BSD already existed when Linux was born and for years BSD was clearly technically superior. Linux got the momentum and the mindshare. Why? I think the AT&T lawsuit was the primary factor. A lot of other proper credit the GPL. Few would argue it was because Linux was better back then.
Why Linux won is not going to advance OS research. Companies kirk Microsoft and IBM have big “research” arms that produce “working” tech all the time that showcase ideas that are “the future”. It is not like these companies frequently throw-out their successful products every time this happens. But ideas do trickle in. And as I said above, even Linux has borrowed from the “losing” ideas showcased in “Linux is obsolete”.