1. >Operating System
Found 3  QuestionsSET DEFAULT
Selected Filters
    Operating System Synchronization
Subjects
Topics

List of top Operating System Questions on Synchronization

Consider the following threads, T1, T2, and T3 executing on a single processor, synchronized using three binary semaphore variables, S1, S2, and S3, operated upon using standard wait() and signal(). The threads can be context switched in any order and at any time. 

  • GATE CS - 2022
  • GATE CS
  • Operating System
  • Synchronization

Consider the following multi-threaded code segment (in a mix of C and pseudo-code), invoked by two processes $P1$ and $P2$, and each of the processes spawns two threads $T1$ and $T2$: 

int x = 0; // global 
Lock L1; // global 
main() { 
	create a thread to execute foo(); // Thread T1 
	create a thread to execute foo(); // Thread T2 
	wait for the two threads to finish execution; 
	print(x); } 
foo() { 
	int y = 0; 
	Acquire L1; 
	x = x + 1; 
	y = y + 1; 
	Release L1; 
	print(y); }  

Which of the following statement(s) is/are correct? 
 

  • GATE CS - 2021
  • GATE CS
  • Operating System
  • Synchronization

Consider the following pseudocode, where S is a semaphore initialized to 5 in line#2 and counter is a shared variable initialized to 0 in line #1. Assume that the increment operation in line#7 is not atomic. 

1. int counter = 0; 
2. Semaphore S = init(5); 
3. void parop(void) 
4. { 
5.     wait(S); 
6.     wait(S); 
7.     counter++; 
8.     signal(S); 
9.     signal(S); 
10. } 

If five threads execute the function parop concurrently, which of the following program behavior(s) is/are possible?
 

  • GATE CS - 2021
  • GATE CS
  • Operating System
  • Synchronization