Materials

Copied from Section 1:

For learning about operating systems, We recommend coming to class and following the class notes (which will be made available below).

You should buy these two books. They are awesome and useful. The first is about C programming, written by the guys who invented it. Awesome. The second is about programming in the Unix environment, and is the absolute bible. Buy both and thank me later.

Also useful is Expert C Programming by Peter Van der Linden; I really like this book a lot, but can't make you buy too many, can I?

You might also read this short, free, and incomplete introduction to the C programming environment, available for your viewing convenience here.

It would also be useful to figure out how to use the debugger (gdb), makefiles (with a program called, well, make), and a few other tools. See if you can find some documentation on these; of course, we'll be talking about them in class too.

Finally, some of you have asked about an official OS text book. Unfortunately, I have yet to locate one I really like. However, if you like to read and want a different perspective on operating systems than that provided in the class, any of the following books would be a reasonable choice: (1) (2) (3) (4) (5) . Perhaps even more interesting but perhaps more from a historical perspective, although a bit specific/detailed: (1) and (2) .

The more you read, the better off you will be (this is true in life too).