30

I am trying to learn Linux system programming, which is the best book to learn this?

3

9 Answers 9

25

W. Richard Stevens: Advanced Programming in the UNIX Environment

3
  • 2
    I agree. It's the holy bible of UNIX system programming
    – mru
    Nov 4, 2010 at 12:15
  • What about Linux system programming? Is it useful for that too?
    – skrtbhtngr
    Jun 1, 2015 at 18:45
  • 1
    While it is not specific to Linux most topics it covers apply to Linux. Some things are different on each flavor of Unix, including Linux. The book is perfect if you want to get into system programming for any type of Unix. The most important thing to learn is the underlying philosophy which is common to all flavors. For some topics you might want to get an additional, flavor-specific book. There is also this thing called Internet I keep hearing about, which might help you with the specific things... ;-) Jun 5, 2015 at 14:55
21

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.

http://blog.man7.org/2009/07/whats-book-about.html

http://www.man7.org/tlpi/index.html

http://www.nostarch.com/linuxprogramming.htm

6
  • Book is out now (has been for a bit) - it's great. More should upvote this answer.
    – Dan
    Dec 19, 2010 at 7:52
  • Yup it is out, I bought it and it is indeed great
    – Spudd86
    Feb 9, 2011 at 3:06
  • Excellent book, highly recommended.
    – haziz
    Mar 22, 2012 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, 2013 at 21:19
  • 1
    @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, 2013 at 19:18
14

Linux Systems Programming

you can refer this also link

2
  • Thanks, I just bought the book. It looks like a good read and isn't huge :) Aug 11, 2010 at 11:48
  • gr8. All the best :-)
    – Hemant
    Aug 11, 2010 at 12:04
5

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.

1
  • The TLDP guides are generally excellent, but mostly sadly out of date.
    – vonbrand
    Mar 15, 2013 at 21:20
4

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.

4

The Linux Programming Interface is now available...

http://www.man7.org/tlpi/

3

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.

2

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

1

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

Not the answer you're looking for? Browse other questions tagged .