hubertf's NetBSD Blog
Send interesting links to hubert at feyrer dot de!
[20051121] Reading up on Operating Systems
I was asked about good literature on Symmetrical Multi-Processing (SMP). While I do have some minor ideas on that, it's not really introductory level Operating Systems lecture. As such, I'd like to give my personal recommendation for diving into the general topic of Operating Systems here, and here it is:

Four easy steps into Operating Systems:

  1. Andrew Tanenbaum: "Modern Operating Systems", for theory and basic principles on processes, memory management, synchronisation, file systems, etc.

    There are alternative authors like Silberschatz on this level, I tend to like Tanenbaum best.

  2. Various implementation discussions that are available, e.g.
    • Marco Cesati and Daniel P. Bovet: "Understanding the Linux Kernel"
    • Marshall Kirk McKusick: "Design and Implementation of the 4.4BSD Operating System"
    • Benny Goodheart and Jamex Cox: "The Magic Garden Explained: The Internals of Unix System V Release 4: An Open Systems Design"
    ... plus assorted digging in your NetBSD, OpenSolaris, Linux or whatever operating source code.

  3. Uresh Vahalia: "UNIX Internals: The New Frontiers", for advanced theory on topics like synchronisation in parallel systems, advanced memory management, etc.

  4. Jim Mauro and Richard McDougal: "Solaris Internals", for a discussion of all the advanced features and their implementation.
The general approach here is: theory, practice, theory, practice.

There may be other good books, maybe I forgot about them, maybe I don't know - feel free to remind me!

[Tags: , ]

Disclaimer: All opinion expressed here is purely my own. No responsibility is taken for anything.

Access count: 24529635
Copyright (c) Hubert Feyrer