What are semaphores, Computer Engineering

Assignment Help:

What are semaphores?

Semaphore: A semaphore is a synchronization tool which gives a general-purpose solution to controlling access to critical sections. It s an abstract data type (ADT) which defines a nonnegative integer variable that, apart from initialization, is accessed simply through two standard operations that are: wait and signal. The typical definition of wait in pseudo code is

wait(S){

          while(S<=0)

                 // do nothing

                          S--; }

The classical definitions of signal in pseudo code is signal(S){

                    S++; }

While one process modifies the semaphore value, anno one process can concurrently modify that similar semaphore value. As well, in the case of the wait(S), the testing of the integer value of S (i.e. S<=0), and its possible modification(S--), should also be executed without interruption.


Related Discussions:- What are semaphores

Differentiate between static and dynamic memory, Differentiate between stat...

Differentiate between static and dynamic memory? The static RAM is simpler to use and has shorter read and write cycles. One of the main applications of static RAM is in execut

Explain about butterfly permutation, Q. Explain about Butterfly permutation...

Q. Explain about Butterfly permutation? Butterfly permutation:  This kind of permutation is attained by interchanging the most significant bit in address with least significant

Explain the structure of a c program, Explain the Structure of a C Program?...

Explain the Structure of a C Program? Each C program consists of one or more functions one of the which must be main(). A function name is forever followed by a pair of parenth

Define superscalar processors, In scalar processors just one instruction is...

In scalar processors just one instruction is implemented per cycle which means just one instruction is issued for each cycle and only that one instruction is completed however the

What is stack and register manipulation, Q. What is Stack and register mani...

Q. What is Stack and register manipulation? Stack and register manipulation: If we create stacks, stack instructions prove to be useful. LOAD IMMEDIATE is a good illustration

Describe independent loops in fortran, Q. Describe Independent Loops in for...

Q. Describe Independent Loops in fortran? HPF offers extra opportunities for parallel execution by employing the INDEPENDENT directive to declare the iterations of a do-loop is

What are the components of i-way infrastructure, What are the components of...

What are the components of I-way Infrastructure? There are three components of the I-way infrastructure: • Consumer access equipment • Local on-Ramps • Global informat

Classification of interrupts - computer architecture, Classification of int...

Classification of interrupts:   1. a) asynchronous   external components or hardware malfunction 1.b)synchronous   function of program state (for example over

What is multiple interrupt lines, Q. What is Multiple Interrupt Lines? ...

Q. What is Multiple Interrupt Lines? Multiple Interrupt Lines: Simplest solution to problems above is to provide multiple interrupt lines that will result in immediate recognit

Explain the advantages of high level languages, Explain the Advantages of H...

Explain the Advantages of High Level Languages? The major advantage of high-level languages over low-level languages is that they are easier to write, read, and maintain. Ultim

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