Oninit Logo
The Down System Specialists
Partnerships Contact

Inter-Process Communication

All multitasking operating systems provide mechanisms that allow processes to communicate with one another. This communication could be between the running process and the operating system, or between two processes. Although the various methods can be given different names they all fall into three basic categories.

Message Queues

Message queues provide a generalised message transfer scheme. Processes wishing to communicate use a message queue, each queue having it's own unique identifier. Each message passed along the queue is in a format defined by the operating system or the communicating processes.

The message queues are buffered and messages are delivered in same sequence that they are sent. Besides message queues similar functionality is provided by pipes, streams and fifos.

Event Flags

Event flags notify a process that something has happened. The flag can be set by either of the communicating processes. Although possible, data is rarely sent via the event flags. When flags are used to control resources they are more usually referred to as a semaphores

Shared Resource

Shared resources are the most common method of exchanging data between processes. Although there are many ways to provide this exchange the most common is to use files to hold the data to be shared. By mapping an area of memory into the process's address space it is possible for processes to transfer the data via 'shared memory'.

To discuss how Oninit ® can assist please call on +1-913-674-0360 or alternatively just send an email specifying your requirements.