Expand description
epoll I/O multiplexing
Linux-compatible epoll implementation for event-driven I/O. Used by Rust’s mio/tokio for async I/O on VeridianOS.
§Architecture
Each epoll instance is an fd-based object containing:
- An interest list (fds being monitored + event masks)
- A ready list (fds with pending events)
Supports both level-triggered (default) and edge-triggered modes.
Structs§
- Epoll
Event - Event structure passed to/from user space (matches Linux struct epoll_event).
- Epoll
Node - VfsNode wrapper around an epoll instance.
Constants§
- EPOLLERR
- Error condition.
- EPOLLET
- Edge-triggered mode.
- EPOLLHUP
- Hang up (peer closed connection).
- EPOLLIN
- Available for read.
- EPOLLONESHOT
- One-shot mode (disables after first event).
- EPOLLOUT
- Available for write.
- EPOLL_
CTL_ ADD - Add fd to interest list.
- EPOLL_
CTL_ DEL - Remove fd from interest list.
- EPOLL_
CTL_ MOD - Modify events for an fd.
Functions§
- epoll_
create - Create a new epoll instance. Returns the epoll ID (used as a pseudo-fd).
- epoll_
ctl - Perform a control operation on an epoll instance.
- epoll_
destroy - Destroy an epoll instance.
- epoll_
wait - Wait for events on an epoll instance.
- init
- Initialize the epoll subsystem.