Books Or Web Sites On O/S Theory? 4
M asks: "I've recently been trying to think lots about O/S's and UI's and what would make a good one. But rather than reinventing the wheel I thought I'd start by reading up on what clever people before me have thought. So does anyone know of a definitive guide to O/S theory?"
Tanenbaum (Score:2)
Of course, since then, a lot of superior and much more interesting ideas on the subject have shown up. By now, a widely agreed-upon goal in the community is to design and develop a reflective, fine-grained OS with a natural and flexible interface, including complete integration with a very high-level language. In particular, the Tunes project [tunes.org] (led by my pal Faré [slashdot.org]) has set out to do precisely this; however, progress is slow to come, and at least half a dozen side projects for "Tunes--"-like systems have popped up, notably Brian Rice's Arrow and Slate, and Tom Novelli's Forth-based Retro. (All of these are buried somewhere in the Tunes server.)
Tunes' Review Subproject has also managed to accumulate a rather comprehensive list of existing, dead and future OSs, as well as critiques thereof; a previous poster has already posted the link.
Some more ... (Score:1)
If you are interested in Linux, the book "Linux Kernel Internals" published by Addison Wesley might be a good point to start with.
A good 'hands-on' book (Score:1)
Operating System Design: The XINU Approach by Douglas Comer (from Prentice Hall [prenhall.com]) was a really good book for me. It concentrates more on building a working operating system than on theoretical issues, which makes it a lot easier to read than some of the more academic texts. (Tenanbaum, Silberschatz and Galvin, etc.) There used to be several versions of the book, one each for the PDP-11, IBM-PC, and Macintosh, but you may not be able to find anything other than the IBM-PC version these days.
I also have an old copy of The Design and Implementation of the 4.3BSD UNIX Operating System by Leffler, McKusick, Karels and Quarterman, from Addison-Wesley [aw.com], which was a pretty thorough coverage of unix concepts when it was written. There is likely to be a more up-to-date contemporary edition. [aw.com] (and you can probably find a small army of similar books, including the excelent Linux Kernel Internals [aw.com] by Beck, Böhme, Dziadzka, et. al. also from Addison-Wesley) Finally, you may want to pick up a copy of the anotated unix source code Lions' Commentary on UNIX 6th Edition, with Source Code [peer-to-peer.com] by John Lions from Peer-to-Peer Communications. [peer-to-peer.com]
OS and UI? (Score:1)
the previous posts cover all the in-depth technical books on OS design which I've come across in my travels.
However, the original question asked about something else as well... user interfaces.
In *nix land, OS design and UI design are completely different planets. As far as I could gather from reading "Showstopper", this is not quite so true in Windows land.
There are probably a lot more starting points for UI design than kernel architecture; the topic is somewhat more accessible. Of course, having said that I can't recommend anything brilliant, but perhaps someone else can.