Message Passing Systems (Part 1)

Message Passing Systems (Part 1)

Introduction to Message Passing Systems

In this lecture, we will be studying message passing systems as a form of interprocess communication. We will compare it with shared memory systems and discuss its usefulness in distributed environments.

Message Passing vs Shared Memory Systems

  • Shared memory systems involve two processes communicating by sharing a portion of memory in the address space of one process.
  • Message passing provides a mechanism for processes to communicate and synchronize their actions without sharing the same address space. It is particularly useful in distributed environments where communicating processes may reside on different computers connected by a network.
  • Unlike shared memory systems, message passing does not involve sharing any region of memory between processes.
  • While shared memory is useful when two processes lie within the same system, message passing is more suitable for distributed environments where there is no shared address space.

Conclusion

Message passing systems provide an alternative form of interprocess communication that does not require shared memory between processes. It is particularly useful in distributed environments where communicating processes may reside on different computers connected by a network.

Message Passing System

In this section, we will learn about message passing systems and how they work.

Communication between Processes in Different Systems

  • Two processes from different systems need to communicate.
  • It is difficult to create a region of shared memory that can be accessed by these two processes.
  • Message passing system can be used where the communicating processes will communicate via some kind of messages, which will be sent from one process to another process.

Operations in Message Passing System

  • The message passing facility provides at least two operations, which are send message and receive message.
  • Send message operation allows the process to send the message to the other process to which it wants to communicate.
  • Receive message operation allows the recipient process to receive the message from the sending process.

Fixed Size vs Variable Size Messages

  • The length of messages being sent can be either fixed or variable size.
  • Fixed size means that the size of messages will be fixed and cannot exceed that size. Variable size means that the size of messages can vary.
  • In fixed-size messaging, system-level implementation is straightforward but makes programming more difficult.

Fixed and Variable Size Messages

In this section, the speaker discusses the differences between fixed and variable size messages in programming.

Programming Task Difficulty

  • The task of programming becomes more difficult with fixed size messages.
  • Variable size messages require a more complex system level implementation but make the programming task simpler.

Message Size

  • Fixed size messages have a set message size that cannot be varied.
  • Variable size messages allow for versatile message sizes, making programming easier.

Communication Link Between Processes

In this section, the speaker explains how processes can communicate with each other through a communication link.

Sending and Receiving Messages

  • Processes must send and receive messages to communicate with each other.
  • A communication link must exist between processes for them to communicate effectively.

Logical Implementation of Link

  • There are several methods for logically implementing a link between processes, such as direct or indirect communication, synchronous or asynchronous communication, automatic or explicit buffering.
  • Issues related to features like naming, synchronization, and buffering must also be considered when implementing a link between processes.

Methods for Logically Implementing a Link

In this section, the speaker discusses various methods for logically implementing a link between processes.

Features Associated with Logical Implementation

  • Naming, synchronization, and buffering are important features associated with logical implementation of links between processes.

The second part of this lecture will cover these methods in greater detail.

Playlists: Operating System
Video description

Operating System: Message Passing Systems (Part 1) Topics discussed: 1) Message Passing Systems. 2) Message SEND/ RECEIVE operations. 3) Fixed & Variable Size Messages. 4) Methods of establishing a logical link between communicating processes. Follow Neso Academy on Instagram: @nesoacademy Contribute: http://www.nesoacademy.org/donate Memberships: https://bit.ly/2U7YSPI Books: http://www.nesoacademy.org/recommended-books Website ► http://www.nesoacademy.org/ Forum ► http://forum.nesoacademy.org/ Facebook ► https://goo.gl/Nt0PmB Twitter ► https://twitter.com/nesoacademy Music: Axol x Alex Skrindo - You [NCS Release] #OperatingSystemByNeso #os #OperatingSystem #MessagePassingSystems