第一部分:操作系统的基石与边界重构

1. The UNIX Time-Sharing System (SOSP 1973)

2. The Design and Implementation of a Log-Structured File System (SOSP 1991)

3. The Multikernel: A new OS architecture for scalable multicore systems (SOSP 2009)


第二部分:隔离、虚拟化与安全验证

4. Xen and the Art of Virtualization (SOSP 2003)

5. seL4: Formal Verification of an OS Kernel (SOSP 2009)

6. Komodo: Using verification to disentangle secure-enclave hardware from software (SOSP 2017)


第三部分:从逻辑时钟到分布式共识

7. Spanner: Google's Globally-Distributed Database (OSDI 2012)


第四部分:语言安全与新型系统架构

8. Redleaf: Isolation and Communication in a Safe Operating System (OSDI 2020)

[[RedLeaf 一个安全操作系统中的隔离与通信]]


第五部分:AI 基础设施与底层优化的碰撞

9. vLLM: Easy, Fast, and Cheap LLM Serving with PagedAttention (SOSP 2023)

10. MapReduce: Simplified Data Processing on Large Clusters (OSDI 2004)


这几年看的 paper 不少,但我觉得真正矫正我 first principle 的还是真就那几个 Turing Award 的老 paper,Dijkstra 和 Knuth 对编程的思考; Lamport 的 existence of refinement mapping, Codd 的 relational model, Jim Gray 的 transactions 等等。人就是很微妙,看了很多东西看不懂,觉得懂了就变成 small explanation 了,也就是“压缩即智能”吧。


1. Edsger W. Dijkstra: 编程的艺术与逻辑

Dijkstra 不仅仅发明了算法,他更确立了“编程是数学分支”的思想。

2. Donald Knuth: 算法的严谨性

Knuth 矫正的是我们对“程序效率”和“文学化表达”的认知。

3. Leslie Lamport: 分布式系统的真理

Lamport 的工作是所有分布式共识和状态机理论的源头。

4. Edgar F. Codd: 关系模型的奠基

Codd 将数据从繁琐的物理存储逻辑(如指针、链表)中解放出来。

5. Jim Gray: 事务的鲁棒性

Jim Gray 定义了现代系统的“可靠性”语义。


这些材料通常不关注具体的工程实现(Implementation),而是关注表达能力的边界系统复杂度的管理以及软硬件的契约


1. 表达能力与计算本质:Alan Turing & Alonzo Church

如果你想理解为什么 Rust 的类型系统能做这么多事,或者为什么函数式编程不是异类,必须回到源头。

2. 系统设计的“奥卡姆剃刀”:Saltzer & Schroeder

在安全和系统架构领域,这两位制定的原则至今没有被超越。

3. 操作系统与并发的元模型:Brinch Hansen & Hoare

如果你对多线程并发感到痛苦,那是由于你还没看到这些“元抽象”。

4. 复杂性管理的哲学:Brooks & Parnas

这两位教导我们如何处理软件工程中那些“看不见”的熵。