Samiksha Jaiswal (Editor)

The Linux Programming Interface

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit
9.8
/
10
1
Votes
Alchetron
9.8
1 Ratings
100
91
80
70
60
50
40
30
20
10
Rate This

Rate This

Language
  
English

Pages
  
1512

Originally published
  
2010

Page count
  
1,512


Series
  
Learning

ISBN
  
978-1-59327-220-3

Author
  
Michael Kerrisk

The Linux Programming Interface t3gstaticcomimagesqtbnANd9GcRtg8uVp1ddoSOE

Subject
  
covers current UNIX® standards (POSIX.1-2001 /SUSv3 and POSIX.1-2008 /SUSv4 )

Similar
  
Linux System Programming, Beginning Linux Programming, Linux Kernel Development, Advanced Programming in the Uni, Understanding the Linux Kernel

The Linux Programming Interface: A Linux and UNIX System Programming Handbook is a book written by Michael Kerrisk, which documents the APIs of the Linux kernel and of the GNU C Library (glibc).

It covers a wide array of topics dealing with the Linux operating system and operating systems in general, as well as providing a brief history of Unix and how it led to the creation of Linux. It provides many samples of code written in the C programming language, and provides learning exercises at the end of many chapters. Kerrisk is a former writer for the Linux Weekly News and the current maintainer for the Linux man pages project,

"The Linux Programming Interface" is widely regarded as the definitive work on Linux system programming and has been translated into several languages. Jake Edge, writer for LWN.net, in his review of the book, said "I found it to be extremely useful and expect to return to it frequently. Anyone who has an interest in programming for Linux will likely feel the same way." Federico Lucifredi, the product manager for the SUSE Linux Enterprise and openSUSE distributions, also praised the book saying that "The Linux Programming Encyclopedia would have been a perfectly adequate title for it in my opinion" and called the book "…a work of encyclopedic breadth and depth, spanning in great detail concepts usually spread in a multitude of medium-sized books…" Lennart Poettering, the software engineer best known for PulseAudio and systemd, advises people to "get yourself a copy of The Linux Programming Interface, ignore everything it says about POSIX compatibility and hack away your amazing Linux software".

At FOSDEM 2016 Michael Kerrisk, the author of The Linux Programming Interface, explained some of the issues with the Linux kernel's user-space API he and others perceive. It is littered with design errors: APIs which are non-extensible, unmaintainable, overly complex, limited-purpose, violations of standards, and inconsistent. Most of those mistakes can't be fixed because doing so would break the ABI that the kernel presents to user-space binaries.

References

The Linux Programming Interface Wikipedia