Jump to ratings and reviews
Rate this book

Unix Systems for Modern Architectures: Symmetric Multiprocessing and Caching for Kernel Programmers

Rate this book
Any UNIX programmer using the latest workstations or super minicomputers from vendors such as Sun, Silicon Graphics (SGI), AT&T, Amdahl, IBM, Apple, Compaq, Mentor Graphics, and Thinking Machines needs this book to optimize his/her job performance. This book teaches how these architectures operate using clear, comprehensible examples to explain the concepts, and provides a good reference for people already familiar with the basic concepts.

432 pages, Paperback

First published January 1, 1994

14 people are currently reading
168 people want to read

About the author

Curt Schimmel

3 books3 followers

Ratings & Reviews

What do you think?
Rate this book

Friends & Following

Create a free account to discover what your friends think of this book!

Community Reviews

5 stars
22 (70%)
4 stars
6 (19%)
3 stars
2 (6%)
2 stars
1 (3%)
1 star
0 (0%)
Displaying 1 - 3 of 3 reviews
Profile Image for Steve.
79 reviews24 followers
February 20, 2013
Where 'modern' in 1994 means CPUs with caches, and SMP which was just on the horizon in the early 90s.

The book takes a hands-on approach showing lots of code and is not afraid of overloading you with details.

It has one of the most detailed explanations I've seen of cache lines and associativity. I skimmed the chapters on virtual caches as I don't think any systems I've run across use that architecture.

The level of detail continued with the next section on building multi-processor aware kernels, starting with a simple master-slave approach, then moving to spin-locked, and semaphored kernels, explaining pros and cons of each style. One thing only briefly mentioned is that a locking kernel on a multi-processor system (or even a uni-processor system) can be subject to deadlocks, the advice was: "be careful"

Finally, the last section combines your new-found knowledge explaining how to keep caches coherent on multi-processor kernels, answering the question "if your lock is in a cache line, do you really own it?"

For a book that's almost 20 years old, I was surprised at how relevant all the ideas still are. On these topics, I can't think of another modern published book that's so detailed and with code that looks like it could run if you stuffed it into your hobby OS.

299 reviews8 followers
September 1, 2007
This book covered "advanced programming" topics when it was written 14 years ago, but those topics are now everyday concerns. Anybody working on systems these days has to worry about multiple processors and caches. This book appears to still be the best reference on the software implications of processor caches and multiple processors for an OS kernel.

The prose will win no awards, and most of the potential readers have already covered a lot of the topics, but they provided a good review and, again, the system software implications aren't covered anywhere else to the best of my knowledge.

If you like OS kernels, this book is for you.
Profile Image for Rahul Iyer.
7 reviews1 follower
February 6, 2013
An excellent treatise on writing multiprocessor systems. Concepts like cache coherence (including barriers) and concurrency (bus locking, atomic operations) are explained in a thorough yet approachable fashion.
Displaying 1 - 3 of 3 reviews

Can't find what you're looking for?

Get help and learn more about the design.