Ruby Systems Programming
summary
Explains kernel vs user mode, shows how Linux syscalls are made, and demonstrates that a single web request can trigger 120,000 syscalls. Uses strace, the procfs, and BSD sockets via the Ruby stdlib socket API, inspects file descriptors and io.select, and compares unix syscall tables. Builds a 23-line Ruby HTTP server that serves files (it generally works in demo but has obvious security holes and is not production-ready).
AI-written summary · about
chapters (15)
- 0:00Introduction
- 1:27Defining system software
- 3:08Kernel versus user mode
- 4:22Capabilities in user mode
- 5:53Understanding system calls
- 7:17The syscall table
- 8:22How syscalls are made
- 10:32File descriptors
- 12:28System file descriptors
- 14:13History of sockets
- 17:01The socket API
- 18:51HTTP protocol overview
- 20:46Building a Ruby web server
- 24:15Demo and real-world usage
- 26:41Conclusion and resources








