Write a note on semaphores, Operating System

Assignment Help:

Write a note on semaphores

A semaphore is a tool meant for synchronizing multiple processes trying to access a shared variable. That is a semaphore is used to deal with the critical section problem or in other words to evade the race condition. A semaphore S is in fact an integer variable that apart from initialization is accessed only through two standard atomic operations:

*Wait and signal.

 

The traditional definition of wait in pseudo code is:

    wait (S) {

             while (S<=0)

                ; // no-op

             S--;

    }

The traditional definition of signal in pseudo code is:

    signal (S) {

               S++;

    }

 

For each process P,

    do {

WAIT

           Critical Section

SIGNALS

 

          } while (1);

 

A semaphore is able to be defined as:

typedef struct {

             int value;

             struct process *L;

} semphore;

 

Once more, the wait semaphore operation can be defined as:

void wait (semaphore S) {

                S.value--;

                if (S.value < 0) {

                    add this process to S.L;

                    block();

                }

}

 

As well, the signal semaphore operation is able to be defined as:

void signal( semaphore S) {

                   S.value++;

                   if (S.value <= 0) {

                       remove a process P from S.L;

                       wakeup(P);

                   }

}


Related Discussions:- Write a note on semaphores

Convert the hex to binary, Convert the following from hex to binary and dra...

Convert the following from hex to binary and draw it on the memory map.     RAM    = 0000 -> 00FF     EPROM = FF00  -> FFFF Answer:   0000  0000 0000  0000 (0)    RAM sta

Crank-nicolson timestepping schemes, For the heat conduction problem, inves...

For the heat conduction problem, investigate the effects on the numerical solution of the following aspects: 1. non-uniform meshes with re?nement at both ends versus a uniform m

Information system, using the transformation process model and system think...

using the transformation process model and system thinking concepts explain the key operation of TGL works.

What are the drawbacks of spiral model, What are the drawbacks of spiral mo...

What are the drawbacks of spiral model? I. It is based on customer communication. If the communication is not proper then the software product that gets developed will not be t

How is the NTFS namespace planned, Q. How is the NTFS namespace planned? Ex...

Q. How is the NTFS namespace planned? Explain. Answer: The NTFS namespace is prearranged as a hierarchy of directories where every directory uses a B+ tree data structure to

Binary arithmetic, The principle is that of ordinary addition; however reme...

The principle is that of ordinary addition; however remember the highest number is 1.   Calculate the following:                             11001 +                           11

Dual mode operation, WHAT ARE THE ADVANTAGES AND DISADVANTAGES OF DUAL MODE...

WHAT ARE THE ADVANTAGES AND DISADVANTAGES OF DUAL MODE OPERATION OF OPERATING SYSTEM>?

Principles of operating systems, Objective - Tiny Shell (tish) In this...

Objective - Tiny Shell (tish) In this exercise you will write a small shell program to run different programs in foreground and background mode. Background Usually when

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