views:

101

answers:

3

Hello guys,

I would like to learn about linux/Unix kernel programming for scalable multi processors (smps). I found this book UNIX(R) Systems for Modern Architectures http://www.amazon.com/UNIX-Systems-Modern-Architectures-Multiprocessing/dp/0201633388/ref=pd_rhf_p_t_3 . Is there any other good resources or a better book since its released in 1994. Thank you very much in advance.

Thanks & Regards,

Mousey.

+1  A: 

Definitely buy this excellent book! You will get thorough introduction into:

  • caches, their types, and how to deal with them in the kernel,
  • synchronization and what hardware primitives are behind it,
  • general kernel designs as related to concurrency (cli/sti, giant lock, cli+spinlock, etc.)

The book is general enough not to be out of date by now. The only thing I don't remember mentioned there is NUMA, but I don't think there are any good published texts on this subjects yet except for maybe Gorman's Linux memman paper (somebody correct me if I'm wrong here).

I think the book was really worth the money.

Nikolai N Fetissov
I ordered it today. I will read and post a review
mousey
A: 

For Linux, Rusty's Unreliable Guide to Kernel Locking is a must-read. After that, you can also read the file Documentation/spinlocks.txt located in the Linux kernel sources.

ninjalj
A: 

Understanding the Linux Kernel is a great book about how the Linux kernel is built, it describes Linux 2.2, 2.4 and 2.6 (Third Edition).

If you want to make drivers, there's Linux Device Drivers , and is also a reference about how Linux is built.

Matias Valdenegro