12.1. IntroductionIn order to make use of services such as file creation, process duplication, and interprocess communication, application programs must talk to the operating system. They can do this via a collection of routines called system calls, which are the programmer's functional interface to the Linux kernel. To the programmer, they're just like library functions (in fact, some are library functions that, in turn, make true system calls) except that they perform a subroutine call directly into the heart of Linux. The Linux system calls can be loosely grouped into three main categories:
Interprocess communication (IPC) is in fact a subset of file management, since Linux treats IPC mechanisms as special files. Figure 12-1 illustrates the file management system call hierarchy. Figure 12-1. File management system call hierarchy.The process management system call hierarchy includes routines for duplicating, differentiating, and terminating processes (Figure 12-2). Figure 12-2. Process management system call hierarchy.The only system call that supports error handling is perror (), which I'll put it in a hierarchy just to be consistent (Figure 12-3). Figure 12-3. Error handling hierarchy.
This chapter covers the system calls shown in these hierarchy diagrams in the following order:
|