A core area of Unix/Linux systems programming is learning how to correctly handle the all-important fork(2) system call, to create a new process on the system. Using the fork(2) correctly takes a lot of deep insights. This chapter helped the systems developer by providing several key rules of fork. The concepts learned—the rules, working with data, open files, security issues, and so on—were revealed via several code examples. A lot of details on how to wait for your children processes correctly were discussed. What exactly are orphans and zombie processes, and why and how we should avoid zombies was dealt with too.
-
Book Overview & Buying
-
Table Of Contents
Hands-On System Programming with Linux
By :
Hands-On System Programming with Linux
By:
Overview of this book
The Linux OS and its embedded and server applications are critical components of today’s software infrastructure in a decentralized, networked universe. The industry's demand for proficient Linux developers is only rising with time. Hands-On System Programming with Linux gives you a solid theoretical base and practical industry-relevant descriptions, and covers the Linux system programming domain. It delves into the art and science of Linux application programming— system architecture, process memory and management, signaling, timers, pthreads, and file IO.
This book goes beyond the use API X to do Y approach; it explains the concepts and theories required to understand programming interfaces and design decisions, the tradeoffs made by experienced developers when using them, and the rationale behind them. Troubleshooting tips and techniques are included in the concluding chapter.
By the end of this book, you will have gained essential conceptual design knowledge and hands-on experience working with Linux system programming interfaces.
Table of Contents (21 chapters)
Preface
Linux System Architecture
Resource Limits
Dynamic Memory Allocation
Linux Memory Issues
Debugging Tools for Memory Issues
Process Credentials
Process Capabilities
Process Execution
Process Creation
Signaling - Part I
Signaling - Part II
Multithreading with Pthreads Part I - Essentials
Multithreading with Pthreads Part II - Synchronization
Multithreading with Pthreads Part III
CPU Scheduling on Linux
Advanced File I/O
Troubleshooting and Best Practices
Other Books You May Enjoy