Event I/O

Event I/O #

Scope #

  • IO and CPU bound applications
  • Blocking syscalls problem
  • Busy waiting
  • Event-based programming
    • Receiving events via signals
    • Receiving events via blocking syscalls
  • Event based APIs:
    • timer_create
    • timerfd_create
    • signalfd
  • Change detection
    • ABA problem
  • Filesystem events
    • inotify API
  • Asynchronous I/O
    • io_uring API (note: advanced, auxiliary topic)
  • Event multiplexing
    • select() API
    • event loops

Reference #

  1. Lecture presentation (PDF)
  2. Lecture code samples