Mutual Exclusion Based on Message Passing Code
Inter-Process Communication
Mutual Exclusion Based on Message Passing
Mutual Exclusion Based on Message Passing Code
P1:
send(Resource Contro, “Give me resource”);
receive(Resource Controller, Message);
// block while waiting for a reply from RC
{
…Critical Section…
}
send(Resource Controller, “Done with resource”);
Bounded Buffer Problem (no shared memory)
void consumer(void)
int item;
message m;
// initialization loop
for (i=0; i<N; i++) send(producer, &m);// N empty slots
while (TRUE) {
receive(producer, &m); // receive item
item=extract_item(&m);
send(producer, &m); // send empty slot
consume_item(item);
}
void producer(void)
int item;
message m;
while (TRUE) {
item Produce_Item();
receive(consumer, &m); // empty slot
build_message(&m, item);
send(consumer, &m); // send item
}
Posted By-: Vissicomp Technology Pvt. Ltd.
Website -: http://www.vissicomp.com
This entry was posted in Bounded Buffer Problem (no shared memory, Message Passing part2, Mutual Exclusion Based on Message Passing, Mutual Exclusion Based on Message Passing Code, Operating system.