Producer – consumer process, Operating System

Assignment Help:

Step by step displays the content, and the final result of the list ("buffer") of 6 elements as the initial values ??and the following elements which are produced (NEXTP) or consumed (NEXTC). This scheme allows a maximum of (Buffer_size - 1) elements.

#define BUFFER_SIZE 6

typedefstruct { ....}item;

item buffer[BUFFER_SIZE];

int    in  =  0;

int  out  =  0;

         Producer

         itemnextProduced;

                  while (true)   

                  {.../* produce an item in nextp  */

                           while  (((in + 1)  %  BUFFER_SIZE )  = =  out)   

                                                                                     /* loop, do nothing */;

                           buffer[in]  =  nextp;

                           in  =  (in + 1)  %  BUFFER_SIZE;

                  }

 Consumer

         itemnextConsumed

                  while (true)

                  {...

                           while  ( in  = = out) ;       /* loop, do nothing */;

                           nextc = buffer [out];

                           out  =  (out + 1)  %  BUFFER_SIZE;

                                    /*  consume the item in nextc  */

                  }


Related Discussions:- Producer – consumer process

How free-space is managed using bit vector implementation, How free-space i...

How free-space is managed using bit vector implementation? The free-space list is implemented as a bit map or bit vector. Each block is shown by 1 bit. If the block is free, th

Explain about paging, Explain about paging? Answer: Paging is a memory-...

Explain about paging? Answer: Paging is a memory-management scheme that permits the physical-address space of process to be noncontiguous. Paging avoids the considerable proble

Designing issues in a network -transparency, Transparency Users mus...

Transparency Users must be able to access remote resources as though these resources were local. Transparency should as well promote user mobility. Users must be allowed

Briefly discuss on page replacement, Briefly discuss on page replacement? ...

Briefly discuss on page replacement? Page replacement approach is fixed as follows. If no frame is free, we search one that is not presently being used and free it. We can fre

Define what an assembler is, Define what an assembler is An assembler i...

Define what an assembler is An assembler is machine dependant.

Name two differences between logical and physical addresses, Q. Name two di...

Q. Name two differences between logical and physical addresses? Answer: A logical address doesn't refer to an actual existing address rather it refers to an abstract address in

State critical section problem, State critical section problem? Discuss thr...

State critical section problem? Discuss three solutions to solve the critical section problem. C-S Problem:- n processes all competing to use some shared data Every

Define maintaining data on a per client basis, Define Maintaining Data on a...

Define Maintaining Data on a Per Client Basis Perhaps the most dramatic syntactical programming change for the application developer of client – server applications is maintain

Data transfer between two processes, Q. Data transfer between two processes...

Q. Data transfer between two processes? Communication: Data transfer between two processes is essential for some time. Both processes are on the one computer or on different

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