Already have an account? Get multiple benefits of using own account!
Login in your account..!
Remember me
Don't have an account? Create your account in less than a minutes,
Forgot password? how can I recover my password now!
Enter right registered email to receive password!
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);
Q. What protection problems may occur if a shared stack is used for parameter passing? Answer: The contents of the stack could be conciliation by other process(es) sharing th
Explain the Resource Ownership by Platform Ownership of data items may further be complicated by concepts defined in certain operating systems. Each operating system defines "p
Define buffering. A buffer is a memory area that keeps data whereas they are transferred among two devices or among a device and an application. Buffering is done for three rea
how are you
What is banker's algorithm? Banker's algorithm is a deadlock avoidance algorithm that is applicable to a resource-allocation system with multiple examples of each resource type
Q. What are the major differences between capability lists and access lists? Answer: An access list is a list for each object consisting of the domains with a nonempty set of
When you run a program on your UNIX system, the system prepares a special environment for that program. This environment owns everything needed for the system to execute the progra
Q. Why High level languages need Compiler? High level languages - illustrations are COBOL, FORTRAN, PL/I andALGOL - are processed by interpreters andcompilers. A compilers is a
Explain a working of file control block A file control block (FCB) has information about the file, containing ownership, permission, and location of the file contents. The log
Explain FIFO page replacement A FIFO replacement algorithm associates with every page the time when that page was brought into memory. When a page must be changed, the oldest p
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!
whatsapp: +91-977-207-8620
Phone: +91-977-207-8620
Email: [email protected]
All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd