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.

Important Notice!

Dear users, compscibits.com is now permanently moved to compsciedu.com. Please update all your links and bookmarks accordingly. Soon, the site will be accessible through URL compsciedu.com only.

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: