Buy new:
$69.00
FREE delivery Monday, July 22
Ships from: Amazon
Sold by: Sinaloense
$69.00
FREE Returns
FREE delivery Monday, July 22
Or fastest delivery Saturday, July 20
Only 1 left in stock - order soon.
$$69.00 () Includes selected options. Includes initial monthly payment and selected options. Details
Price
Subtotal
$$69.00
Subtotal
Initial payment breakdown
Shipping cost, delivery date, and order total (including tax) shown at checkout.
Ships from
Amazon
Ships from
Amazon
Sold by
Sold by
Returns
Eligible for Return, Refund or Replacement within 30 days of receipt
Eligible for Return, Refund or Replacement within 30 days of receipt
This item can be returned in its original condition for a full refund or replacement within 30 days of receipt.
Returns
Eligible for Return, Refund or Replacement within 30 days of receipt
This item can be returned in its original condition for a full refund or replacement within 30 days of receipt.
Payment
Secure transaction
Your transaction is secure
We work hard to protect your security and privacy. Our payment security system encrypts your information during transmission. We don’t share your credit card details with third-party sellers, and we don’t sell your information to others. Learn more
Payment
Secure transaction
We work hard to protect your security and privacy. Our payment security system encrypts your information during transmission. We don’t share your credit card details with third-party sellers, and we don’t sell your information to others. Learn more
Support
Product support included
What's Product Support?
In the event your product doesn't work as expected or you need help using it, Amazon offers free product support options such as live phone/chat with an Amazon associate, manufacturer contact information, step-by-step troubleshooting guides, and help videos. By solving product issues, we help the planet by extending the life of products. Availability of support options differ by product and country. Learn more
Support
Product support included
In the event your product doesn't work as expected or you need help using it, Amazon offers free product support options such as live phone/chat with an Amazon associate, manufacturer contact information, step-by-step troubleshooting guides, and help videos. By solving product issues, we help the planet by extending the life of products. Availability of support options differ by product and country. Learn more
$37.50
FREE Returns
The book is in good condition. Has some cosmetic signs of use. Creases and folds in pages. The book is in good condition. Has some cosmetic signs of use. Creases and folds in pages. See less
FREE delivery Thursday, July 18. Order within 17 hrs 57 mins
Only 1 left in stock - order soon.
$$69.00 () Includes selected options. Includes initial monthly payment and selected options. Details
Price
Subtotal
$$69.00
Subtotal
Initial payment breakdown
Shipping cost, delivery date, and order total (including tax) shown at checkout.
Access codes and supplements are not guaranteed with used items.
Kindle app logo image

Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet, or computer - no Kindle device required.

Read instantly on your browser with Kindle for Web.

Using your mobile phone camera - scan the code below and download the Kindle app.

QR code to download the Kindle App

Follow the author

Something went wrong. Please try your request again later.

Linux System Programming: Talking Directly to the Kernel and C Library 1st Edition

4.2 4.2 out of 5 stars 17 ratings

There is a newer edition of this item:

{"desktop_buybox_group_1":[{"displayPrice":"$69.00","priceAmount":69.00,"currencySymbol":"$","integerValue":"69","decimalSeparator":".","fractionalValue":"00","symbolPosition":"left","hasSpace":false,"showFractionalPartIfEmpty":true,"offerListingId":"o2J2RHMnxzR9MDJ7%2BVn3IaTldTcWlpOGajy8BWb8r7D19Hg4NslJ%2B6cMnzEMMCVsixIURqcxsWsrp%2BMRwFdVavM1oL8PQ3HNF2OVWtrd%2FLn2D9dc3R2GuEDYAVw3zaWHAl8YtMTupMOW2aBzz8zH0KKx6VXljsSNV%2BqL80tFOZbujSrQVqiBCw%3D%3D","locale":"en-US","buyingOptionType":"NEW","aapiBuyingOptionIndex":0}, {"displayPrice":"$37.50","priceAmount":37.50,"currencySymbol":"$","integerValue":"37","decimalSeparator":".","fractionalValue":"50","symbolPosition":"left","hasSpace":false,"showFractionalPartIfEmpty":true,"offerListingId":"o2J2RHMnxzR9MDJ7%2BVn3IaTldTcWlpOGZPXxkqG%2B%2BHu6vV5X5htmoC14MIwhWA4t2ltwCMiZ7wODvoMjWD7uMpK%2F4eDP5IN5wath1R5mC4m%2B2YE8LkcGmjx%2BBKtqXu0Qo5OQAnCQKze86xSNp6qN6T6VMEZHOSU5L812PrSadc9kMiNqYz%2B7t6WzWAdVrJXJ","locale":"en-US","buyingOptionType":"USED","aapiBuyingOptionIndex":1}]}

Purchase options and add-ons

This book is about writing software that makes the most effective use of the system you're running on -- code that interfaces directly with the kernel and core system libraries, including the shell, text editor, compiler, debugger, core utilities, and system daemons. The majority of both Unix and Linux code is still written at the system level, and Linux System Programming focuses on everything above the kernel, where applications such as Apache, bash, cp, vim, Emacs, gcc, gdb, glibc, ls, mv, and X exist.

Written primarily for engineers looking to program (better) at the low level, this book is an ideal teaching tool for any programmer. Even with the trend toward high-level development, either through web software (such as PHP) or managed code (C#), someone still has to write the PHP interpreter and the C# virtual machine.
Linux System Programming gives you an understanding of core internals that makes for better code, no matter where it appears in the stack. Debugging high-level code often requires you to understand the system calls and kernel behavior of your operating system, too.

Key topics include:

  • An overview of Linux, the kernel, the C library, and the C compiler
  • Reading from and writing to files, along with other basic file I/O operations, including how the Linux kernel implements and manages file I/O
  • Buffer size management, including the Standard I/O library
  • Advanced I/O interfaces, memory mappings, and optimization techniques
  • The family of system calls for basic process management
  • Advanced process management, including real-time processes
  • File and directories-creating, moving, copying, deleting, and managing them
  • Memory management -- interfaces for allocating memory, managing the memory youhave, and optimizing your memory access
  • Signals and their role on a Unix system, plus basic and advanced signal interfaces
  • Time, sleeping, and clock management, starting with the basics and continuing through POSIX clocks and high resolution timers
With Linux System Programming, you will be able to take an in-depth look at Linux from both a theoretical and an applied perspective as you cover a wide range of programming topics.

Amazon First Reads | Editors' picks at exclusive prices

Editorial Reviews

Book Description

SYSTEM AND LIBRARY CALLS EVERY PROGRAMMER NEEDS TO KNOW

About the Author

Robert Love has been a Linux user and hacker since the early days. Heis active in, and passionate about, both the Linux kernel and GNOMEdesktop communities. His recent contributions to the Linux kernelinclude work on the kernel event layer and inotify. GNOME-relatedcontributions include Beagle, GNOME Volume Manager, NetworkManager,and Project Utopia. Currently Robert works in the Open Source ProgramOffice at Google.

As an author, Robert is responsible for Linux Kernel Development(SAMS), now in its second edition, and Linux System Programming(O'Reilly). He is also a coauthor of the fifth edition of O'Reilly'sLinux in a Nutshell. He's a Contributing Editor for Linux Journal, haswritten numerous articles, and has been invited to speak around theworld on Linux.

Robert graduated from the University of Florida with a B.A. inMathematics and a B.S. in Computer Science. Hailing from SouthFlorida, he currently calls Boston home.

Product details

  • Publisher ‏ : ‎ O'Reilly Media; 1st edition (September 28, 2007)
  • Language ‏ : ‎ English
  • Paperback ‏ : ‎ 392 pages
  • ISBN-10 ‏ : ‎ 0596009585
  • ISBN-13 ‏ : ‎ 978-0596009588
  • Item Weight ‏ : ‎ 1.37 pounds
  • Dimensions ‏ : ‎ 6.89 x 0.85 x 9.02 inches
  • Customer Reviews:
    4.2 4.2 out of 5 stars 17 ratings

About the author

Follow authors to get new release updates, plus improved recommendations.
Robert Love
Brief content visible, double tap to read full content.
Full content visible, double tap to read brief content.

Robert Love is an author, speaker, and engineer. He contributes to open source projects such as the Linux kernel, GNOME desktop, and Android mobile platform. Robert is Senior Director of Engineering at Google Cloud where builds planet-scale networking products. Robert earned a BA in Mathematics and a BS in Computer Science from the University of Florida. He lives in Boston.

Customer reviews

4.2 out of 5 stars
4.2 out of 5
17 global ratings

Top reviews from the United States

Reviewed in the United States on July 9, 2012
This book, at first glance looks like its only going to be applicable to linux. This isn't the case, it looks more at system level programming; the standard library; for unix including some parts of BSD. Any interface that is only for use on linux is explicitly stated so.

I found this book very easy to read and as other reviews say it mostly just lists the calls and describes them, but it does so very clearly and explains uses for them and the pros and cons of each. For me I got the book so I understood how linux worked under-the-hood and for this, this book does a very good job. It explains how the operating system communicates with the disc, how processes are implemented and how reading and writing onto the disc is optimised for performance and efficiency. I'm only half way though but I'm finding it very insightful and getting more out of it to what I thought I would.
One person found this helpful
Report
Reviewed in the United States on May 9, 2010
You need some background to get a real approach from this book...
Good to get some tips on how the system works an why, really good explanations for all the points exposed, isn't a "Linux Specific" book, mostly based on POSIX and when not is well distinguished, also include some peculiar calls from other OS.
One person found this helpful
Report
Reviewed in the United States on May 16, 2008
I have been programming C/C++ professionally since 1986 and was surprised at how much I've learned in the first few chapters.

One of the programs that I've been working on is an I/O intensive conversion from a legacy platform to Linux. The original code took about 8 minutes per gigabyte of data to process. I had worked and squeezed every trick I could think of and got the application down to 10 seconds per gigabyte. From what I learned in just the first few chapters, I was able to knock an additional 3% off the application performance. (It has been mentioned that I should state that I had been unaware of fread_unlocked and fwrite_unlocked before the book ... see comments for more detailed discussion).

When I finish the book, I fully intend on passing it over to one of our junior members so that they can benefit from it.
6 people found this helpful
Report
Reviewed in the United States on December 16, 2012
I bought this book because I would like to know more about Linux internals - and after reading it, I can say this book is awesome! I am not a native English speaker and I could read the text in its entirety with no need to use a dictionary, because of its simple language.

I strongly recommend this book for anyone who has a somewhat shallow knowledge of Linux and wants to learn more about Linux system calls and its performance tuning. It's very useful for every programmer.
Reviewed in the United States on December 18, 2007
nothing really useful in this book, too shallow to do anything with it, i like his other books though, but this one certainly is not good, if at all.
12 people found this helpful
Report
Reviewed in the United States on April 3, 2018
Fairly good book.
Reviewed in the United States on July 22, 2014
Good Book
Reviewed in the United States on November 15, 2007
Overall this book is very good. It is particularly well written and enjoyable to read, as are all of Robert Love's previous books.

However, it's fairly small and could go into more detail. For example, I would have liked a discussion of edge-triggered vs. level-triggered epoll() usage. The author mentions that edge-triggered needs a different programming style. What is it? Is it better? Regarding signal handling, the author hints at injecting signals into the event loop, but how could one do it concretely? On the subject of I/O buffering, not much is said except that standard I/O exists. But I'm here for the meat, and I want to know how to implement my own I/O buffering! Pretty much every chapter ends when the fun is about to begin.

I'm still hungry. Nevertheless, every system programmer for Linux should read this book. I hope for an expanded second edition.
40 people found this helpful
Report

Top reviews from other countries

Steve Jones
5.0 out of 5 stars Recommended
Reviewed in the United Kingdom on September 3, 2010
The first thing to say about this book is that it is very well written, very readable and with a good writing style. It is concise without being cryptic. It lends itself to being both a reference and a book that you could read from cover to cover. I wanted it as a refresher having done some Unix system programming, but with a lot a recent Windows work, for which it was ideal - I actually read the whole book (kindle version) in a day or so and found this was feasible and effective due to the writing quality. It doesn't discuss threads and sockets which is a pity, but there are other books which concentrate on these things. I only wish that some of the other books I've read recently had been as well written.
3 people found this helpful
Report