In a single machine environment , shared memory system is generally used. If a communication error occurs, error recovery or exception condition handling must take place. Possible errors are: A process terminates Lost messages Scrambled messages
Exception Conditions – Terminated Process In these cases, the operating system should either terminate P or notify P that Q has terminated. P Q Waiting a message Receiver process (P) waits a message from Q that has terminated. Then P will be blocked forever. P Q Sender waiting ACK P sends a message to a terminated process. If P requires an acknowledgement (ACK) from Q for further processing, P will be blocked forever. A sender or receiver process may terminate before a message is processed. This situation will leave message that will never be received or processes waiting for messages that will never be sent.
Exception Conditions – Lost Messages P send a message to Q, which is lost somewhere in the link due to link failure. In such cases, The OS is responsible for detecting and responding by notifying the sending process that the message is lost, or The sending process is responsible for detecting and should re- transmit the message. P Q The message is lost due to hardware or communication line failure. The most common method for detecting lost messages is to use timeouts . For instance, if the acknowledgement signal does not arrive at the sending process in a specified time interval, it is assumed that the signal is lost and resent.
Exception Conditions – Scrambled messages Because of the noise in communication channels, the delivered message may be scrambled (modified) in on the way. Error checking codes are commonly used to detect this type of error.
You've reached the end of your free preview.
Want to read all 41 pages?
- Fall '19