This chapter introduces a range of concepts related to Linux system programming. It is intended for readers who have worked primarily with other operating systems, or who have only limited experience with Linux or another UNIX implementation.
The term operating system is commonly used with two different meanings:
To denote the entire package consisting of the central software managing a computer’s resources and all of the accompanying standard software tools, such as command-line interpreters, graphical user interfaces, file utilities, and editors.
More narrowly, to refer to the central software that manages and allocates computer resources (i.e., the CPU, RAM, and devices).