In this guide, we elaborate the Linux programming interface: the system calls; library functions; and other low level interfaces given by Linux; a free execution of the UNIX operating system. These interfaces run on Linux and are used by a number of programs, directly or indirectly. They permit applications to execute tasks such as file Input/output and to create and delete files and directories, creating new processes, executing programs, setting timers, interacting between processes and threads on the same workstation, and communicating between processes exist in different computers that are connected through a network.
Moreover, this pack of interfaces easily understand by computer, is occasionally also called as the system programming interface.
Although, we focus on Linux, provide careful consideration to standards and portability problems, and clearly differentiate the discussion of Linux centered details from the discussion of functions that are collective to most UNIX applications and identical by POSIX and the Single UNIX Description.
In addition, this guide also offers a complete explanation of the UNIX/POSIX programming interface and can also be used by developers writing applications that are focused at other UNIX systems or proposed to be convenient across numerous systems.
This guide is also focused mainly at the following audience:
- Programmers manipulating applications between Linux and other UNIX implementations or also between Linux and other OS
- Programmers and software designers who build applications for Linux; other UNIX systems; or other POSIX conformant systems
- Instructors and advanced scholars training or getting knowledge about Linux or UNIX system programming
- System executives and users desiring to gain a better understanding of the Linux/UNIX programming interface.