Skip to content

Latest commit

 

History

20 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

io-multiplexing

A repository exploring I/O multiplexing techniques, including epoll, poll, and select, kqueue. Designed for education, experimentation, and performance benchmarking of different I/O models on *nix systems.

Overview

I/O multiplexing allows a program to monitor multiple file descriptors (sockets, files, etc.) to see if I/O is possible on any of them. This is fundamental for building scalable network applications and servers.

This repo features simple, idiomatic examples of:

  • select
  • poll
  • epoll
  • kqueue

Compare their performance, understand their APIs, and learn how to implement non-blocking network servers using low-level system calls.

Getting Started

Prerequisites

  • Linux or macOS for full API support
  • GCC or Clang
  • Basic C development tools (make, etc.)

Usage

See integration_test

License

MIT License

References

About

I/O multiplexing examples and benchmarks using select, poll, epoll, kqueue for scalable server development on Unix-like systems.

Resources

Stars

4 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages