If you are already a proficient Unix programmer, this book will greatly facilitate your transition to Linux. You will also find helpful discussions of some tricky Unix topics, such as process and session groups, job control, and tty handling.
If you are a C programmer, but know neither Unix nor Linux, reading this book in its entirety and working with its numerous examples will give you a solid introduction to Linux programming.
If you are already a Linux programmer, this book's clear treatment of advanced and otherwise confusing topics will surely make your programming tasks easier.
Linux Application Development is divided into four parts. Part 1 introduces you to Linux(the operating system, licenses, and documentation. Part 2 covers the most important aspects of the development environment(the compilers, linker, loader, and debugging tools. Part 3-the heart of the book-describes the interface to the kernel and to the core system libraries, including discussion of the process model, file handling, directory operations, signal processing (including the Linux signal API), job control, the POSIX( termios interface, sockets, and the Linux console. Part 4 describes important development libraries with interfaces more independent of the kernel. The source code from the book is freely available at http://www.awl.com/cseng/books/lad/.
Johnson and Troan are Linux developers for Red Hat software, a company that distributes and supports the Linux operating system. This book will appeal to beginning programmers trying to understand how operating systems work in a general way as well as to advanced programmers porting software from UNIX systems to Linux. This book is recommended for large public and all university libraries.