This eBook includes the following formats, accessible from your Account page after purchase:
EPUB
The open industry format known for its reflowable content and usability on supported mobile devices.
PDF
The popular standard, used most often with the free Acrobat® Reader® software.
This eBook requires no passwords or activation to read. We customize your eBook by discreetly watermarking it with your name, making it uniquely yours.
This eBook includes the following formats, accessible from your Account page after purchase:
EPUB
The open industry format known for its reflowable content and usability on supported mobile devices.
PDF
The popular standard, used most often with the free Acrobat® Reader® software.
This eBook requires no passwords or activation to read. We customize your eBook by discreetly watermarking it with your name, making it uniquely yours.
Unlock the Secrets of Linux System Programming and Take Your Coding Skills to the Next Level
The answers to these questions, and more, are in Linux Application Programming by Example, Second Edition. Purposely avoiding Too Much Information (TMI) this book tells you exactly what you need to know--no more and no less--about the fundamental Linux system programming APIs.
Following the latest POSIX standard, author Arnold Robbins explains how the basic file, process, IPC and networking APIs work. Wherever possible, he demonstrates the use of the APIs with code drawn from real programs (V7 Unix, BSD Unix, and GNU). When not possible, the author provides small, clearly documented and annotated, standalone example programs of his own.
The author focuses on both high-level principles and "under the hood" techniques. Along the way, he carefully addresses real-world issues like performance, portability, and robustness.
Each chapter closes with exercises, ranging from coding problems to thought experiments, to help you cement your understanding of the material covered. And each chapter has been thoroughly revised and updated for this edition, and two completely new chapters have been added.
All of the code presented in the book is available for download from GitHub, so that you can compile, run, and modify the programs yourself.
Coverage includes:
Just learning to program? Switching from Windows or macOS? Already developing with Linux but interested in exploring the system call interface further? No matter which, quickly and directly, this book will help you master the fundamentals needed to build serious Linux software.
If you're ready to leave the cocoon of high-level language programming and get closer to the metal, this book is for you!
Foreword
Preface
Part I: Files and Users
Chapter 1: Introduction
Chapter 2: Arguments, Options, and the Environment
Chapter 3: User-Level Memory Management
Chapter 4: Files and File I/O
Chapter 5: Directories and File Metadata
Chapter 6: General Library Interfaces--Part 1
Chapter 7: Putting It All Together: ls
Chapter 8: Filesystems and Directory Walks
Part II: Processes, Networking, and Internationalization
Chapter 9: Process Management and Pipes
Chapter 10: Signals
Chapter 11: Permissions and User and Group ID Numbers
Chapter 12: Resource Limits
Chapter 13: General Library Interfaces--Part 2
Chapter 14: Sockets and Basic Networking
Chapter 15: Internationalization and Localization
Chapter 16: Extended Interfaces
Part III: Debugging and Final Project
Chapter 17: Debugging
Chapter 18: A Project That Ties Everything Together
Part IV: Appendices
Appendix A: Teach Yourself Programming in Ten Years
Appendix B: Caldera Ancient UNIX License
Appendix C: GNU General Public License
Appendix D: License for the One True Awk
Appendix E: License for 4.4 BSD Code
Index