Explain producer-consumer problem using semaphores, Operating System

Assignment Help:

Producer-Consumer Problem Using Semaphores

The Solution to producer-consumer problem use three semaphores namely- full, empty and mutex.

The semaphore 'full' is utilized for counting the number of slots in the buffer that are full. The 'empty' for calculate the number of slots that are empty and semaphore 'mutex' to make sure that the producer and consumer don't access modifiable shared section of the buffer simultaneously.

Initialization

  • Set full buffer slots to 0.
        i.e., semaphore Full = 0.
  • Set empty buffer slots to N.
        i.e., semaphore empty = N.
  • For control access to critical section set mutex to 1.
        i.e., semaphore mutex = 1.

Producer ( )
WHILE (true)        
            produce-Item ( );
        P (empty);
        P (mutex);
        enter-Item ( )
        V (mutex)
        V (full);

Consumer ( )
WHILE (true)
        P (full)
        P (mutex);
        remove-Item ( );
        V (mutex);
        V (empty);
        consume-Item (Item)


Related Discussions:- Explain producer-consumer problem using semaphores

Major page fault, Major page fault: If the page is not loaded in memory a...

Major page fault: If the page is not loaded in memory at the time the fault is stated, then it is named major or hard page fault. The handler in the machine requires to search a

What is the mfd, What is the MFD? UFD? How are they related? MFD is mas...

What is the MFD? UFD? How are they related? MFD is master-file directory, which points to the UFDs. UFD is user-file directory, which points to each of user's files.

What is erd, What is ERD? Entity Relationship Diagram is the graphical ...

What is ERD? Entity Relationship Diagram is the graphical representation of the object relationship pair. It is mostly used in database applications.

Android, Which android version is available till now

Which android version is available till now

Read - write cycles of microprocessors, Examining the write/cycles as shown...

Examining the write/cycles as shown below We can see that the bus is designed for asynchronous read/write cycles. The operation of the write cycle is simple in that the add

Explain variable partitioning in memory management, VARIABLE PARTITIONING ...

VARIABLE PARTITIONING We can differ the partitions and change the location according to the size of the process.   50k 40k

Time-Sharing Operating System, Advantages and disadvantages of time-sharing...

Advantages and disadvantages of time-sharing operating system

What are the different methods for handling deadlocks?, What are the differ...

What are the different methods for handling deadlocks? Deadlock detection and recovery: Permit the system to enter a deadlock state, detect it and after that rec

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