The Linux Programmer¿s Toolbox and over 2 million other books are available for Amazon Kindle . Learn more
  • RRP: £30.99
  • You Save: £0.93 (3%)
FREE Delivery in the UK.
Only 1 left in stock (more on the way).
Dispatched from and sold by Amazon.
Gift-wrap available.
The Linux Programmer's To... has been added to your Basket
Condition: Used: Good
Comment: Used Good condition book may have signs of cover wear and/or marks on corners and page edges. Inside pages may have highlighting, writing and underlining. All purchases eligible for Amazon customer service and a 30-day return policy.
Have one to sell?
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See this image

The Linux Programmer's Toolbox (Prentice Hall Open Source Software Development) Paperback – 6 Mar 2007

See all 3 formats and editions Hide other formats and editions
Amazon Price New from Used from
Kindle Edition
"Please retry"
"Please retry"
£22.79 £12.47
£30.06 FREE Delivery in the UK. Only 1 left in stock (more on the way). Dispatched from and sold by Amazon. Gift-wrap available.

Product details

  • Paperback: 656 pages
  • Publisher: Prentice Hall; 1 edition (6 Mar. 2007)
  • Language: English
  • ISBN-10: 0132198576
  • ISBN-13: 978-0132198578
  • Product Dimensions: 17.8 x 3.3 x 23.1 cm
  • Average Customer Review: 5.0 out of 5 stars  See all reviews (2 customer reviews)
  • Amazon Bestsellers Rank: 1,034,861 in Books (See Top 100 in Books)
  • See Complete Table of Contents

More About the Author

Discover books, learn about writers, and more.

Product Description

From the Back Cover

Master the Linux Tools That Will Make You a More Productive, Effective Programmer

The Linux Programmer's Toolbox helps you tap into the vast collection of open source tools available for GNU/Linux. Author John Fusco systematically describes the most useful tools available on most GNU/Linux distributions using concise examples that you can easily modify to meet your needs.

You'll start by learning the basics of downloading, building, and installing open source projects. You'll then learn how open source tools are distributed, and what to look for to avoid wasting time on projects that aren't ready for you. Next, you'll learn the ins and outs of building your own projects. Fusco also demonstrates what to look for in a text editor, and may even show you a few new tricks in your favorite text editor.

You'll enhance your knowledge of the Linux kernel by learning how it interacts with your software. Fusco walks you through the fundamentals of the Linux kernel with simple, thought-provoking examples that illustrate the principles behind the operating system. Then he shows you how to put this knowledge to use with more advanced tools. He focuses on how to interpret output from tools like sar, vmstat, valgrind, strace, and apply it to your application; how to take advantage of various programming APIs to develop your own tools; and how to write code that monitors itself.

Next, Fusco covers tools that help you enhance the performance of your software. He explains the principles behind today's multicore CPUs and demonstrates how to squeeze the most performance from these systems. Finally, you'll learn tools and techniques to debug your code under any circumstances.

Coverage includes

  • Maximizing productivity with editors, revision control tools, source code browsers, and "beautifiers"
  • Interpreting the kernel: what your tools are telling you
  • Understanding processes–and the tools available for managing them
  • Tracing and resolving application bottlenecks with gprof and valgrind
  • Streamlining and automating the documentation process
  • Rapidly finding help, solutions, and workarounds when you need them
  • Optimizing program code with sar, vmstat, iostat, and other tools
  • Debugging IPC with shell commands: signals, pipes, sockets, files, and IPC objects
  • Using printf, gdb, and other essential debugging tools



About the Author 

Chapter 1 Downloading and Installing Open Source Tools
Chapter 2 Building from Source
Chapter 3 Finding Help
Chapter 4 Editing and Maintaining Source Files
Chapter 5 What Every Developer Should Know about the Kernel
Chapter 6 Understanding Processes
Chapter 7 Communication between Processes
Chapter 8 Debugging IPC with Shell Commands
Chapter 9 Performance Tuning
Chapter 10 Debugging

About the Author

John Fusco is a software developer for GE Healthcare who specializes in Linux applications and device drivers. He has worked on Unix software for more than ten years and has been developing applications for Linux since kernel version 2.0. He has written articles for Embedded Systems Programming and Linux Journal.

Customer Reviews

5.0 out of 5 stars
5 star
4 star
3 star
2 star
1 star
See both customer reviews
Share your thoughts with other customers

Most Helpful Customer Reviews

2 of 2 people found the following review helpful By Craig on 20 April 2008
Format: Paperback Verified Purchase
I had this book in my "saved for later" section of the shopping cart on amazon for nearly a year. It got on my list after a favourable review in a linux magazine -- i forget which one now.

Eventually i took the plunge and bought it. Wow! This has been the best Linux / Unix programming reference since i bought the APUE (Advanced Programming in the Unix Environment) book by Stevens / revised & updated by Rago.

This book is not far off of the APUE book in calibre. I seriously mean that. It's not quite there -- owing mostly to the fact APUE is about 3x times the number of pages and thusly more informative.

If you're looking for a top notch, hands on tutorial with pretty much all tools a C/C++ dev on Linux will need to be familiar with -- this is it!

This book gives best results to the reader with at least a little experience & familiarity with C programming & Linux -- it's a text on the tools to help a programmer, not "My first steps in C dev on Linux".

My day job is sysadmin, not developer, but i keep sharp on my c skills in order that i can best support my production environment, and the developers feeding code into that env. This book just earned itself a spot on my desk.

Can't recommend this book highly enough, it does exactly what it says on the cover. I will be looking for more titles from John Fusco as the author has a talent for technical writing, i never lost interest for a second.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
0 of 1 people found the following review helpful By ratuk on 13 April 2009
Format: Paperback Verified Purchase
"Toolbox" doesn't do justice to this book. More an aerospace standard maintenance facility with a large staff of eager expert technicians.

The information provided on the kernel and techniques for actually using the tools effectively, in themselves, make the book essential. It may not cover every tool you ever want but it's pretty close and you won't regret buying it anyway.

This and "Embedded Linux Primer" should be first on every embedded Linux developer's reading list.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again

Most Helpful Customer Reviews on (beta) 11 reviews
15 of 16 people found the following review helpful
How to learn Linux 1 Jun. 2007
By topoman - Published on
Format: Paperback
This book is aimed at the person who has learned his way around Linux at the user level and now wants to look under the covers. It's extremely comprehensive - from how to add a Linux application that wasn't in your your initial distribution - whether you can use the binary or need to rebuild it from source - through basic facts on the kernel, devices and their drivers, processes and debugging tools. There has been a need for a book that addresses readers who do know something about computers, but not much Linux. This book fills that need extremely well.
20 of 23 people found the following review helpful
I'm awestruck 15 Mar. 2007
By Anthony Lawrence - Published on
Format: Paperback
No, really. The first thing that impressed me is how much information the author packed into 600 odd pages. It takes skill to do that well and still be readable and interesting.

A programmer moving from anything to Linux would find this a simply wonderful roadmap and introduction, but I was surprised to notice that this would also be very good for non-programmers: sys admin or high level support types will like this book also.

There's good stuff here: the subsection of Chapter Two that deals with things that can go wrong during compiles is the best treatment of that I've ever read. Chapter 5 is titled "What every developer should know about the kernel", but most of it is things every admin/support person should know too. Of course there's much more: this is very thorough and complete.

Definitely recommended.
3 of 3 people found the following review helpful
A very good reference book to Linux developers 2 Sept. 2008
By Jason Ni - Published on
Format: Paperback
It is a very good reference to Linux developers, by providing the most common seen or most used techniques in Linux developments. It covers from the most used tools, including source version control, source code edit, debug,etc, to a brief introduction on the Linux kernel architecture and memory management, that is essential to any programmers who want to know the "evil" inside the kernel.

2 of 2 people found the following review helpful
The Best Book for Linux Programmers, Ever. 8 Sept. 2011
By Chris G. Sebastian - Published on
Format: Paperback Verified Purchase
To a new user, Linux is much like a dark room. There are lots of things in the room, but you can't really see them, and you don't know what they are, or what they do. You learn primarily by feeling your way around. Very often, Linux can be frustrating because you can't find what you want, or you bump into something sharp or stub your toe. Occasionally, you stumble upon something valuable...

That's how I learned Linux; I stumbled around long enough to discover many of the important pieces. But, boy! it sure took a long time, and I ended up with an awful lot of stubbed toes!

Well, if Linux is a dark room, then The Linux Programmer's Toolbox is a Wicked Lasers Torch Flashlight with a built-in GPS navigation system. This book clearly explains all the important pieces you need to know about, and shows how they all fit into the Big Picture. If you are a Linux programmer, or even just a Linux user, this book will significantly improve your life. No joke!

I managed to learn many of the things in this book by trial and error over the course of many, many years. I had to use the "stumble upon" approach because I never found a book that gave such a good overview of the available Linux tools, and how to use them. Don't get me wrong -- I read a *lot* of Linux books and documentation; but most of them just gave shallow, unconnected overviews of different Linux commands, or they didn't explain how the various pieces fit together to form one coherent system.

For example, I never found a book that gave a helpful overview of compiling Linux software (like source code I download from, and so for years, as soon as I hit an obstacle while building a program, I didn't know what to do. It was not until I created my own programs and my own build scripts that I actually figured out how to properly build software. In other words, I had to first become a Linux "Developer" before I stumbled upon all the pieces I needed to be a fully functional Linux "User". It is exactly this "chicken and egg" problem that makes Linux so difficult for newcomers to learn.

The Linux Programmer's Toolbox covers the topic of building Linux software in depth in Chapter 2 - Building from Source. The chapter also goes into valuable topics that even I did not know much about, such as good alternatives to the 'make' utility. Also, this chapter has the best introduction to GNU make I have ever found.

The Linux Programmer's Toolbox has ten chapters altogether, each of which is amazingly valuable, even for experienced users. I personally did not know much of the information in chapters 5 through 10, which are about the Linux Kernel, Linux facilities for inter-process communication, performance tuning, and advanced debugging. For me, this book was an extremely interesting and valuable read. I wish I had this book a long, long time ago! It would have saved me countless years, tears, and stubbed toes.

Read this book! It will save you years of stumbling around in the dark! Your toes will thank you.

~Christopher Sebastian
Phoenix, Arizona
all the linux 16 Mar. 2007
By W Boudville - Published on
Format: Paperback
Fusco gathers into one easy to read book the many open source tools available under linux. Cumulatively written by hundreds (if not thousands) of contributors. You might pause a moment when reading the text, to reflect on the amazing amount of code that is freely available under linux.

The tools are meant for two types of readers. The system administrator. The programmer. For the sysadmin, there are tools for install packages. Very practical, since updated packages often have bug fixes or new functionalities. This includes rpm, which is used by Red Hat, Suse and other linux distributions. But dpkg is also explained. This is used by Debian and Ubuntu. For the programmer, tools include ways to share memory between processes, as well as communicating between them via semaphores or message queues.

The book reflects a general approach taken by Fusco. Tools are described across the popular linux distributions. The book can be used by you, regardless of which distribution you favour.

There is a stylistic difference between the material in the book and a corresponding text on Microsoft's offerings. The latter often has a rich graphical framework, like Visual Studio. In contrast, significant portions of this book refer to tools used at the command line. Reflecting linux's heritage in unix. Which means that portions of the text might be initially more complex to master.
Were these reviews helpful? Let us know