Skip to content

Latest commit

 

History

History
31 lines (21 loc) · 1.41 KB

README.md

File metadata and controls

31 lines (21 loc) · 1.41 KB

io_uring examples in Zig

Disclaimer: This is a work in progress

Learning io_uring by porting over the examples found in liburing, except in Zig!

What is io_uring?

There are plenty, plenty of resources talking about io_uring and its benefits in technical detail and they all probably do a better job than I will, so I'll give the TL;DR:

io_uring makes processing async I/O go brrrr by keeping syscalls to a minimum. This is done through batching reads/writes through ring buffers that are setup between the user space and the kernel space.

Implementations

  • io_uring-close-test
  • io_uring-test (not porting this - same as above except without file descriptor registration)
  • io_uring-cp
  • io_uring-udp
  • link-cp
  • poll-bench
  • send-zerocopy
  • ucontext-cp

Acknowledgements

These are the resources I learnt from: