To read all comments associated with this story, please click here.
Luckily, Mr. Tanenbaum's book is not the only one available to me. Operating System Concepts has been a much better reference, and compares more concepts in cleaner language, instead of presenting the-One-True-Design.
I dare hope that it's not that I'm not trying hard enough; this is what I've wanted to do since I was a little kid, and it's what I'm paying $50K/year to get a degree for!
You're not going to learn out to write an OS from studying the Linux source code. You might learn a lot about how commercial systems are architectured, but you're not going to be able to write one.
MINIX is a nice OS from a pedagogical point of view. It teaches the important stuff (dealing with interrupts, dealing with devices, creating threads, setting up userspace, I/O, virtual memory, etc) without obscuring the concepts with optimizations.
...Minix 3 is (microkernel) has nothing to do with any serious commercial operating system...
What about QNX? QNX is a very powerful, stable, real-time OS that is used all around the world for mission critical systems and it's a microkernel.
SymbianOS? Another mircokernel, and one that powers 2/3 of all mobile devices used today.
I don't think it's quite fair to say that you can learn nothing about and OS's structure from Minix.






Member since:
2007-02-22
It's interesting to see it described here as a 'complete, stable, secure desktop operating system for everyday use.' As against that, in my copy of the author's book The Minix Book: Operating Systems, Design and Implementation, the author himself described Minix 3 as having been created mainly to teach the fundamentals of operating system design, which meant that design choices were made that sacrificed speed and stability but kept the code legible and understandable for the student. Having it here on live CD, and looking at the complete lack of software for it, I'd have to say it's closer to the latter.
Unfortunately, it's not that good as a teaching OS either. I haven't been able to learn much except some of the most fundamental theories from the book, as the sort of operating system that Minix 3 is (microkernel) has nothing to do with any serious commercial operating system, so I have learned nothing about how actual operating systems are structured.
Edited 2007-03-01 23:12