How epoll and kqueue Taught Operating Systems to Stop Asking and Start Notifying
Epoll and Kqueue: How Operating Systems Learned to Wait Efficiently

Every high-performance server hits the same wall: waiting for I/O. Early systems used select and poll, which scanned every file descriptor on each call, so cost grew with connection count. epoll on Linux and kqueue on BSD flipped the model: register interest once, and the kernel notifies you only when something changes. Waiting becomes proportional to activity, not capacity. This shift made tens of thousands of concurrent connections practical and underpins runtimes like Go's network scheduler.
The real issue wasn’t that waiting was slow—it was that checking was expensive.