[HN Gopher] Andrew S. Tanenbaum Receives ACM Software System Award
___________________________________________________________________
Andrew S. Tanenbaum Receives ACM Software System Award
Author : JacobAldridge
Score : 219 points
Date : 2024-06-22 14:12 UTC (8 hours ago)
(HTM) web link (vu.nl)
(TXT) w3m dump (vu.nl)
| SkyMarshal wrote:
| Well-deserved, congrats Andrew. I still have his distributed
| systems textbooks from way back when, and still wish Minix had
| won and its microkernel model had become the basis of the FOSS
| *nix ecosystem.
|
| Also in case anyone is not aware, Andrew runs the election
| science blog Electoral Vote [1], using an electoral college poll
| model to analyze and predict US elections. One of the better US
| political sites out there.
|
| [1]:https://www.electoral-vote.com/evp2024/Info/welcome.html
| fermigier wrote:
| I read Operating Systems: Design and Implementation in 1988 or
| 1989, and it was an insightful and pleasing experience. I only
| wished, at the time, that there was some Unix-like OS that was
| "free" (for some intuitive value of the word "free", rather than
| the formal definition, which I hadn't heard of yet at the time).
| This could have been Minix.
| trollied wrote:
| It was one of my degree course books. Thoroughly enjoyed it!
| andyjohnson0 wrote:
| One of the best textbooks I had to read for my degree, back in
| the 80s. The appendix containg the Minix source code was my
| first exposure to a large body of well-written C code.
| michh wrote:
| Not to mention MINIX is hidden away in almost every modern Intel
| CPU as part of its Management Engine. This little known fact
| makes it one of the most widely distributed operating systems.
| Rochus wrote:
| Why did they use Minix and not e.g. L4 or sel4?
|
| Which version of Minix did they actually use? There is Minix
| v3.1 (released in 2005 with the book), 3.2 (released in 2012)
| and 3.3 (released in 2014).
| actionfromafar wrote:
| Or Minix 2?
| michh wrote:
| As to why, no idea. I guess some engineer was just familiar
| with it from their undergrad days like the rest of us.
|
| And which version, I know it's MINIX 3 but beyond that? No
| idea. They probably heavily modified it and as Minix is not
| GPL, Intel never published it. Based on the timelines it's
| likely 3.1 as the ME platform has heen around since
| approximately 2007 iirc.
| Rochus wrote:
| > _it's likely 3.1 as the ME platform has heen around since
| approximately 2007_
|
| Then I guess it's one of the 3.1.3x versions released in
| 2007 (see https://github.com/Stichting-MINIX-Research-
| Foundation/minix...), or maybe 3.1.2 from 2006, depending
| how long hey had to implement the ME.
| looperhacks wrote:
| The original L4 (I believe) wasn't commercially available und
| sel4 is GPL licensed. Minix has a BSD license, so maybe
| that's why
| LeFantome wrote:
| 100% because of the license
| Rochus wrote:
| The original L4 was written in assembler and replaced by
| different other implementations long before the ME platform
| was developed. Pistachio was in development around that
| time and available under BSD.
| snvzz wrote:
| Besides what others pointed out, Minix3 is engineered for
| fault tolerance foremost. seL4 has different goals.
| sillywalk wrote:
| AIUI Sel4 is just a kernel, so adding all the "management
| engine crap" - networking stacks, drivers etc. would be a lot
| of work. Minix came with 'batteries' included.
| ivankolev wrote:
| Still have a cd-rom with copy of minix3, from when he had a talk
| in my university. His books on OS and Networking are very
| approachable and fun read!
| alphabeta2024 wrote:
| I was failing badly in my computer architecture courses. Received
| a 5% score in one of the mid-terms. Switched from the recommended
| book to Andrew's book and did nothing apart from read it everyday
| for 2 hours. Received 100% in the final. Such an amazingly
| approachable book. :-)
| blast wrote:
| Wow. Which book?
| kenniskrag wrote:
| One of these: https://media.pearsoncmg.com/bc/abp/cs-
| resources/products/se...
| emporas wrote:
| I have read Tanenbaum's book twice. Really great book. Very dense
| in information but enjoyable as well. That and the Common Lisp
| Reference Manual were at some point my favorite CS readings. I
| was reading them in printed form.
| alex_suzuki wrote:
| Which one? He has written more than one great book. :-)
| emporas wrote:
| Yeah i didn't specify, i think it is the "Modern Operating
| Systems". I read it in Greek and I don't remember the title,
| maybe the title was translated a little bit different. It was
| not the Minix book, i have not read that unfortunately.
|
| Now however, i am sold on the idea of the Lisp Machine.
| Hopefully some day a lisp OS and hardware will be a viable
| way to use a computer.
| alex_suzuki wrote:
| His book "Computer Networks" was one of my favourites in my
| CompSci study days. Many years later I gave lectures on
| Distributed Systems at a business school and based the material
| on the book. Still feels relevant, even today.
| globular-toast wrote:
| This was my favourite textbook of my entire undergrad CS
| studies. I still have it on my shelf to this day. I've never
| gone deep into networking but the broad knowledge has stayed
| with me and comes in useful again and again. I would say it
| sets me apart from many other engineers.
| fancyfredbot wrote:
| This is a richly deserved award for a great educator who makes
| computer science both accessible and enjoyable.
|
| Structures computer organisation is supposed to be a textbook but
| it's written so well I found myself reading it cover to cover
| like a thriller.
|
| You won't find many people saying that about Knuth for example
| (not to say anything against Knuth who is amazing in his own
| way).
| GTP wrote:
| It's funny to see how they highlight that it inspired Linux,
| ehile Tanenbaum heavily criticized it for not being a microkernel
| :D
| LeFantome wrote:
| Well, it "inspired" Linux because Linus was unhappy with Minix.
| Linus wanted UNIX and Minix was not what he was looking for. I
| don't think emulating Minix itself was ever his goal. He chose
| the Minix file system originally but this was just pragmatic as
| that is what his drive was formatted with.
|
| The earliest versions of Linux were written on Minix though.
| Credit where credit is due.
|
| Interestingly, Linus was unaware of BSD. He has said that, if
| he had known about it, he may never have written Linux to begin
| with.
| gpvos wrote:
| When Linux was written BSD was still encumbered by non-BSD-
| licensed AT&T code. That changed a year or so later.
| GTP wrote:
| IIRC the very first installations of Linix started with Minix
| as a base, that then was "patched" into Linux. So it was more
| than just the filesystem. But yes, Torvalds wasn't happy with
| Minix, and Tanenbaum wasn't happy with Linux.
| latenightcoding wrote:
| is MINIX abandonware now? Many years ago I tried to install the
| release that works (or comes bundled) with a light window manager
| but it was not trivial and it looked pretty abandoned even back
| then.
| boricj wrote:
| MINIX3's development has stalled years ago.
|
| Basically, around MINIX 3.2.0 (just before I stated
| contributing) the OS ditched its homegrown userland and adopted
| the NetBSD source tree + pkgsrc. While that boosted the
| software compatibility of MINIX3 in the short term, the
| maintenance burden of keeping up with upstream with such a
| large diff proved unsustainable in the long term, especially
| after the grant money dried up.
|
| In hindsight, my opinion is that MINIX3 should've gone with
| NetBSD binary compatibility. The NetBSD syscall table would've
| been a far slower moving target to keep up with than the entire
| NetBSD source tree.
|
| The OS also had a significant amount of tech debt, especially
| in the microkernel which was uniprocessor and 32-bit only, as
| well as outdated hardware support which meant nobody was daily-
| driving it anymore. It also was an aging design: while the
| system was divided up into user-mode servers with message-based
| communication, you couldn't containerize a process by spawning
| a parallel userland ecosystem for example because it wasn't
| capability-based or namespaceable.
|
| It's too bad really, because the base system had really
| impressive capabilities. It could transparently survive crashes
| of stateless drivers, even when stress-testing it by injecting
| faults into the drivers at runtime. You could live-update the
| various system services at runtime without losing state or
| impacting clients. Some really good papers came out of MINIX3
| [1].
|
| I've ranted more in detail before, both on HN [2] as well on
| Google Groups [3]. I do not fault the maintainers for the
| current state of affairs because keeping up the MINIX3 userland
| against modern software standards was a major maintenance
| burden, so adopting NetBSD's one way or another was inevitable.
| At any rate, there are other micro-kernel based operating
| systems [4], some under active development, so MINIX's spirit
| lives on.
|
| [1] https://wiki.minix3.org/doku.php?id=publications
|
| [2] https://news.ycombinator.com/item?id=34916261
|
| [3]
| https://groups.google.com/g/minix3/c/qUdPZ0ansVw/m/7LuOv0YOA...
|
| [4] http://www.microkernel.info/
| LeFantome wrote:
| Not even a commit in years. Yes, I would say it is dead.
| electrodank wrote:
| I see ASTs books, in particular the hands-on Minix ones, as
| sitting on the same "plane" as the philosophy espoused in The
| Night Watch paper. Ultimately the paper is about a level of
| comfort with reality that is at it's core rooted in familiarity
| with rather than ignorance due to abstractions, and having
| learned fearlessness rather than helplessness. While it is highly
| unlikely you will be having a debugging session that has you
| executing kernel-level code alongside having an
| oscilloscope/logic probe hooked up to the pins of a processor
| chip to monitor data lines (though we all know someone who does
| this without a second thought), having this level of knowledge
| and comfort with being ever so slightly closer to the silicone,
| the data sheet of the processor somewhere near by, the memory
| segmentation modes not too alien of a concept, is a great boon to
| a software developer. It is a leap that I think everyone should
| try just once, and with it, abolish any notion of mental barriers
| that prevent one from understanding how things really work.
| ginko wrote:
| It's kind of sad systems research pretty much stopped at this
| point. I really was hoping that by 2024 I'd be running a
| distributed operating system where processes could be be freely
| migrated between my phone, desktop, laptop and NAS without too
| much of a hitch.
| fooker wrote:
| The research has not stalled at all, the incentive to make
| consumer devices has because of the capture by tech giants. If
| someone wanted to implement an interesting idea like this, they
| would be harshly judged for not being able to compete with
| pixels and iphones for the rest of the stack. See Rabbit for
| example.
|
| What you are describing is the bread and butter of modern
| systems research and _all_ the large cloud providers internally
| implement this kind of thing.
| rossant wrote:
| He wrote great books. I am ashamed to admit his OS book served as
| a monitor support on my desk for some time.
| thr0waway001 wrote:
| Man, his Computer Networks books were dense but they had a lot of
| good stuff in them. They also had really good and fun looking
| covers.
| santiagobasulto wrote:
| I'll never forget this. I was listening to a talk by Reed
| Hastings (Netflix Founder/CEO) at (I think was) Stanford. He was
| explaining how he came up with the idea of Netflix. A student
| asked: "when did you realize you had to switch to the internet".
| At which he replied: "that was the idea from the beginning. We
| knew networks were going to become what they are today. Look,
| there's a saying in a CS textbook that says: 'never underestimate
| the bandwidth of a truck full of tapes over the interstate'. We
| knew we had to ship the DVDs first until at some point the
| network would reach our desired level".
|
| While I was watching that i said: "DUDE! I remember that quote
| (and that illustration)". Went to my text book and there it was.
| In Tanenbaum's networking textbook.
|
| Aside from the anecdote, this guy has had a huge influence in the
| whole industry (not even mentioning the Kernel debates).
___________________________________________________________________
(page generated 2024-06-22 23:00 UTC)