Thursday, July 30, 2009

interprocess communication



  • Direct communication


When communication is direct, a person means exactly what they say. There is no implied meaning, insinuation, or mixed message. Think of a scientist saying “The results of the experiment are positive”, or a journalist saying ”The accident occurred at 6pm”; this is direct communication. When you say "I like your clothes", and you are being direct, you mean you like the other person's clothes. People can communicate how they feel by being direct. For example, "I feel hurt that you didn't meet me yesterday" (this is sometimes called an "I-statement").
When being direct, the speaker's tone of voice is usuall "plain" (even monotome), because they are not using a sarcastic or defensive tone (or any other inflection that creates a mixed message). Direct communication is the only form of communication in many fields, such as science, journalism, and in the legal system (a defendant would not plead guilty in court sarcastically, because the sarcastic tone would be disregarded and it would count as a real guilty plea).
In all important matters in society, people use direct communication. For example, when an airplane communicates with air traffic control, they say directly and exactly what they mean, in very specific terms. They don't use sarcasm or imply things, since the situation is too important to allow for any misunderstanding.



  • Indirect communication


By comparison, indirect communication conceals one's true position or feelings. There are may ways to be indirect, an obvious example is sarcasm. If you don't like someone's clothes and you say (in a sarcastic tone) "I like your clothes", the literal meaning and implied meaning are opposite.
While direct communication has a goal of cooperation, indirect communication has a goal of hurting or manipulating another person, or protecting one's self. Below is an incomplete list of some different forms of indirect communication, grouped into attacks and defenses, along with a description.



  • synchronization


  1. Blocking send-- caller blocked until send is completed

  2. non-blocking send--caller blocked until receive is finished

  3. blocking receiver --receiver blocks until message is available

  4. non-blocking receiver --receiver retrieves a valid message or returns an error code


  • buffering


  1. zero capacity-

• sender blocks until receiver is ready


• otherwise, message is lost


2. bounded capacity-


• when buffer is full, sender blocks


• when buffer is not full, no need to block sender


3. unbounded capacity-


no need to block sender



  • producer-consumers example

produce-- info to be consumed by consumer


consume-- information produced by producer



No comments:

Post a Comment