Explain briefly the working of semaphore with example ?, Operating System

Assignment Help:

Explain briefly the working of semaphore with example ?

The E.W. Dijkstra (1965) abstracted the key idea of mutual exclusion in his concepts of semaphores.

Definition
A semaphore is a confined variable whose value is able to be accessed and altered only by the operations P and V and initialization operation called as 'Semaphoiinitislize'.

Binary Semaphores is able to assume only the value 0 or the value 1 counting semaphores as well called general semaphores can assume only nonnegative values.

The P or sleep or wait or down operation on semaphores S written as P(S) or wait (S) operates as follows:

P(S):  IF  S > 0
                THEN S:= S-1
                 ELSE   (wait on S)

The V or wakeup or signal or up operation on semaphore S written as V(S) or signal (S) operates as follows:

V(S)   IF (one or more process is waiting on S)
                THEN (let one of these processes proceeds)
                ELSE   S: = S +1

Operations P and V are complete as indivisible, single, atomic action. It is guaranteed that formerly a semaphore operation has stared, no other process are able to access the semaphore until operation has completed. The Mutual exclusion on the semaphore S is enforced within P(S) and V(S).

If several processes attempt a P(S) concurrently only process will be allowed to proceed. The other processes will be set aside waiting however the implementation of P and V guarantees that processes will not suffer indefinite postponement.

Semaphores resolve the lost-wakeup problem.


Related Discussions:- Explain briefly the working of semaphore with example ?

Linux os, Introduction of linux

Introduction of linux

List post-installation procedures that need to be performed, Problem: (...

Problem: (a) Based on your experience in setting up Windows 2003 Server operating system, briefly describe the twelve different steps in which the installation is conducted du

Define programming fundamentals for client- server developer, Define the Pr...

Define the Programming Fundamentals for Client- Server Developers Coding for client - server enforces good programming fundamentals. In order for applications to become client

Operational management, explain the link between operations management and ...

explain the link between operations management and strategic planning of daily goods shop

Buffer, What is bounded buffer

What is bounded buffer

What are the different files attributes?, What are the different files attr...

What are the different files attributes? File name:-it's the name of the file. It's the name with which the user identifies. Identifiers:-it's created when a file is created

What are the allocation methods of a disk space, What are the allocation me...

What are the allocation methods of a disk space? Methods of allocating disk space which are widely in use are a. Contiguous allocation b. Linked allocation c. Indexed

Parent and child process communicate in unix, Parent and Child process comm...

Parent and Child process communicate in unix A child and parent can interact through any of the normal  inter-process communication schemes (pipes, message queues, sockets, s

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

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