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

Distinguish between http and true streaming, Question: 1. Distinguish ...

Question: 1. Distinguish between HTTP and True streaming, stating the advantages and disadvantages of both type of media streaming. 2. Name two online services which provi

What is the use of inter process communication, What is the use of inter pr...

What is the use of inter process communication. Inter process communication gives a mechanism to allow the co-operating process to communicate with each other and synchronies t

Why disable statements are not allowed in functions, Why disable statements...

Why disable statements are not allowed in functions? If  disble  statement  is used  in function,it  invalids  function  and  its  return  value.  So  disable statements aren't

Analysis of amdahls law, The outcomes of analysis of Amdahl's law are: 1...

The outcomes of analysis of Amdahl's law are: 1) To optimize the performance of parallel computers, modified compilers need to be developed which should aim to decrease the numb

Mathematical applications, The current 32 and 64 bit machines can represent...

The current 32 and 64 bit machines can represent integers of around 9 digits and 30 digits respectively, while various scientific and mathematical applications have to represent in

How many bits are required for a ladder d/a converter, How many bits are re...

How many bits are required at the input of a ladder D/A converter, if it is required to give a resolution of 5mV and if the full scale output is +5V. Find the %age resolution.

Incorporating javascript into a web page, As we already know, HTML (Hyperte...

As we already know, HTML (Hypertext Markup Language) is the language we use to create Web documents. Now we will read "Hello World!" As given below:

How a file can be shared among different users, Discuss the different techn...

Discuss the different techniques with which a file can be shared among different users. Several popular techniques with that a file can be shared among various users are: 1

Why a linked list is called a dynamic data structure, Why a linked list is ...

Why a linked list is called a dynamic data structure? What are the advantages of using linked list over arrays?    A linked list is known as a dynamic data structure because it

System software, System Software System software is a group of progr...

System Software System software is a group of programs written to service another programs. Some system software (e.g., compilers editors and file management utilities) proc

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