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 are language processor development tools, What are Language Processor ...

What are Language Processor Development Tools (LPDTs)? LPDT that is Language processor development tools focuses upon generation of the analysis phase of language processors. T

And-elimination rule, And-Elimination rule: In generally English says ...

And-Elimination rule: In generally English says that "if you know that lots of things are all true, so you know like any one of them is also true". Because you can specify a c

Structure of input - output interface, Q. Structure of Input - Output Inter...

Q. Structure of Input - Output Interface? Due to complexity and number of external devices that I/O interface control, there is not any standard structure of I/O interface. Let

Multiple assign statements targeting the same wire, What logic is inferred ...

What logic is inferred when there are multiple assign statements targeting the same wire? It's illegal to specify multiple assign statements to the same wire in a synthesizable

Expression for boolean function in standard POSform, Write the expression f...

Write the expression for Boolean function for F (A, B, C) = ∑m (1,4,5,6,7) in standard POS form.                                   Ans: f (A,B,C )= ΣM (1,4,5,6,7) in standard POS

What are the types of operations required for instructions, What are the va...

What are the various types of operations required for instructions?  Data transfers among the main memory and the CPU registers Arithmetic and logic operation on data

Explain about behavioral notations, Explain about Behavioral Notations ...

Explain about Behavioral Notations These notations contain dynamic elements of the model.  Their elements comprise interaction and the state machine. It also comprise classe

Define pipeline speedup, Define pipeline speedup. S(m)=T(l)/T(m) Whe...

Define pipeline speedup. S(m)=T(l)/T(m) Where T(m) is the execution time for some target workload on an m-stage pipeline. T(l) is the execution time for some workload an

Why we need parallel programming languages, Q. Why we need parallel program...

Q. Why we need parallel programming languages? The parallel programming languages are created for parallel computer environments.  These are developed either by creating new la

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