<< Chapter < Page Chapter >> Page >

Which are more powerful, messages or monitors?

Message systems vary along several dimensions:

  • Relationship between mailboxes and processes:
    • One mailbox per process, use process name in send and receive (simple but restrictive) [RC4000].
    • No strict mailbox-process association, use mailbox name (can have multiple mailboxes perprocess, can pass mailboxes from process to process, but trickier to implement) [Unix].
  • Extent of buffering:
    • Buffering (more efficient for large transfers when sender and receiver run at varying speeds).
    • None -- rendezvous protocols (simple, OK for call-return type communication, know that message was received).
  • Conditional vs. unconditional ops:
    • Unconditional receive: return message if mailbox is not empty, otherwise wait until message arrives.
    • Conditional receive: return message if mailbox is not empty, otherwise return special "empty" value.
    • Unconditional send: wait until mailbox has space.
    • Conditional send: return "full" if no space in mailbox (message is discarded).

What happens with rendezvous protocols and conditional operations?

  • Additional forms of waiting:
    • Almost all systems allow many processes to wait on the same mailbox at the same time. Messages get passed to processes in order.
    • A few systems allow each process to wait on several mailboxes at once. The process gets the first message to arrive on any of the mailboxes. Thisis actually quite useful (give Caesar as an example).
  • Constraints on what gets passed in messages:
    • None: just a stream of bytes (Unix pipes).
    • Enforce message boundaries (send and receive in same chunks).
    • Protected objects (e.g. a token for a mailbox).

How would the following systems fall into the above classifications?

  • Condition variables
  • Unix pipes

Classical ipc problems

The dining philosophers problem

A classical problem from Dijkstra

  • 5 philosophers sitting at a round table
  • Each has a plate of spaghetti
  • There is a fork between each two
  • Need two forks to eat

What algorithm do you use for access to the shared resource (the forks)?

  • The obvious solution (pick up right; pick up left) deadlocks.
  • Big lock around everything serializes.
  • Good code in the book.

The purpose of mentioning the Dining Philosophers problem without giving the solution is to give a feel of what coordinationproblems are like. The book gives others as well. We are skipping these (again this material would be covered in a sequel course).

The readers and writers problem

  • Two classes of processes.
    • Readers, which can work concurrently.
    • Writers, which need exclusive access.
  • Must prevent 2 writers from being concurrent.
  • Must prevent a reader and a writer from being concurrent.
  • Must permit readers to be concurrent when no writer is active.
  • Perhaps want fairness (e.g., freedom from starvation).
  • Variants
  • Writer-priority readers/writers.
  • Reader-priority readers/writers.

Quite useful in multiprocessor operating systems and database systems. The “easy way out” is to treat all processes as writers inwhich case the problem reduces to mutual exclusion (P and V). The disadvantage of the easy way out is that you give up reader concurrency. Again for moreinformation see the web page referenced above.

Questions & Answers

Is there any normative that regulates the use of silver nanoparticles?
Damian Reply
what king of growth are you checking .?
What fields keep nano created devices from performing or assimulating ? Magnetic fields ? Are do they assimilate ?
Stoney Reply
why we need to study biomolecules, molecular biology in nanotechnology?
Adin Reply
yes I'm doing my masters in nanotechnology, we are being studying all these domains as well..
what school?
biomolecules are e building blocks of every organics and inorganic materials.
anyone know any internet site where one can find nanotechnology papers?
Damian Reply
sciencedirect big data base
Introduction about quantum dots in nanotechnology
Praveena Reply
what does nano mean?
Anassong Reply
nano basically means 10^(-9). nanometer is a unit to measure length.
do you think it's worthwhile in the long term to study the effects and possibilities of nanotechnology on viral treatment?
Damian Reply
absolutely yes
how to know photocatalytic properties of tio2 nanoparticles...what to do now
Akash Reply
it is a goid question and i want to know the answer as well
characteristics of micro business
for teaching engĺish at school how nano technology help us
Do somebody tell me a best nano engineering book for beginners?
s. Reply
there is no specific books for beginners but there is book called principle of nanotechnology
what is fullerene does it is used to make bukky balls
Devang Reply
are you nano engineer ?
fullerene is a bucky ball aka Carbon 60 molecule. It was name by the architect Fuller. He design the geodesic dome. it resembles a soccer ball.
what is the actual application of fullerenes nowadays?
That is a great question Damian. best way to answer that question is to Google it. there are hundreds of applications for buck minister fullerenes, from medical to aerospace. you can also find plenty of research papers that will give you great detail on the potential applications of fullerenes.
what is the Synthesis, properties,and applications of carbon nano chemistry
Abhijith Reply
Mostly, they use nano carbon for electronics and for materials to be strengthened.
is Bucky paper clear?
carbon nanotubes has various application in fuel cells membrane, current research on cancer drug,and in electronics MEMS and NEMS etc
so some one know about replacing silicon atom with phosphorous in semiconductors device?
s. Reply
Yeah, it is a pain to say the least. You basically have to heat the substarte up to around 1000 degrees celcius then pass phosphene gas over top of it, which is explosive and toxic by the way, under very low pressure.
Do you know which machine is used to that process?
how to fabricate graphene ink ?
for screen printed electrodes ?
What is lattice structure?
s. Reply
of graphene you mean?
or in general
in general
Graphene has a hexagonal structure
On having this app for quite a bit time, Haven't realised there's a chat room in it.
what is biological synthesis of nanoparticles
Sanket Reply
how did you get the value of 2000N.What calculations are needed to arrive at it
Smarajit Reply
Privacy Information Security Software Version 1.1a
Got questions? Join the online conversation and get instant answers!
Jobilize.com Reply

Get the best Algebra and trigonometry course in your pocket!

Source:  OpenStax, Operating systems. OpenStax CNX. Aug 13, 2009 Download for free at http://cnx.org/content/col10785/1.2
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Operating systems' conversation and receive update notifications?