Related products:
Linux Kernel Development (2nd Edition)
Linux Application Development (2nd Edition)
Linux Programming by Example : The Fundamentals
Linux Device Drivers, 3rd Edition
The Linux TCP/IP Stack: Networking for Embedded Systems (Networking Series) (Networking Series)
|
General
GNU/Linux Application Programming (Programming Series)
Format: Paperback
Author: M. Tim Jones
ReleaseDate: 02 February, 2005
Publisher: Charles River Media
Rating:
A Useful Book!
This book covers a ton of stuff, some easy, some complex, but all useful. I've read several books on programming, and several on Linux.
I would recommend this book to any programmer wanting to know how to use makefiles, autoconfig, file handling, programming with sockets or pipes, multi-threaded programming, awk,sed, dynamic libaries,flex bison, the list goes on and on.
I don't know that this is introductory, but parts are, and the book can be grown into. It's arranged much better then my list of topics above.
I liked this book so much that I logged onto amazon just to write this review. It is a great book.
Gets you up and running with Linux programming
The author starts with the basic architecture of the Linux operating system, and delves into the details of each part: scheduler, memory manager, virtual file system, network, ipc and init. All the topics that one needs to read to come up to speed with Linux programming, development and maintenance, scripting and even tuning are covered in this book. The reader starts with an overview of what the Linux operating system looks like "under the hood", and is taken thru a series of sections that cover application development using each section of the Linux kernel. Overview application programming, performance analysis and debugging using various GNU tools such as the the GCC complier, make, gcov and gprof are given first and are used throughout the book by the author to further demonstrate the features and benefits of the available GNU tools.
By now, the reader is presented with the necessary tools needed to create application, and is not time to delve into specific programming techniques and API's. The book starts with simple file handling API's and examples, and goes into more complicated topics such as:
*Linux Pipes
*Sockets programming
*Multi-process development and the Linux process model
*Multi-threaded development and the Linux threading model
*Messages Queues
*Synchronization and Semaphores
*Shared memory programming
Even though each of these topics are very complicated and an entire text could easily dedicated to it, the author with elegance covers each topic such that the reader could get an overview of what is at stake. Each topic is rather short, and very well written with examples and a step-by-step instruction of how to write simple programs. Each chapter is like a short and sweet introduction to the topic at hand. One of my favorite chapters is, "Synchronization with Semaphores," in which the author further illustrates the point using sequence diagrams of events, elaborated examples and tips on how-to's.
The chances are that programming in a high-level language such as C is not enough, and one needs to compliment his/her application[s] with scripts and many other available Linux tools and commands. The last section of the book is dedicated to what some people might call odd-and-ends, but to me, they are as important as any other topics in this book. Bash, Sed, awk, flex and bison are some of the scripting languages that are covered. As with the previous sections of the text the author covers each topic using examples plus a step-by-step depiction of each example.
If you are new to the Linux programming environment or you need a refresher text like I did, you will find this book very useful. Tim does a fantastic job covering a broad topic, and doing so with such ease and elegance. The examples are priceless, and the CD at the end of the book has complete source code to the examples given in the book.
.
Great introduction to Linux Application programming
If you know something about programming but want to know how to use those skills in the GNU/Linux environment this is one of the best books available. Written for application developers, this book is a great source of information on working with the GNU/Linux architecture and process model. The coverage is thorough and filled with coding examples to illustrate the concepts. To make your life easier it even has all the coding examples included on a CD in the back of the book. Areas examined include the GNU compiler, automake, shells, scripting, creating and using libraries, named pipes, semaphores, sockets, and shared memory. The book wraps up with a section on debugging and testing your application. GNU/Linux Application Programming is an excellent source of information for the new to intermediate GNU/Linux programmer and highly recommended.
|
|