Explain the methods of implementing interacting processes, Computer Engineering

Assignment Help:

Explain any two methods of implementing interacting processes.

Two methods of implementing interacting process are given below:

(i) Shared memory solution: In this scheme requires that such processes share a common buffer pool and the code for implementing the buffer is written through the application programmer.

For illustration, a shared-memory solution can be given to the bounded- buffer problem. The producer and consumer processes share the subsequent variables:

#define BUFFER_SIZE 10

Typedef struct{

..........

 }item;

Item buffer[BUFFER_SIZE];

int in=0;

int out=0;

The shared buffer is implemented like a circular array along with two logical pointers: in/out. The variable in-points to the next free position into the buffer, out-points to the first full position into the buffer. The buffer is empty while in==out; the buffer is full while (( in + 1)%BUFFER_SIZE)==out.

The producer process has a local variable nextProduced wherein the new item to be produced is stored:

while(1){

/* produce and item in nextProduced */ While(((in + 1)%BUFFER_SIZE)==out)

; // don't do anything

Buffer[in]=nextProduced;

in =(in+1)% BUFFER_SIZE;}

The consumer process has a local variable nextConsumed in which the item to be consumed is stored:

while(1){

while(in==out)

; // don't do anything

nextConsumed = buffer[out];

out=(out +1)% BUFFER_SIZE;

/* consume the item in nextConsumed */}

(ii) Inter process Communication: The OS gives the means for cooperating processes to communicate with each other through an inter-process communication (IPC) facility. IPC gives a mechanism to allow processes to communicate and to synchronize their actions without sharing similar address space. IPC is particularly helpful in a distributed environment where the communicating processes may reside on various computers connected with a network. IPC is best implemented through message passing system where communication among the user processes is accomplished by the passing of messages. An

Inter-process communication facility gives at least the two operations: send(message) and receive(message).


Related Discussions:- Explain the methods of implementing interacting processes

What kind of system do we need to run gimp, Any system able of run Gnome 2,...

Any system able of run Gnome 2, KDE 3.2, Windows 2000, Mac OS X and later versions should be capable to run GIMP. GIMP's biggest appetite is for memory and how much you will requir

Define side tone is essential in telephone communication, A certain amount ...

A certain amount of side tone is essential in telephone communication. Ans: It is true that a specific amount of side tone is necessary in telephone communication.

What is clearquest, Rational ClearQuest is a change-request management tool...

Rational ClearQuest is a change-request management tool that tracks and handles defects and change requests all through the development process. With ClearQuest, you can manage eac

What is an arithmetic processor, Q. What is an arithmetic processor? A ...

Q. What is an arithmetic processor? A distinctive CPU necessitates most of the control and data processing hardware for implementing non-arithmetic functions. As the hardware c

What is error checking, What is error checking? It computes the error c...

What is error checking? It computes the error correcting code (ECC) value for the data read from the given sector and compares it with the corresponding ECC value read from the

How does the race condition occur, It happens when two or more processes ar...

It happens when two or more processes are reading or writing some joint data and the final result depends on who runs exactly when.

What do you mean by mouse protocols, Q. What do you mean by Mouse Protocols...

Q. What do you mean by Mouse Protocols? Mouse protocol is the digital code to that signal from the mouse gets converted. There are four main protocols: Microsoft, Mouse Systems

explain compiler, Compiler is used to change the high-level language progr...

Compiler is used to change the high-level language program into machine code at a time. It doesn't needs special instruction to store in a memory, it keeps automatically. The imple

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd