2.1 An Overview of Operating System IPC Mechanisms

I l @ ve RuBoard

Networked applications require interprocess communication (IPC) mechanisms to enable clients and servers to exchange information. The IPC mechanisms provided by operating systems can be classified into two general categories:

  • Local IPC ” Certain IPC mechanisms, such as shared memory, pipes, UNIX-domain sockets, doors, or signals, enable communication only between entities that are collocated on the same computer [Ste99].

  • Remote IPC ” Other IPC mechanisms, such as Internet-domain sockets [Ste98], X.25 circuits, and Win32 Named Pipes, support communication between entities that can be collocated or distributed across a network.

Although networked applications are largely concerned with remote IPC mechanisms, the patterns and ACE wrapper facades we present also apply to most local IPC mechanisms.

A complete discussion of OS IPC mechanisms and their APIs is beyond the scope of this book. We recommend that you consult [Rag93, MBKQ96, Ric97, Sol98, Ste98, Ste99] for complete coverage. This chapter focuses on the Socket API and TCP/IP since they are the most common IPC API and networking protocol, respectively. We show how hard it is to rely on the Socket API when writing portable and robust programs for heterogeneous platforms. Chapters 3 and 4 then illustrate how ACE uses C++ and patterns to resolve these problems.

I l @ ve RuBoard


C++ Network Programming
C++ Network Programming, Volume I: Mastering Complexity with ACE and Patterns
ISBN: 0201604647
EAN: 2147483647
Year: 2001
Pages: 101

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net