Interprocess Communication: Multiprocessor Messaging

June 10, 2002
Distributed applications without interprocess communication does not exist. On the other hand, a variety of interprocess communication (IPC) mechanisms for operating systems exists to support multiprocessor environments. But most tend to require...

Distributed applications without interprocess communication does not exist. On the other hand, a variety of interprocess communication (IPC) mechanisms for operating systems exists to support multiprocessor environments. But most tend to require significant amounts of programming effort unless communication across processors is relatively transparent.

Transparent message-based IPC systems are found in QNX Software Systems' (www.qnx.com) QNX RTOS, OSE Systems' (www.ose.com) OSE RTOS, and Kadak Products' (www.kadak.com) AMX RTOS. Other RTOSs support messaging systems, but they use them as a primary interprocess communication meth-od. QNX and OSE use task direct messaging, while AMX uses mailboxes that can be accessed by tasks. Communication across processors is handled via proxy tasks as shown in the figure.

A communications manager typically handles distribution of messages between proxy tasks on each processor. This allows messages to flow between the creator and consumer tasks without these tasks knowing about how the messages are passed or even how many hops the messages must make before they get to their destination.

Logical connections between tasks tend to be done on a logical basis using task or service names. The manager performs the mapping between names and actual task locations. Some implementations even allow tasks to be placed in between to filter or monitor messages passing between two tasks. This is very handy for debugging and providing message preprocessing services.

Messages can be forwarded over any kind of link, including TCP/IP. Still, transparent messaging differs significantly from sockets or other TCP/IP-related communication services. Domain name servers (DNS) provide location-independent address resolution, but a name must resolve to an IP address that's accessible to a message creator. A transparent messaging infrastructure has no such restriction. For example, a message may initially pass through a public TCP/IP network across a gateway and over a proprietary internal network.

Transparent Messaging
  • Integrated message link management
  • Scalable, multiprocessor, multiple-node architecture
  • Allows filter and debugging adapters
  • Supports fault tolerance
  • Messages can traverse different kinds of communication nodes
  • Supports integrated security and management services

Sponsored Recommendations

The Importance of PCB Design in Consumer Products

April 25, 2024
Explore the importance of PCB design and how Fusion 360 can help your team react to evolving consumer demands.

PCB Design Mastery for Assembly & Fabrication

April 25, 2024
This guide explores PCB circuit board design, focusing on both Design For Assembly (DFA) and Design For Fabrication (DFab) perspectives.

What is Design Rule Checking in PCBs?

April 25, 2024
Explore the importance of Design Rule Checking (DRC) in manufacturing and how Autodesk Fusion 360 enhances the process.

Unlocking the Power of IoT Integration for Elevated PCB Designs

April 25, 2024
What does it take to add IoT into your product? What advantages does IoT have in PCB related projects? Read to find answers to your IoT design questions.

Comments

To join the conversation, and become an exclusive member of Electronic Design, create an account today!