Skip to content

系统编程 ​

这是卷八的系统编程子领域,主线是咱们定下的两大阵营并行:同一个主题,Linux 侧用 POSIX 讲了一遍,Windows 侧跟着用 Win32 也讲了一遍。每个主题的文末都配了“另一侧怎么看”的小节,专门把两边的概念互相接上。真实世界里您往往两边都要写,而 API 会过时、概念不会。

咱们建议您从总纲读起,对全卷的布局有个数,再去思维基石把跨阵营的两件大事办好:资源怎么保证不漏,错误怎么保证报得准。两侧的篇章同时从文件 I/O 起步,Linux 侧的 fd 与 Windows 侧的 HANDLE,则是各自世界的句柄底座。内存一章的两侧也都已就位,进程章与异步 I/O 章的两侧跟着落地:进程章 Linux 侧从 fork/exec 一路走到信号与优雅关闭、Windows 侧把咱们带进了控制台事件与 APC,异步 I/O 章 Linux 侧从三代等待 API 走到 io_uring、Windows 侧收进了完成端口,跨平台一篇咱们再用 concepts 把异步后端约束在编译期。时间章的三篇与终端章的三篇(两侧)也都齐了,从九把钟一路走到定时器的漂移对照,再从 termios 的开关面板走到伪终端的录制回放。最后平台抽象的两篇也收了卷:抽象层设计把 #ifdef 退到选后端的一处,syskit 把全子卷的公共工具收编成两侧都编译得起来的库。咱们全卷的四十篇,到这里就齐了。

咱们跟同卷的网络编程分好了工:那边讲 socket 与事件循环(epoll/Reactor),这边讲的是文件、内存、进程、终端这类通用 OS 资源。两边的交汇处在 epoll,总纲的学习路线到 I/O 多路复用一章会直接衔接过去、不重复展开。

思维基石 ​

Linux 侧 ​

Windows 侧 ​

跨平台 ​

pdf-latest-4-g85128cc · 85128cc · 2026-10-05