3 ms·
I was under the impression that Minix was created and used for this kind of thing. Is there something about Minix that makes it unsuitable today's classrooms?
by RexRollman 15y ago
I was under the impression that Minix was created and used for this kind of thing. Is there something about Minix that makes it unsuitable today's classrooms?
- mhd 15y agoI guess it depends on what you want to use as your textbook, Tanenbaum's books or Lions' Commentary.
- ghshephard 15y agoA suitably motivated individual might reach out to the various accredited institutions, try and track down one of the Cmpt. Sci Profs who teaches the "Intro to Operating Systems" courses, and find out A) Which Textbook they Use. B) Which training OS system they use. C) Which language they implement their OS in. (ANSI C is likely to be popular) Or, they could be lazy, and hope that this HN thread turns out to be a representative sample of the Textbooks/Operating Systems in use.
- icebraining 15y agoWell, Minix has a microkernel architecture, unlike this which seems to be monolith (and probably simpler to understand).
- derleth 15y agoMinix is a microkernel design, so it's of limited use in understanding how modern OSes work.
- rbanffy 15y agoIt would be fair to say current operating systems.
- derleth 15y agoMicrokernels have been the wave of the future for longer than some of the most popular OSes have been around, namely Windows NT (not just Windows 7, but the whole NT design), Mac OS X (NeXTStep too, for that matter), and Linux (but, admittedly, not Unix). If I may prognosticate, stripped-down monolithic OSes running on hypervisors are the wave of the future. Look at VM/CMS for an extreme example: CMS is about as complex as MS-DOS, being a single-user single-tasking OS with no memory protection or security model. VM is the hypervisor. Together, they date to about 1968, or a little before if you include research systems.
- rbanffy 15y agoThere are a lot of parallels between VM/CMS and a microkernel with a service built specifically to host an application. They are very different beasts at their core (a microkernel is built to connect services and a hypervisor to segregate them), but they solve similar problems in sometimes similar ways.
- derleth 15y agoYou seem to be talking about Service Virtual Machines: http://www.garlic.com/~lynn/2010k.html#25 http://www.garlic.com/~lynn/2010k.html#25 A Service VM is one where an application runs directly on the 'bare metal' provided by the VM (that is, the whole point of a VM is to multiplex the hardware; it provides few or no abstractions as such). There's no guest OS as you'd think of one. This idea also exists in exokernel designs: http://c2.com/cgi/wiki?ExoKernel http://c2.com/cgi/wiki?ExoKernel http://pdos.csail.mit.edu/exo.html http://pdos.csail.mit.edu/exo.html In an exokernel, the guest OS is reduced to a library, like libc, which is (ideally) optimized for the specific application: Emacs has its own, Apache has its own, and so on. It's a half-step removed from the Service VM idea in that the applications themselves would still get to use the OS abstractions, unaware that the OS is basically gone.