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

Explain cache-only memory access model (coma), Cache-Only Memory Access Mod...

Cache-Only Memory Access Model (COMA) As we have considered earlier, shared memory multiprocessor systems can use cache memories with each processor for decreasing the execution

Role of world wide web in the field of e-commerce, Explain the role of Worl...

Explain the role of World Wide Web in the field of e-commerce.  In the 1990s, the arrival of the World Wide Web on the Internet had shown a turning point in e-commerce by givin

What is open addressing, Open addressing:  The easiest way to resolve a co...

Open addressing:  The easiest way to resolve a collision is to begin with the hash address and do a sequential search by the table for an empty location. The idea is to place the

Which error detecting method detect more errors, Error detecting method tha...

Error detecting method that can detect more errors without increasing additional information in each packet is? Error detecting method which can detect more errors without rais

Explain loop-invariant code motion, Explain briefly Loop-invariant code ...

Explain briefly Loop-invariant code motion of the commonly used code optimization techniques. Loop-invariant code motion If a quantity is calculated inside a loop duri

Write a subroutine in c for toggling the cursor, Write a subroutine in C fo...

Write a subroutine in C for toggling the cursor using old directives. ; ; use small memory model for C - near code segment _DATA SEGMENT WORD   'DATA'   CURVAL EQU   [B

Programming.., converting 10 ASCII characters to excess three using mplab i...

converting 10 ASCII characters to excess three using mplab ide

Tcp connection , a) What command do you use to file all active and availabl...

a) What command do you use to file all active and available sockets? These should also contain UNIX domain sockets, which are primarily used for local connections.   b) What sta

How can we draw a circle with gimp, Ans) The simplest way is to make a new ...

Ans) The simplest way is to make a new selection with Ellipse Select tool and stroke it (Edit -> Stroke Selection...). We welcome patches that add tools to draw geometric primitive

Presentation of the report, This will be based on presentation of the repor...

This will be based on presentation of the report, complexity of the task, degree of completion and uniqueness of your problem.  As a part of this question, you should also inclu

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