The Windows operating system provides mechanisms for facilitating communications and data sharing between applications. Collectively, the activities enabled by these mechanisms are called interprocess communications (IPC). Some forms of IPC facilitate the division of labor among several specialized processes. Other forms of IPC facilitate the division of labor among computers on a network.
The following IPC mechanisms are supported by Windows:
- Clipboard
- COM
- Data Copy
- DDE
- File Mapping
- Mailslots
- Pipes
- RPC
- Windows Sockets
Typically, applications can use IPC categorized as clients or servers.
- A client is an application or a process that requests a service from some other application or process.
- A server is an application or a process that responds to a client request.
Many applications act as both a client and a server, depending on the situation.
It is likely that an application will use several IPC mechanisms.
- Should be able to communicate with other applications running on
- other computers on a network
- the local computer
- other computers that may be running under different operating systems
- such as 16/32/64-bit Windows
- Linux or UNIX
The user of the application may have to choose
- the applications with which the application communicates
- or the application may find its cooperating partners