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.