Write software that draws directly on services offered by the Linux kernel and core system libraries. With this comprehensive book, Linux kernel contributor Robert Love provides you with a tutorial on Linux system programming, a reference manual on Linux system calls, and an insider’s guide to writing smarter, faster code.
Love clearly distinguishes between POSIX standard functions and special services offered only by Linux. With a new chapter on multithreading, this updated and expanded edition provides an in-depth look at Linux from both a theoretical and applied perspective over a wide range of programming topics, including:
* A Linux kernel, C library, and C compiler overview
* Basic I/O operations, such as reading from and writing to files
* Advanced I/O interfaces, memory mappings, and optimization techniques
* The family of system calls for basic process management
* Advanced process management, including real-time processes
* Thread concepts, multithreaded programming, and Pthreads
* File and directory management
* Interfaces for allocating memory and optimizing memory access
* Basic and advanced signal interfaces, and their role on the system
* Clock management, including POSIX clocks and high-resolution timers