Synopses & Reviews
As Linux continues to grow in popularity, there has never been more of a need to understand how to develop for this platform. Rather than focusing on a particular language or development technique, Professional Linux Programming looks at the different development environments within Linux—the kernel, the desktop, and the web—and then demonstrates best practices, tools, and techniques for integrating applications with the OS as a whole. This book is essential for understanding the nuances that differentiate programming for Linux from programming for any other platform. After beginning with simple shell scripts, the reader quickly moves on to the more advanced topics like software drivers and the graphical interface.
The wide variety of tools that you can use to build application software, utilities, and even the Linux kernel itself are covered. You'll also explore the unique components of a Linux system and delve into the inner workings of the system. And you'll find out how to use Linux with the web by writing software for the LAMP (Linux, Apache, MySQL, Perl/Python) stack. You'll then be able to apply this information to streamline software development while incorporating cutting-edge features and functionality.
What you will learn from this book
- How to use tools such as compilers, debuggers, and Software Configuration Management
Ways to interact with Linux systems through network interfaces, graphical user environments, and LAMP stacks
Techniques for building software for different compatible platforms
Tips for utilizing the GNU automated build for faster development
Steps for using emulation and virtualization technologies for kernel development and application testing
How to write your own GNOME software and powerful web applications
Who this book is for
This book is for professional programmers who want to understand the internals of a typical Linux system. It is also for those who want to solve a particular problem while creating or modifying applications using Linux.
- This book is broken into four primary sections addressing key topics that Linux programmers need to master: Linux nuts and bolts, the Linux kernel, the Linux desktop, and Linux for the Web
- Effective examples help get readers up to speed with building software on a Linux-based system while using the tools and utilities that contribute to streamlining the software development process
- Discusses using emulation and virtualization technologies for kernel development and application testing
- Includes useful insights aimed at helping readers understand how their applications code fits in with the rest of the software stack
- Examines cross-compilation, dynamic device insertion and removal, key Linux projects (such as Project Utopia), and the internationalization capabilities present in the GNOME desktop
About the Author
is a 25-year-old British-born Linux kernel engineer, embedded systems specialist, and author who lives and works in the United States for Red Hat. Jon made UK history by becoming one of the youngest University students the country had ever seen, at the tender age of just 13. Having been through college twice by the time his peers were completing their first time around, and having been published over 100 times in a wide range of technical magazines, journals and books, Jon went on to work for a variety of multinational technology companies. He has worked extensively in the field of Embedded Systems, Enterprise Linux and Scientific instrumentation and has helped design anything and everything from Set Top Boxes to future NMR (MRI) imaging platforms.
When not working on Enterprise Linux software for Red Hat, Jon likes to drink tea on Boston Common and read the collective works of Thomas Paine and other great American Revolutionaries of a bygone age. He dreams of a time when the world was driven not by electrons, but by wooden sailing ships and a universal struggle for the birth of modern nations. He plays the violin, and occasionally sings in choral ensembles, for which he has won several awards. For relaxation, Jon enjoys engaging in a little rock climbing. He lives in Cambridge, Massachusetts, just across the river Charles from historic Boston, and enjoys every minute of it.
Jon has extensive experience in speaking about and training people to use a wide variety of Linux technologies and enjoys actively participating in many Linux User Groups the world over.
Richard Blum has worked for over 18 years for a large U.S. government organization as a network and systems administrator. During this time he has had plenty of opportunities to work with Microsoft, Novell, and of course, UNIX and Linux servers. He has written applications and utilities using C, C++, Java, C#, Visual Basic, and shell script.
Rich has a Bachelors of Science degree in Electrical Engineering, and a Masters of Science degree in Management, specializing in Management Information Systems, from Purdue University. He is the author of several books, including “sendmail for Linux” (2000, Sams publishing), “Running qmail” (2000, Sams publishing), “Postfix” (2001, Sams Publishing), “Open Source E-mail Security” (2001, Sams Publishing), “C# Network Programming” (2002, Sybex), “Network Performance Open Source Toolkit” (2003, John Wiley & Sons), and “Professional Assembly Language Programming” (2005, Wrox).
Table of Contents
Chapter 1: Working with Linux.
Chapter 2: Toolchains.
Chapter 3: Portability.
Chapter 4: Software Configuration Management.
Chapter 5: Network Programming.
Chapter 6: Databases.
Chapter 7: Kernel Development.
Chapter 8: Kernel Interfaces.
Chapter 9: Linux Kernel Modules.
Chapter 10: Debugging.
Chapter 11: The GNOME Developer Platform.
Chapter 12: The FreeDesktop Project.
Chapter 13: Graphics and Audio.
Chapter 14: LAMP.