1. Intertask Communication
- Author
-
Xiaocong Fan
- Subjects
FIFO (computing and electronics) ,Computer science ,Distributed computing ,ComputerApplications_COMPUTERSINOTHERSYSTEMS ,Multilevel feedback queue ,computer.software_genre ,Unix signal ,Named pipe ,Anonymous pipe ,Queue ,Block (data storage) ,Queue management system ,business.industry ,Event (computing) ,Reading (computer) ,Message passing ,Process (computing) ,Inter-process communication ,Task (computing) ,Multilevel queue ,POSIX ,Asynchronous communication ,Embedded system ,Operating system ,Message broker ,Double-ended queue ,Priority queue ,business ,Message queue ,sigaction ,computer ,Computer network - Abstract
Similarly to message queues, pipes offer another mechanism for intertask communication. An unnamed pipe is typically used between processes that are related by either a parent-child relationship or a sibling relationship. A named pipe is a persistent file object, which is typically used between processes that are not necessarily related. Each pipe has two ends, one for writing and one for reading. The read operation on a pipe can be blocked if the pipe is empty, and the write operation on a pipe can be blocked if the available space is not sufficient to hold the data to be written. In a POSIX-compliant operating system implementation, the write operation on a pipe is atomic when the data to be written are no more than the maximum capacity defined by PIPE_BUF. The POSIX select operation allows a task to simultaneously block on several pipes until any one of them becomes ready for reading or writing.
- Published
- 2015
- Full Text
- View/download PDF