学 C 语言学到指针还行,一碰到进程、线程、锁这些操作系统的东西,课本讲得干巴巴,网上资料又东一块西一块。
伊利诺伊大学的系统编程课 CS 341,把自己用的课本开源了,就叫 Coursebook。
内容从 C 语言入门讲起,一路讲到进程、内存分配、线程、同步与死锁、进程间通信、调度、网络、文件系统、信号和安全,代码全部用 C 写。
前身是一份公开的 wiki 教材,现在补上了引用、脚注和术语表,书后还附了复习题。
GitHub:
网页版可以直接在线读,也有 PDF 和 EPUB,下载下来放进阅读器里看。
先学过一门编程语言、对汇编有点了解再看会比较顺。正在学操作系统、或者想补补底层功底的朋友,拿它当教材挺合适。