Professional Linux Programming


Book Description

Market_Desc: · The primary audience is professional programmers who need to solve a particular problem while creating or modify applications using Linux. A server software developer, real-time software engineer, graphical software desktop developer or web programmer will all find valuable practical information in this book.· The secondary audience includes system administrators, and students. Special Features: · Delivers on Programmer to Programmer Promise: This book delivers practical Linux programming advice for professionals tackling application and kernel development.· Pragmatic coverage: A strong focus is placed upon getting programmers up to speed with technology as quickly as possible with effective examples. The book covers how to actually build software on a Linux based system while making extensive use of the GNU automated build tools (autoconf/automake, etc.) and many other utilities which streamline the process of software development.· Linux Market share growing: Linux is expected to grab more than 25% of the $50.9 billion server market in 2006 (IDC). Linux runs more than 25% of all corporate servers, and 39% of large corporations now use Linux. IBM alone has more than 4,600 Linux customers. (BusinessWeek) About The Book: The book is sub-divided into four primary sections: Linux Nuts & Bolts, The Linux Kernel, The Linux Desktop, and Linux for the web. The sections address key topics that Linux programmers need to master along with newer challenges. Cross-compilation (the act of building software on one type of computer system with the intention that it run on a foreign target platform) is a classical issue for those working on Linux projects and has a number of generally accepted approaches for its solution. Contrast the classical cross-compilation with a newer issue of dynamic device insertion and removal ( hotplug ). The Project Utopia has seeded various technologies that allow for automated device detection and discovery to work correctly on Linux systems - in a way that rivals that already available to users of other common computing platforms. Today, a Linux user who plugs in a USB stick can reasonably expect to have it just work . Part of the Desktop Linux section will discuss how to work with these technologies (D-BUS, hal, udev, etc.) in order to put such technological advancement to practical use.




Pro Bash Programming


Book Description

The bash shell is a complete programming language, not merely a glue to combine external Linux commands. By taking full advantage of shell internals, shell programs can perform as snappily as utilities written in C or other compiled languages. And you will see how, without assuming Unix lore, you can write professional bash 4.0 programs through standard programming techniques. Complete bash coverage Teaches bash as a programming language Helps you master bash 4.0 features




Professional Linux Kernel Architecture


Book Description

Find an introduction to the architecture, concepts and algorithms of the Linux kernel in Professional Linux Kernel Architecture, a guide to the kernel sources and large number of connections among subsystems. Find an introduction to the relevant structures and functions exported by the kernel to userland, understand the theoretical and conceptual aspects of the Linux kernel and Unix derivatives, and gain a deeper understanding of the kernel. Learn how to reduce the vast amount of information contained in the kernel sources and obtain the skills necessary to understand the kernel sources.




Advanced Linux Programming


Book Description

This is the eBook version of the printed book. If the print book includes a CD-ROM, this content is not included within the eBook version. Advanced Linux Programming is divided into two parts. The first covers generic UNIX system services, but with a particular eye towards Linux specific information. This portion of the book will be of use even to advanced programmers who have worked with other Linux systems since it will cover Linux specific details and differences. For programmers without UNIX experience, it will be even more valuable. The second section covers material that is entirely Linux specific. These are truly advanced topics, and are the techniques that the gurus use to build great applications. While this book will focus mostly on the Application Programming Interface (API) provided by the Linux kernel and the C library, a preliminary introduction to the development tools available will allow all who purchase the book to make immediate use of Linux.




Linux for Developers


Book Description

Linux for Developers shows you how to start writing great code for Linux, whether you’re a Linux user with little or no coding experience, or an experienced Windows programmer. Leading IT trainer/author William “Bo” Rothwell begins with a clear and up-to-date review of modern open source software, including the licensing arrangements and tradeoffs all developers need to understand. He presents essential skills for both Linux command line and GUI environments, introducing text editors and other tools for efficient coding. Building on this knowledge, Rothwell introduces scripting tools such as Bash, Python, and Perl, as well as traditional object-oriented programming languages such as Java, C++, and C. Finally, he presents a full section on the powerful Git version control system, teaching skills you can use in Linux and many other environments. Access Linux systems, use GUIs, and work at the command line Learn how Linux organizes files and navigate its filesystem Use basic developer commands such as gzip and grep Edit programs with vi and vim, and explore alternative editors Perform basic sysadmin tasks that developers often need to handle Compare Linux languages to choose the best one for each task Write Bash scripts that interact with users or other shell features Program with Python and Perl: flow control, variables, and more Understand Linux features related to building C, C++, and Java programs Stay on top of complex projects with GIT revision control Work in GIT: staging, committing, branches, diffs, merges, and patches Manage local and remote GIT repositories This guide’s modular coverage helps you quickly access whatever information you need right now.




Programming Linux Games


Book Description

Explains how to build a scrolling game engine, play sound effects, manage compressed audio streams, build multiplayer games, construct installation scripts, and distribute games to the Linux community.







Beginning Linux?Programming


Book Description

The book starts with the basics, explaining how to compile and run your first program. First, each concept is explained to give you a solid understanding of the material. Practical examples are then presented, so you see how to apply the knowledge in real applications.




The Art of UNIX Programming


Book Description

The Art of UNIX Programming poses the belief that understanding the unwritten UNIX engineering tradition and mastering its design patterns will help programmers of all stripes to become better programmers. This book attempts to capture the engineering wisdom and design philosophy of the UNIX, Linux, and Open Source software development community as it has evolved over the past three decades, and as it is applied today by the most experienced programmers. Eric Raymond offers the next generation of "hackers" the unique opportunity to learn the connection between UNIX philosophy and practice through careful case studies of the very best UNIX/Linux programs.




How Linux Works, 2nd Edition


Book Description

Unlike some operating systems, Linux doesn’t try to hide the important bits from you—it gives you full control of your computer. But to truly master Linux, you need to understand its internals, like how the system boots, how networking works, and what the kernel actually does. In this completely revised second edition of the perennial best seller How Linux Works, author Brian Ward makes the concepts behind Linux internals accessible to anyone curious about the inner workings of the operating system. Inside, you’ll find the kind of knowledge that normally comes from years of experience doing things the hard way. You’ll learn: –How Linux boots, from boot loaders to init implementations (systemd, Upstart, and System V) –How the kernel manages devices, device drivers, and processes –How networking, interfaces, firewalls, and servers work –How development tools work and relate to shared libraries –How to write effective shell scripts You’ll also explore the kernel and examine key system tasks inside user space, including system calls, input and output, and filesystems. With its combination of background, theory, real-world examples, and patient explanations, How Linux Works will teach you what you need to know to solve pesky problems and take control of your operating system.