The Linux Programming Interface: A Linux and UNIX System Programming Handbook

87

Already Sold: 65%
Added to wishlistRemoved from wishlist 0
Add to compare

Price: $86.82
(as of Oct 03, 2025 08:06:18 UTC – Details)


The Linux Programming Interface (TLPI) is the definitive guide to the Linux and UNIX programming interface—the interface employed by nearly every application that runs on a Linux or UNIX system.

In this authoritative work, Linux programming expert Michael Kerrisk provides detailed descriptions of the system calls and library functions that you need in order to master the craft of system programming, and accompanies his explanations with clear, complete example programs.

You’ll find descriptions of over 500 system calls and library functions, and more than 200 example programs, 88 tables, and 115 diagrams. You’ll learn how to:
–Read and write files efficiently
–Use signals, clocks, and timers
–Create processes and execute programs
–Write secure programs
–Write multithreaded programs using POSIX threads
–Build and use shared libraries
–Perform interprocess communication using pipes, message queues, shared memory, and semaphores
–Write network applications with the sockets API

While The Linux Programming Interface covers a wealth of Linux-specific features, including epoll, inotify, and the /proc file system, its emphasis on UNIX standards (POSIX.1-2001/SUSv3 and POSIX.1-2008/SUSv4) makes it equally valuable to programmers working on other UNIX platforms.

The Linux Programming Interface is the most comprehensive single-volume work on the Linux and UNIX programming interface, and a book that’s destined to become a new classic.

Publisher ‏ : ‎ No Starch Press
Publication date ‏ : ‎ October 28, 2010
Edition ‏ : ‎ 1st
Language ‏ : ‎ English
Print length ‏ : ‎ 1552 pages
ISBN-10 ‏ : ‎ 1593272200
ISBN-13 ‏ : ‎ 978-1593272203
Item Weight ‏ : ‎ 5.37 pounds
Dimensions ‏ : ‎ 7.25 x 2.25 x 9.5 inches
Best Sellers Rank: #145,517 in Books (See Top 100 in Books) #2 in Unix Programming #9 in Linux Programming #103 in Software Development (Books)
Customer Reviews: 4.8 4.8 out of 5 stars 745 ratings var dpAcrHasRegisteredArcLinkClickAction; P.when(‘A’, ‘ready’).execute(function(A) { if (dpAcrHasRegisteredArcLinkClickAction !== true) { dpAcrHasRegisteredArcLinkClickAction = true; A.declarative( ‘acrLink-click-metrics’, ‘click’, { “allowLinkDefault”: true }, function (event) { if (window.ue) { ue.count(“acrLinkClickCount”, (ue.count(“acrLinkClickCount”) || 0) + 1); } } ); } }); P.when(‘A’, ‘cf’).execute(function(A) { A.declarative(‘acrStarsLink-click-metrics’, ‘click’, { “allowLinkDefault” : true }, function(event){ if(window.ue) { ue.count(“acrStarsLinkWithPopoverClickCount”, (ue.count(“acrStarsLinkWithPopoverClickCount”) || 0) + 1); } }); });

Customers say

Customers find this Linux programming book densely packed with information and well-written, making it a valuable resource for studying Linux programming. The book is particularly praised for its comprehensive coverage of complex programming tasks in Linux and its ability to explain complexities clearly. Customers appreciate its readability and consider it well worth the money, with one customer noting it features modern C programming.

8 reviews for The Linux Programming Interface: A Linux and UNIX System Programming Handbook

0.0 out of 5
0
0
0
0
0
Write a review
Show all Most Helpful Highest Rating Lowest Rating
  1. Charles A

    TLPI – A masterpiece, full of essential information. A real look under the hood!
    /*** Name: Charles* Age: 23* Purchased: May, 2013*/Organization:[0] -> The book is divided into chapters.[1] -> Each chapter has multiple sections.[2] -> Each chapter ends with a summary.[3] -> At the very end of each chapter are exercises meant to reinforce what was learned in the chapter.This is by far one of the best computer science texts I own. I did not purchase this book as a requirement for a class (though I am a student), but I did purchase it for ‘personal consumption’ and to further my knowledge of programming and grow as a unix/linux systems programmer.I have read many computer science books by many different publishers and I have to admit I really enjoy the books that I own that were printed by No Starch press. I was turned on to this book by an interest in C/C++ socket programming and systems programming in general. I have a background in web development and had been programming in C for about a year when I purchased this book.There is something to learn for everyone in this book, regardless of how many years or decades of experience you have. The book starts with a history of Unix, Linux, and standards, and then progresses into the great detail the inner workings of linux and unix.One of my biggest disappointments with most other programming books is that the authors use bad analogies to explain how things work, or fail to explain how things work at all and only offer a shallow glimpse into the subject. Some authors seem to go back over their books adding stupid and unintelligent filler to try and make the book longer. This book is over 1500 pages and each page is jam packed with information. In fact, I’m sure there was information that was deemed ‘not important’ enough to make it into this book, and thus the book references how one can find more information on a topic.I have so many good things to say about this book, I highly recommend it to anybody with an interest in linux systems programming. You will need an understanding of C programming to get through the book. If you are looking for a book on how to program in C, this is not the book. If you are a C programmer, or are learning C, and would like a book that shows you how to apply your programming knowledge to the linux and unix operating systems, this is a book for you.This is a book for system admins, network admins, hackers, teachers and professors, students (high school, college, or graduate), makers, computer scientists, etc.This is one book that I know I will carry with me everywhere. Or I will buy multiple copies so that I don’t have to lug around this heavy, 1500+ pg hardcover book. Definitely a book you want at home, at the office, on the plain, in the car, in the bathroom, or anywhere else you can think of reading!This is the most well written programming book that I own!

    Helpful(0) Unhelpful(0)You have already voted this
  2. J. Kayser

    I’ve never seen a book rated so high. After starting to read it, If I could give it 10 stars, I would! Wow!
    What an incredible resource for the Linux community!I’m an Oracle DBA, that has always been interested in the lower-level stuff (I/O, system calls, etc.). I was researching Oracle ASM (Oracle’s own volume manager), but feeling the need to get more insight into the Linux I/O subsystem. So, I went to Amazon, started searching for relevant resources, and came across this book.I’ve bought thousands of dollars of technical books on Amazon, and read lots of Amazon reviews.When I bought this book, it had 61 reviews. 60 rated the book a 5 star, and 1 rated the book a 4-star.I have *never* seen a book rated so highly on Amazon before. A book, with incredible ratings like that, was simply unheard of.I’m now reading the book, and thoroughly enjoying the care, the attention to detail, the comprehensiveness, the technical accuracy, the methodology, the extremely well-written English, the clear explanations, and the well-written code.For example, on page 246, where Michael discusses Direct I/O, he says:”If a file is opened with O_DIRECT by one process, and opened normally (i.e. so that the buffer cache is used) by another process, then there is no coherency between the contents of the buffer cache and the data read or written via direct I/O. Such scenarios should be avoided.”Wow. In just one sentence, Michael tells us one of the fundamental issues with concurrent I/O, and that by simultaneously using different I/O mechanisms, you can corrupt your files.Another example: on page 249, Michael writes:”When using the stdio library functions in conjunction with I/O system calls to perform I/O on disk files, we must keep buffering issues in mind. I/O system calls transfer data directly to the kernel buffer cache, while the stdio library waits until the stream’s user-space buffer is full before calling write() to transfer the buffer to the kernel buffer cache.”Wow. It makes sense, when you know as much about the Linux kernel as Michael does. Need to insert an fflush() between the stdio write and the system call write. Another “Aha!” moment, just a couple of pages later. And the pages in between had one of the clearest examples of code for Direct I/O that I have ever seen. Michael even writes about the memory alignment challenges of Direct I/O.It’s simply incredible! How in the world could anyone write so much high-quality technical stuff? It’s 1500+ pages of awe inspiring, amazing technical blessing. It is a fabulous example to everyone in the I.T. industry, and a very high bar for any technical books to come.Thank you, Michael, for your incredible book.

    Helpful(0) Unhelpful(0)You have already voted this
  3. Alexandre antonio juca

    Highly recommend
    I got this book in really good condition. The paper is of high quality and I love the font used.Regarding the books contents I believe this book is indispensable to software practitioners who want to have a deep understanding of Unix-like systems. I take this book with me on flights to dig deep into topics that interest me.The exercises and code are great and the explanations on different topics are done well. I really liked the parts that discussed Interprocess communication as well as File I/O.Would I recommend this book?Yes, of cause!

    Helpful(0) Unhelpful(0)You have already voted this
  4. Read and think

    I have read a lot of technical books (principally windows and c++ related) and really I have NEVER seen a technical book as well written as this one.The book has all the quality I always wanted:1) it must be thorough: after reading you shouldn’t need to read other book or search the web to complete your comprehension: every info you need must be there.2) it must be clear: there should never be any ambiguity in expressions or situation that requires you to test the info on specific example. You must be able to understand it on first the first reading3) it must be a pleasant journey: the order of the information should match the normal flow of your thinking and interrogations. The author should guide you so that when you think: “I wonder what would happen in this different situation”, the next paragraphs do address that interrogation you have.Again this book does all this extremely well. There is simply no equivalent in the windows world. It makes me learning linux a very pleasant experience.Many many thanks Mr Kerrisk

    Helpful(0) Unhelpful(0)You have already voted this
  5. Tim Havord

    East to read and comprehensive.

    Helpful(0) Unhelpful(0)You have already voted this
  6. Kindle Customer

    This is the most comprehensive and authoritative book on Linux Application programming.. Covers every detail of Linux API interface .. You won’t need any other reference book .. Excellent !!!

    Helpful(0) Unhelpful(0)You have already voted this
  7. Cuicui

    Vraiment complet, je trouve toujours tout ce que j’ai besoin, et rapidement

    Helpful(0) Unhelpful(0)You have already voted this
  8. Calle Özmehak

    Better than the bible.

    Helpful(0) Unhelpful(0)You have already voted this

    Add a review

    Your email address will not be published. Required fields are marked *

    The Linux Programming Interface: A Linux and UNIX System Programming Handbook
    The Linux Programming Interface: A Linux and UNIX System Programming Handbook

    87

    techbazar.tech
    Logo
    Compare items
    • Total (0)
    Compare
    0
    Shopping cart