Journey to the End of Linux IO APIs (d…)
summary
The talk explains Linux I/O APIs evolution, comparing legacy interfaces like select/poll and epoll with the newer io_uring introduced in 2019. Using a concrete example (a socket) and source code, it shows how each API works, how they evolved, and which problems io_uring addresses.
AI-written summary · about
chapters (10)
- 0:00Introduction
- 5:20Everything is a file descriptor
- 13:07First simple blocking server
- 19:48Evolution with select and poll
- 26:25Poll scalability issues
- 30:19I/O multiplexing with epoll
- 36:12Traditional API limits
- 37:57io_uring revolution
- 46:18Performance and adoption
- 47:41Conclusion
related talks
45mJourney to the end of Linux IO APIs (from poll to io_uring)
59mThe Wild West of post-POSIX IO Interfaces
37mIndustrial IO and You- Nonsense Hacks!
57mThe Linux API from a web server developer's perspective
46mRevamping ioctl with io_uring
34mio_uring in the Automotive World
48mRecent Changes in the Linux I/O Stack from a DBA’s Perspective
38mUh-oh, It's I/O Ordering!
