A directory of Objective Type Questions covering all the Computer Science subjects. Here you can access and discuss Multiple choice questions and answers for various compitative exams and interviews.

Discussion Forum

Que. The atomic fetch-and-set x, y instruction unconditionally sets the memory location x to 1 and fetches the old value of x in y without allowing any intervening access to the memory location x. consider the following implementation of P and V functions on a binary semaphore .

void P (binary_semaphore *s) {
unsigned y;
unsigned *x = &(s->value);
do {
fetch-and-set x, y;
} while (y);
}

void V (binary_semaphore *s) {
S->value = 0;
}

Which one of the following is true?
a. The implementation may not work if context switching is disabled in P
b. Instead of using fetch-and-set, a pair of normal load/store can be used
c. The implementation of V is wrong
d. The code does not implement a binary semaphore
Answer:The implementation may not work if context switching is disabled in P
Confused About the Answer? Ask for Details Here
Know Explanation? Add it Here

Similar Questions: