Discover useful tools, tutorials, and helpful resources organized by category
Wangcong.org is the personal blog of Wang Cong — a veteran Linux-kernel developer and networking systems contributor — who writes about a mixture of technical topics (Linux kernel, networking, system performance), as well as personal-development and life reflections. The blog serves as a space for him to share both deep technical insights and thoughts on growth, reading, hobbies, and daily life; it reflects his individual views (not those of any employer) and shows the breadth of his interests beyond pure programming.
The Sockets Networking API (Volume 1 of UNIX® Network Programming) by W. Richard Stevens, Bill Fenner, and Andrew M. Rudoff is a definitive, in-depth guide to building networked applications on UNIX. It covers everything from the basics of TCP/IP, socket creation, binding, listening, and connecting, to advanced topics like multiplexing (select, poll), nonblocking I/O, raw sockets, IPv6 interoperability, SCTP, and daemon design. Updated to reflect modern systems and standards, this edition equips developers to design robust, efficient, cross-platform network software using the UNIX socket API.
Advanced Programming in the UNIX Environment by W. Richard Stevens is a classic, authoritative reference for system-level UNIX programming in C. It covers over 200 UNIX and POSIX system calls and library functions, with clear examples illustrating how each works in practice. The book blends theory with hands-on code, walking readers through building real programs like a shell, a database library, and a pseudo-terminal controller. It’s valued not only as a teaching text, but also as a reference you return to when dealing with low-level I/O, process control, signals, file systems, and interprocess communication.
The Linux Programming Interface by Michael Kerrisk is a comprehensive, in-depth guide and reference to Linux and UNIX system programming, blending theory and practical code examples. It walks through hundreds of system calls and library routines (file I/O, process control, signals, threads, interprocess communication, sockets, memory management, etc.), offering detailed explanations along with dozens of example programs. What makes the book stand out is its dual role as both a learning text and a technical reference: you can read it sequentially to build your understanding, or dip into particular chapters when you need to understand a specific API. Kerrisk, having been the maintainer of the Linux man-pages project, draws on deep familiarity with kernel and C library interfaces, which further enriches the clarity and accuracy of the explanations. The result is a book often regarded as the definitive handbook for serious system programmers working on Linux/UNIX platforms.
Seiya Nuta’s blog is a deep, systems-programming playground exploring topics around building operating systems, hypervisors, and kernel internals — often from first principles. Recent posts include tutorials like Writing a Hypervisor in 1,000 Lines, Building the Linux Kernel on macOS, and Hypervisor as a Library. There’s a clear focus on low-level software, Rust, RISC-V, and pushing boundaries of what minimal systems can do, all while preserving clarity and educational value. Users interested in OS design, virtualization, and systems engineering will find the content both inspiring and technically rich.
In this poignant documentary by Hannu Puttonen, the evolution of the Linux kernel is narrated through the eyes of its creators, contributors, and passionate users—from its inception by Linus Torvalds to its worldwide adoption across servers, supercomputers, and embedded systems. Seamlessly blending interviews and rich storytelling, the film illuminates the collaborative spirit, technical innovation, and community-driven ethos that have fueled Linux’s transformative impact on global technology.
