Andrew Tanenbaum honored for pioneering MINIX, the OS hiding in a lot of computers
- Reference: 1719325871
- News link: https://www.theregister.co.uk/2024/06/25/tanenbaum_minix_award/
- Source link:
Dr Andrew S Tanenbaum – often known as "ast" for short – has been honored in the [1]ACM Technical Awards 2023 with the Association for Computing Machinery's [2]Software System prize. The award is for his creation of the MINIX operating system. It's not as famous as the offspring it directly inspired – the Linux kernel. As well as that, though, MINIX 3 is a true FOSS microkernel OS, and as it's the software that powers the system management controller embedded in most modern Intel processors, it's exceptionally widely used.
Dr Tanenbaum is emeritus [3]professor of computer science at the Vrije Universiteit Amsterdam, but while his wife is Dutch, he's American. Indeed, US readers may be familiar with a very different aspect of his work. Twenty years ago, he created [4]Electoral-Vote.com , which aggregates US polling results and presents commentary and analysis on US governmental elections. He retired a decade ago, but remains active in several fields.
[5]
He's also well known to many OS developers for his [6]series of textbooks on OS design. Included in his seminal book [7]Operating Systems Design and Implementation [PDF] were some 12,000 lines of the source code of a Miniature Unix OS (MINIX), which he created as a working example to study. Because you could get it on floppy cheaply and its source code was available, many early internet hackers worked on the original MINIX, porting it from x86-16
sic – this was an 8086 OS] to 68000 and SPARC, and adding features. The snag is that because it was copyrighted to Prentice Hall, users couldn't distribute modified versions of MINIX. All they could share were their sets of changes, which each user had to apply themselves and then compile the result to use it.
[8]
[9]
These restrictions are one of the motivations that caused the young Linus Torvalds to start writing his own replacement kernel, and later, to license it under the GPL so that everyone could share it freely and work on it cooperatively. Dr Tanenbaum was not impressed by this fledgling kernel's monolithic design, already dated in 1991, and he started a flamewar debate entitled " [10]Linux is Obsolete " in the comp.os.minix Usenet group. For some Linux old-timers, that may be what he is most famous – or notorious – for.
(We have to note that in 2000, the older versions of MINIX were [11]re-released under the BSD licence. Now, all versions are truly free software.)
[12]
Dr Tanenbaum did follow through on his statement, though. [13]MINIX version 3 , launched in 2005, is a true microkernel Unix-like OS, while still small and simple enough to study in its entirety. Tanenbaum has both [14]written and [15]spoken about the need for simpler, more reliable OSes.
[16]Youtube Video
Although you may never have seen MINIX yourself, there's a very high probability that you've used computers running it. Whatever OS you prefer, even if you're devoted to Windows or macOS, your computer may be running MINIX 3 right now because Intel used it as the [17]operating system of its chips' integrated Management Engine . Most Intel-based computers have MINIX 3 inside.
[18]Linux geeks cheer as Arm wrestles x86
[19]It's desktop refresh season in the land of the Windowsalikes
[20]How to escape VMware's pricey clutches with Virt-v2v
[21]systemd 256.1: Now slightly less likely to delete /home
MINIX 3 is distributed under the BSD license, which permits commercial use. This means Intel is under no obligation to share its changes to the source code with the world, and it hasn't. It didn't even tell Professor Tanenbaum himself, as he noted in an [22]open letter to the company :
The only thing that would have been nice is that after the project had been finished and the chip deployed, that someone from Intel would have told me, just as a courtesy, that MINIX was now probably the most widely used operating system in the world on x86 computers. That certainly wasn't required in any way, but I think it would have been polite to give me a heads up, that's all.
Sadly, since ast retired, work on MINIX 3 slowed, and there have been no changes to [23]its source code since 2018, which is a great shame. It's a lot more amenable to study than the gigantic Linux kernel.
The FOSS world has learned a huge amount from Andy Tanenbaum, from his teaching and the materials he created, from the code he wrote… and also, about the importance of software licenses. If MINIX 1 and 2 had originally been free software, its users could have redistributed modified versions, and Linux might never have happened.
[24]
If ast had chosen a different license for MINIX 3, perhaps Intel would have had more incentive to share its work on it. For all Intel's [25]open source projects , professed [26]open source culture , and its [27]many billions in revenue , it has done nothing to help the MINIX 3 project.
Arguably, Tanenbaum's arguments for cleaner, simpler, more modular software architecture have been rebutted by the wild success of Linux, despite its "obsolete" design. But on that front, we suspect the world may yet come to learn that he knew his stuff there as well. ®
Get our [28]Tech Resources
[1] https://www.acm.org/media-center/2024/june/technical-awards-2023
[2] https://awards.acm.org/software-system
[3] https://cs.vu.nl/~ast/
[4] https://www.electoral-vote.com/
[5] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/oses&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=2&c=2ZnrpngC5P2eZjL1Iy8@mGgAAAQg&t=ct%3Dns%26unitnum%3D2%26raptor%3Dcondor%26pos%3Dtop%26test%3D0
[6] https://media.pearsoncmg.com/bc/abp/cs-resources/products/series.html#series,series=Tanenbaum
[7] https://csc-knu.github.io/sys-prog/books/Andrew%20S.%20Tanenbaum%20-%20Operating%20Systems.%20Design%20and%20Implementation.pdf
[8] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/oses&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=4&c=44ZnrpngC5P2eZjL1Iy8@mGgAAAQg&t=ct%3Dns%26unitnum%3D4%26raptor%3Dfalcon%26pos%3Dmid%26test%3D0
[9] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/oses&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=3&c=33ZnrpngC5P2eZjL1Iy8@mGgAAAQg&t=ct%3Dns%26unitnum%3D3%26raptor%3Deagle%26pos%3Dmid%26test%3D0
[10] https://www.oreilly.com/openbook/opensources/book/appa.html
[11] http://minix1.woodhull.com/faq/mxlicense.html
[12] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/oses&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=4&c=44ZnrpngC5P2eZjL1Iy8@mGgAAAQg&t=ct%3Dns%26unitnum%3D4%26raptor%3Dfalcon%26pos%3Dmid%26test%3D0
[13] http://www.minix3.org/
[14] https://www.researchgate.net/publication/2956541_Can_We_Make_Operating_Systems_Reliable_and_Secure
[15] https://www.youtube.com/watch?v=oS4UWgHtRDw
[16] https://www.youtube.com/watch?v=oS4UWgHtRDw
[17] https://www.theregister.com/2017/11/09/chipzilla_come_closer_closer_listen_dump_ime/
[18] https://www.theregister.com/2024/06/24/arm_linux_x86/
[19] https://www.theregister.com/2024/06/24/kde_cinnamon_icewm/
[20] https://www.theregister.com/2024/06/21/virtv2v_helps_you_move_vms/
[21] https://www.theregister.com/2024/06/20/systemd_2561_data_wipe_fix/
[22] https://www.cs.vu.nl/~ast/intel/
[23] https://git.minix3.org/index.cgi?p=minix.git;a=summary
[24] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/oses&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=3&c=33ZnrpngC5P2eZjL1Iy8@mGgAAAQg&t=ct%3Dns%26unitnum%3D3%26raptor%3Deagle%26pos%3Dmid%26test%3D0
[25] https://www.intel.com/content/www/us/en/developer/topic-technology/open/project-catalog.html
[26] https://www.intel.com/content/www/us/en/developer/articles/community/an-inside-look-at-open-source-culture.html
[27] https://www.theregister.com/2024/04/26/intel_q1_2024/
[28] https://whitepapers.theregister.com/
Microkernels are the future
Of course, for performance reasons, we have had to move the file-system, graphics and the web browser into the kernel.
Except for that of course we are totally committed to microkernels
Re: Microkernels are the future
Nintendo seem to find the performance of microkernels ok, both IOS on the Wii and Wii U, and Horizon on the 3DS and Switch are microkernel OSs.
Re: Microkernels are the future
As a vertically integrated company with total control over their hardware, OS, and the programs running on said OS (If you don't pay your dues to Nintendo, you don't get to release on their platform) They can make basically anything work. They just have to define what they consider acceptable performance throughout the whole stack.
That's not to take away from the fact that I think the argument against microkernels from a performance standpoint is probably the better part of a quarter-century out of date at this point mind you.
I have project in flight to reorganize our book shelves. Still on my "computing" shelf is my MINIX ring binder, and tucked away in a nook somewhere in the basement are the 1.44Mb floppies. I suspect I learned more about computing concepts playing with MINIX, and reading the source code in that binder, and the concise, logical commentary, than I have from well over two dozen courses I've taken in the years since. That ring binder of source code and commentary will remain in its place of honour.
Its about damn time *someone* gave ast some kudos
386
"many early internet hackers worked on the original MINIX, porting it from x86-16 [sic – this was an 8086 OS] to 68000 and SPARC"
The most significant work (at least in my opinion - I played a part in it) was getting a 32-bit x86 version running, and improving the system libraries to the point where gcc and emacs could run. That's what Linus built the first Linux with.
no changes to its source code since 2018, which is a great shame
Is it really? Like you say, "It's a lot more amenable to study than the gigantic Linux kernel." and this is *because* no one is going "let's add support for..."
Re: no changes to its source code since 2018, which is a great shame
Oh, _surely_ there's room for systemd?
Never mind, I'll get it myself, thanks!
Re: no changes to its source code since 2018, which is a great shame
> Never mind, I'll get it myself, thanks!
Well now what am I supposed to do with this pitchfork, flaming torch, bucket of hot tar, and bag of feathers?
Re: no changes to its source code since 2018, which is a great shame
> Well now what am I supposed to do with this pitchfork, flaming torch, bucket of hot tar, and bag of feathers?
I honestly don't know, but I'm sure Google's AI could suggest a good recipe.
Also networking
The ast book I have is 'Computer Networks', in 1st and 3rd editions. The first edition is now a museum piece, devoted to IBM System Network Architecture and to DECnet. The Arpanet is an up and coming thing in many non-commercial sites.
Tanenbaum's arguments for cleaner, simpler, more modular software architecture have been rebutted by the wild success of Linux
It seems that all OS become horrible big bloated blobs for one reason or another. The original NT kernel was supposed to follow this modular goal to achieve security and reliability, but quickly ended up with huge graphics sub-systems included for speed (number of CPU context switches otherwise). Other micro kernels exist and have had some commercial success, but most people need all sorts of hardware and software support so they end up tied to Windows or Linux, both of which have issues due to their approaches.
However, a beer for AST =>