CSEIT – GATE 2025 Subject – Operating System/Topic – Process Synchronization (based on Algo-3).
CSEIT – GATE 2025 Subject – Operating System/Topic – Process Synchronization (based on Algo-3).
Here is a structured and GATE-focused explanation for:
Contents [hide]
- 1
CSE/IT – GATE 2025
- 2
Algo-3: Peterson’s Algorithm
- 2.1
Shared Variables:
- 2.2
Code for Process Pi (i = 0 or 1):
- 2.3
How It Works:
- 2.4
Satisfies the 3 Conditions of Critical Section Problem:
- 2.5
GATE-Style Example Question:
- 2.6
Summary:
- 2.7 CSEIT – GATE 2025 Subject – Operating System/Topic – Process Synchronization (based on Algo-3).
- 2.8 OPERATING SYSTEMS PROCESS SYNCHRONIZATION
- 2.9 Computer Science & Engineering Second Year
- 2.1
CSE/IT – GATE 2025
Subject: Operating System
Topic: Process Synchronization (Based on Algo-3 – Peterson’s Algorithm)
What is Process Synchronization?
Process Synchronization is the technique used to coordinate the execution of concurrent processes that share resources. It ensures that:
-
Only one process accesses the critical section (CS) at a time (Mutual Exclusion),
-
The system makes progress without unnecessary delay,
-
Every process eventually gets a chance (Bounded Waiting).
Algo-3: Peterson’s Algorithm
Used for: Synchronization between 2 processes (P0 and P1)
Type: Software-based solution
Key Features:
-
Guarantees mutual exclusion
-
Ensures progress and bounded waiting
-
No need for hardware-level atomic instructions
Code for Process Pi (i = 0 or 1):
How It Works:
-
Each process sets its flag to
true
indicating its interest in entering CS. -
It gives the turn to the other process.
-
If the other process also wants to enter and it’s its turn, the current process waits.
-
This guarantees mutual exclusion.
Satisfies the 3 Conditions of Critical Section Problem:
Condition | Met? | Explanation |
---|---|---|
Mutual Exclusion | Only one process can enter the CS at a time. | |
Progress | A process not in CS doesn’t block others. | |
Bounded Waiting | Each process gets a turn in a finite time. |
GATE-Style Example Question:
Q: In Peterson’s algorithm for two processes P0 and P1, what ensures mutual exclusion?
A. Setting turn = 1 - i
B. The flag
array
C. The combination of flag[]
and turn
D. None of the above
Correct Answer: C – Both
flag[]
and turn
are essential for mutual exclusion.
Summary:
-
Peterson’s Algorithm is simple but powerful.
-
It’s a frequent topic in GATE questions.
-
Best understood by writing and simulating the code.
Would you like:
-
A flowchart of the algorithm?
-
A PDF of this explanation?
-
More practice questions or MCQs?
Let me know how you’d like to prepare!