Just for fun

PJ's Blog
置顶

Reading List 2025

记录这一年的阅读足迹 📚

“如果你发现你几乎把所有的时间都花在了理论上,那就开始把一些注意力转向实际的东西;这会提高你的理论水平。” —— 高德纳

📖 目录导航


📝 清单

📚 Books(书籍)

书名 作者 主题
设计数据密集型应用(第二版) Martin Kleppmann 分布式系统
深入理解计算机系统 (CSAPP) Bryant & O’Hallaron 计算机基础
Crafting Interpreters Robert Nystrom 编程语言

📄 Papers(论文/资源)

题目 来源 主题
Ilya Sutskever’s Top 30 Reading List Aman.ai AI/ML
MIT 6.824: Distributed Systems MIT 分布式系统
MIT 6.081: Operating System Engineering MIT PDOS Lab 操作系统
What Every Computer Scientist Should Know About Floating-Point Arithmetic David Goldberg 数值计算
Memory Models Series Russ Cox 并发编程
Optimizing software in C++ RAgner Fog 程序优化
Algorithms for Modern Hardware Sergey Slotin 程序优化

📝 Blogs(博客文章)

标题 作者/来源 主题
C++ 内存管理 萧叶轩 内存管理
初级程序员也能快速深入理解 C++ 飘水 C++ 基础
C++26 Will Include Compile-Time Reflection Daniel Lemire C++ 新特性
Reflection-Based JSON in C++ at Gigabytes per Second Daniel Lemire C++ 优化
The Go Memory Model Go 官方 内存模型
Hardware Memory Model (中文) 萧叶轩 硬件内存
Programming Memory Models (中文) 萧叶轩 编程模型
C++ Coroutine 系列 萧叶轩 C++ 协程
Coroutine Theory & Practice Lewis Baker C++ 协程
Jsonptr: Memory-Safe, Zero-Allocation JSON Decoder Nigel Tao JSON 解析
RocksDB Architecture Guide RocksDB 架构设计
Numerical Computation Guide Oracle 数值计算
Performance Hints Abseil 性能优化

持续更新中… 最后更新: 2025-12-20

缺失的边:从 Lamport Happens-Before 到结构化并发

happens-before:一个跨越分布式系统与并发编程的核心概念

并发编程的复杂性往往源于对执行顺序的误解。本文通过事件图(Event Graph)视角,重新审视 Lamport 提出的 Happens-Before 原则,并探讨其在现代语言内存模型与结构化并发中的演进。

Singleton

一些关于单例的点

Some notes about Singleton pattern in C++.

LevelDB Table format

The Design of LevelDB's Table Format

Overview of WriteBatch layout and record encoding for LevelDB table operations.

LevelDB SSTable

Detailed Design and Implementation of SSTable Format in Prism

SSTable file layout, block structure, and encoding details used by LevelDB.

LevelDB Memformat

The Design of LevelDB's Memtable Format

MemTable design: SkipList-based in-memory buffer, arena allocation, and encoded entry layout.

LevelDB Logformat

The Design of LevelDB's Log Format

Structure of LevelDB's write-ahead log blocks and record fragmentation.

LevelDB DBformat

The Design of LevelDB's Database Format

InternalKey and LookupKey formats, value types, sequence numbers, and comparator rules in LevelDB.