Take the 2-minute tour ×
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems.. It's 100% free, no registration required.

Title says it all. I am trying to learn Linux system programming, which is the best book to learn this?

share|improve this question

closed as primarily opinion-based by derobert, Anthon, Gilles, terdon, slm Jan 2 '14 at 13:31

Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise. If this question can be reworded to fit the rules in the help center, please edit the question.

Shouldn't this be on SO? –  Eimantas Aug 11 '10 at 10:39
I believe it actually belongs on books.stackexchange.com... ;-) There will always be overlapping topics. –  EricSchaefer Aug 11 '10 at 11:20
also see unix.stackexchange.com/questions/80/… –  mnemonicflow Aug 16 '10 at 9:21

9 Answers 9

up vote 8 down vote accepted

Linux Systems Programming

you can refer this also link

share|improve this answer
Thanks, I just bought the book. It looks like a good read and isn't huge :) –  Khaja Minhajuddin Aug 11 '10 at 11:48
gr8. All the best :-) –  Hemant Aug 11 '10 at 12:04

W. Richard Stevens: Advanced Programming in the UNIX Environment

share|improve this answer
I agree. It's the holy bible of UNIX system programming –  mru Nov 4 '10 at 12:15

The Linux Programming Interface by Michael Kerrisk

Note that the author is the current maintainer of the Linux man pages. And that it's not out yet so I can't actually say how good it is, but I've read the blog posts about it and it sounds like a good book. (and he is the maintainer of the man pages, and those are mostly well written and he ought to know his stuff)

EDIT: book is now out.




share|improve this answer
Book is out now (has been for a bit) - it's great. More should upvote this answer. –  Dan Dec 19 '10 at 7:52
Yup it is out, I bought it and it is indeed great –  Spudd86 Feb 9 '11 at 3:06
Excellent book, highly recommended. –  haziz Mar 22 '12 at 2:52
He did not write the man pages, they come from all over the place (BSD, some GNU texinfo auto-manified, some pages for separate utilities). But yes, managing such a huge, sprawling mess into something vaguely coherent is a feat. –  vonbrand Mar 15 '13 at 21:19
@vonbrand I never said he wrote the man pages, I said he maintains the man pages package. Which is true. He has also written a lot of man pages and updated existing ones because he is the maintainer of the package. –  Spudd86 Jul 30 '13 at 19:18

Here you can find a database of the best books to learn Linux: http://www.tldp.org/guides.html

I'm currently reading Introduction to Linux - A Hands on Guide by Machtelt Garrels

And I like it, the way it's written make it easy to understand.

share|improve this answer
The TLDP guides are generally excellent, but mostly sadly out of date. –  vonbrand Mar 15 '13 at 21:20

I second the Stevens recommendation. The only real alternative is Advanced UNIX Programming by M.J. Rochkind: http://basepath.com/aup/

ORA's POSIX Programmer's Guide (http://oreilly.com/catalog/9780937175736) may be useful, but I haven't read it myself.

share|improve this answer

I'd recommend Bruce Molay's "Understanding Unix/Linux Programming" (http://wps.prenhall.com/esm_molay_UNIXProg_1/). I had him as an instructor at Harvard, and he was fantastic.

share|improve this answer

The Linux Programming Interface is now available...


share|improve this answer

The Design of the UNIX Operating System by Maurice J. Bach -classic book describes the internal algorithms and the structures that form the basis of the UNIX ®operating system and their relationship to the programmer interface

share|improve this answer

You can read into the book called, Linux System Programming on Google Books . It's a really good book, I can recommend.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.