💾 Archived View for gemini.bortzmeyer.org › fosdem › event-10837.gmi captured on 2023-03-21 at 01:03:52. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2021-12-17)
-=-=-=-=-=-=-
Stefan Hajnoczi
Type maintrack
From select(2) to io_uring
Starts on day 2 (2021-02-07) at 15:00 (Brussels time, UTC+1) in room Misc (duration 01:00)
Matrix room #misc:fosdem.org
File descriptor monitoring is at the core of event-driven applications from graphical applications to web servers. Over the history of Linux, a number of system calls APIs have been introduced to improve upon the performance, features, and interface design. Developers may ask themselves which API they should use and how they differ.
This talk covers select(2), poll(2), epoll(7), as well as the more recent Linux AIO and io_uring APIs. We will look at the classic scalability challenges with these APIs as well as the latest shared kernel memory ring and polling approaches. An understanding of the evolution of file descriptor monitoring in Linux exposes API design topics that have relevance even if you don't need to implement an event loop in your application.