Mihalis Tsoukalos
Build efficient systems software with the Zig programming language by creating UNIX tools, network services, asynchronous applications, and high-performance servers.Key Features:- Build real-world systems software and UNIX programming tools through practical Zig projects- Develop network programming skills through TCP, UDP, HTTP services, concurrent applications, and CLI tools- Master memory management, I/O, and systems-level design with the Zig programming languageBook Description:Build reliable systems software with Zig through a project-driven approach focused on practical engineering challenges. Guided by UNIX systems engineer & bestselling author Mihalis Tsoukalos, you will learn modern systems programming techniques while creating production-ready applications, UNIX tools, & network services.This book takes you from essential UNIX tooling and build infrastructure to advanced topics such as direct memory access, binary formats, filesystem monitoring, networking, concurrency, asynchronous I/O, & database integration. Through hands-on projects, you will create command-line utilities, TCP and UDP services, HTTP applications, file indexing tools, cache servers, & a domain-specific language interpreter that combines memory management, comptime metaprogramming, parsing, evaluation, & error handling.Each chapter demonstrates how Zig features solve practical systems programming problems. You will work with memory management, process control, synchronization primitives, event-driven architectures, SQLite integration, protocol design, & performance-focused data structures while learning the reasoning behind key engineering decisions.By the end of this book, you will be able to build efficient and maintainable systems software in Zig & confidently apply the language to production projects.What You Will Learn:- Build production-ready UNIX command-line tools with Zig- Develop TCP, UDP, and HTTP network services and applications- Apply systems programming techniques to memory, filesystems, and process management- Manage memory and binary data safely and efficiently- Implement multithreading, synchronization, and concurrent systems- Create asynchronous I/O and event-driven network applications- Integrate SQLite into real-world Zig applications- Design and build a domain-specific language using parsing and comptime techniquesWho this book is for:Software developers, systems programmers, UNIX systems engineers, and backend engineers who already understand Zig fundamentals and want to build production-ready systems software. Familiarity with programming concepts and experience using languages such as C, C++, Rust, Go, or Python will help you get the most from this book.Table of Contents- Building Essential UNIX Tools- Systems Infrastructure: Builds, Testing, and Distribution- Direct Memory Access and Binary Formats- Processing Streams, Buffers, and Data Encoding- Navigating Directories and Filesystem Events- Programming the Network Stack- Managing Threads, Processes, and Signals- Orchestrating Concurrency and Synchronization- Implementing Asynchronous I/O- Building a High-Performance In-Memory Cache Server- Persisting Structured Data with SQLite3- Developing a Domain-Specific Language