Interprocess Communications in Linux

Interprocess Communications in Linux

  • ただいまウェブストアではご注文を受け付けておりません。 ⇒古書を探す
  • 製本 Paperback:紙装版/ペーパーバック版/ページ数 512 p.
  • 言語 ENG
  • 商品コード 9780130460424
  • DDC分類 005.282

Full Description


Understanding the concepts of processes and interprocess communications (IPC) is fundamental to developing software for Linux. This book zeroes right in on the key techniques of processes and interprocess communication - from primitive communications to the complexities of sockets. It covers every aspect of UNIX/Linux interprocess communications in sufficient detail to allow experienced programmers to begin writing useful code immediately. The book also includes a precise description of the basics of network programming that make this one of the best introductory books on UNIX/Linux network programming using sockets. Grey explains exactly what processes are, how they are generated, how they can access their own environments, and how they can communicate with other processes. From beginning to end, the book truly leads you through the "nooks and crannies" of UNIX - making you a dramatically more effective programmer. Rave reviews for UNIX companion volume-- "I really like this book!!! Concepts that I only vaguely understood now make complete sense to me! The sample code and exercises are so good, they seem to clamp down on the concepts like a vise grip..." S. Lee Henry, Johns Hopkins University.

Contents

Introduction. Acknowledgments. 1. Programs and Processes. Introduction. Library Functions. System Calls. Linking Object Code. Managing Failures. Executable File Format. System Memory. Process Memory. The u Area. Process Memory Addresses. Creating a Process. Summary. Key Terms and Concepts. 2. Processing Environment. Introduction. Process ID. Parent Process ID. Process Group ID. Permissions. Real and Effective User and Group Ids. File System Information. File Information. Process Resource Limits. Signaling Processes. Command-Line Values. Environment Variables. The/proc Filesystem. Summary. Key Terms and Concepts. 3. Using Processes. Introduction. The fork System Call Revisited. exec's Minions. Using fork and exec Together. Ending a Process. Waiting on Processes. Summary. Key Terms and Concepts. 4. Primitive Communications. Introduction. Lock Files. Locking Files. More About Signals. Signal and Signal Management Calls. Summary. Key Terms and Concepts. 5. Pipes. Introduction. Unnamed Pipes. Named Pipes. Summary. Key Terms and Concepts. 6. Message Queues. Introduction. IPC System Calls: A Synopsis. Creating a Message Queue. Message Queue Control. Message Queue Operations. A Client-Server Message Queue Example. Message Queue Class. Summary. Key Terms and Concepts. 7. Semaphores. Introduction. Creating and Accessing Semaphore Sets. Semaphore Control. Semaphore Operations. Semaphore Class. Summary. Key Terms and Concepts 8. Shared Memory. Introduction. Creating a Shared Memory Segment. Shared Memory Control. Shared Memory Operations. Using a File as Shared Memory. Shared Memory Class. Summary. Key Terms and Concepts. 9. Remote Procedure Calls. Introduction. Executing Remote Commands at a System Level. Executing Remote Commands in a Program. Transforming a Local Function Call into a Remote Procedure. Debugging RPC Applications. Using RPCGEN to Generate Templates and a MAKEFILE. Encoding and Decoding Arbitrary Data Types. Using Broadcasting to Search for an RPC Service. Summary. Key Terms and Concepts. 10. Sockets. Introduction. Communication Basics. IPC Using Socketpair. Sockets: The Connection-Oriented Paradigm. Sockets: The Connectionless Paradigm. Multiplexing I/O with select. Peeking at Data. Out of Band Messages. Summary. Key Terms and Concepts. 11. Threads. Introduction. Creating a Thread.Exiting a Thread. Basic Thread Management. Thread Attributes. Scheduling Threads. Using Signals in Threads. Thread Synchronization. Thread-Specific Data. Debugging Multithreaded Programs. Summary. Nomenclature and Key Concepts. Appendix A. Using Linux Manual Pages. Manual Page Sections. Manual Page Format. Standard Linux System Calls. Appendix B. UNIX Error Messages. Appendix C. RPC Syntax Diagrams. Introduction. RPC Definitions. RPC Keywords. Some RPC Examples. Appendix D. Profiling Programs. Introduction. Sample Program for Profiling. Generating Profile Data. Viewing and Interpreting Profile Data. Appendix E. Bibliography. Index.