Linux System Programming: Talking Directly to the Kernel and C Library

Front Cover
"O'Reilly Media, Inc.", May 14, 2013 - Computers - 456 pages

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
 

What people are saying - Write a review

We haven't found any reviews in the usual places.

Contents

Chapter 1 Introduction and Essential Concepts
1
Chapter 2 File IO
25
Chapter 3 Buffered IO
67
Chapter 4 Advanced File IO
91
Chapter 5 Process Management
137
Chapter 6 Advanced Process Management
177
Chapter 7 Threading
211
Chapter 8 File and Directory Management
241
Chapter 9 Memory Management
293
Chapter 10 Signals
333
Chapter 11 Time
363
Appendix A GCC Extensions to the C Language
395
Appendix B Bibliography
407
Index
411
About the Author
430
Copyright

Other editions - View all

Common terms and phrases

About the author (2013)

Robert Love has been a Linux user and hacker since the early days. He is active in--and passionate about--the Linux kernel and GNOME desktop communities. His recent contributions to the Linux kernel include work on the kernel event layer and inotify. GNOME-related contributions include Beagle, GNOME Volume Manager, NetworkManager, and Project Utopia. Currently, Robert works in the Open Source Program Office at Google.

Bibliographic information