操作系统如何学会高效等待
Epoll and Kqueue: How Operating Systems Learned to Wait Efficiently

高性能服务器最大的瓶颈往往不是 CPU 或内存,而是等待 I/O 的开销。早期的 select 和 poll 机制需要不断轮询,导致连接数一多,CPU 就被无意义的检查占满。Linux 的 epoll 和 BSD 的 kqueue 彻底改变了这一局面:它们不再让用户空间反复询问内核,而是让内核在事件发生时主动通知。这种从“拉”到“推”的范式转变,使得处理数万并发连接成为可能,也是 Go 等现代运行时实现高并发的基石。
I/O 最困难的部分不在于读取数据,而在于知道何时停止等待。