1. Why Disk Scheduling is Needed
A hard disk is a mechanical device, and the most expensive operation during disk access is usually:
Head Movement (Seek Time)
When multiple processes generate disk requests simultaneously, the operating system cannot service them all at once.
Consider the following request queue:
98, 183, 37, 122, 14, 124, 65, 67
Each request corresponds to a disk cylinder that must be accessed.
The operating system must decide:
"In what order should these requests be serviced?"
This decision directly affects:
Total head movement
Average seek time
Disk throughput
Overall system performance
The Scheduling Challenge
Suppose the disk head is currently at cylinder 53.
Should it:
53 → 98 → 183 → ...
or
53 → 65 → 67 → ...
Different choices produce different performance.
Key Insight
Disk scheduling exists because the order in which requests are serviced significantly impacts seek time.
2. What is FCFS Disk Scheduling?
FCFS (First Come First Serve) is the simplest disk scheduling algorithm.
Definition
FCFS services disk requests strictly in the order they arrive in the request queue.
Core Principle
First Request Arrives
↓
First Request Served
No optimization is performed.
No request reordering occurs.
Example
Request Queue:
98 → 183 → 37 → 122
FCFS Execution:
98 → 183 → 37 → 122
Exactly the same order.
Important Observation
FCFS treats disk requests like customers standing in a queue.
Key Insight
FCFS prioritizes fairness and simplicity rather than performance.
3. How FCFS Works Internally
Understanding the internal operation helps explain its strengths and weaknesses.
Step 1: Request Arrival
Whenever a process needs disk access:
Process
↓
Disk Request
↓
Request Queue
Example:
Queue
[98, 183, 37, 122]
Step 2: Select First Request
The operating system selects:
Front of Queue
No calculations are performed.
No optimization occurs.
Step 3: Move Disk Head
Head moves directly to the requested cylinder.
Example:
Current Position = 53
Next Request = 98
Movement:
53 → 98
Step 4: Service Request
Disk operation is completed.
Examples:
Read
Write
Update
Step 5: Remove Request
Completed request leaves queue.
[183, 37, 122]
becomes the new queue.
Step 6: Repeat
Continue until queue becomes empty.
Key Insight
FCFS never asks:
"What is closest?"
It only asks:
"What arrived first?"
4. Numerical Example (Step-by-Step)
This is one of the most common exam problems.
Given
Initial Head Position:
53
Request Queue:
98, 183, 37, 122, 14, 124, 65, 67
Step 1: Determine Service Order
Since FCFS preserves arrival order:
53 → 98 → 183 → 37 → 122 → 14 → 124 → 65 → 67
Step 2: Calculate Individual Movements
Head movement is calculated using:
|Current Position − Next Position|
Movement 1
53 → 98
= |98 − 53|
= 45
Movement 2
98 → 183
= |183 − 98|
= 85
Movement 3
183 → 37
= |37 − 183|
= 146
Movement 4
37 → 122
= |122 − 37|
= 85
Movement 5
122 → 14
= |14 − 122|
= 108
Movement 6
14 → 124
= |124 − 14|
= 110
Movement 7
124 → 65
= |65 − 124|
= 59
Movement 8
65 → 67
= |67 − 65|
= 2
5. Total Head Movement
Adding all movements:
45 + 85 + 146 + 85 + 108 + 110 + 59 + 2
= 640 Cylinders
Final Answer
Total Head Movement = 640 Cylinders
Key Insight
The disk head travels 640 cylinders just to service 8 requests.
6. Average Head Movement
Often asked in exams.
Formula
Average Head Movement
= Total Movement / Number of Requests
Substituting values:
= 640 / 8
= 80 Cylinders
Final Answer
Average Head Movement = 80 Cylinders
7. Visualizing Head Movement
Actual Movement Pattern
53 → 98 → 183
Head moves forward.
Then:
183 → 37
Huge backward jump.
Then:
37 → 122
Forward again.
Then:
122 → 14
Backward again.
Simplified Visualization
14 37 53 65 67
|-----------|-------|------|--|
↑ Start
↓
98------122----124----------183
Important Observation
The head repeatedly changes direction.
This creates:
Large seek times
Unnecessary movement
Poor performance
Key Insight
Most wasted time comes from zig-zag movement.
8. Why FCFS Performs Poorly
Many students simply write:
"FCFS has high seek time."
This is correct but incomplete.
Let's understand the deeper reason.
FCFS Ignores Spatial Locality
Consider:
65, 67
These requests are very close together.
An optimized algorithm would process them together.
But FCFS may do:
124 → 65 → 67
after large jumps.
Consequence
The disk head moves unnecessarily.
Example
183 → 37
= 146 Cylinders
This movement contributes nothing useful.
Key Insight
FCFS ignores the physical location of requests.
9. Performance Analysis
9.1 Seek Time
Seek time depends on head movement.
Since FCFS causes large movements:
Seek Time = High
Impact
Longest component of access time becomes even larger.
9.2 Rotational Latency
Indirectly affected.
Because requests are serviced inefficiently:
Arrival at Tracks
↓
Less Predictable
↓
More Waiting
9.3 Throughput
Throughput means:
Requests Completed per Unit Time
Since each request requires larger movement:
More Time per Request
Therefore:
Lower Throughput
Key Insight
Poor scheduling reduces the number of requests serviced per second.
10. Advantages of FCFS
Despite poor performance, FCFS has important strengths.
10.1 Simplicity
Implementation is extremely easy.
Only a queue is required.
Request Arrives
↓
Append to Queue
No sorting.
No calculations.
10.2 Fairness
Requests are serviced exactly in arrival order.
Example:
Request A Arrives First
Then:
Request A Served First
Always.
Key Insight
No request can be overtaken by another.
10.3 No Starvation
Starvation occurs when a request waits forever.
In FCFS:
Every Request
↓
Eventually Reaches Front
↓
Gets Served
Therefore:
No Starvation
Key Insight
Fairness is FCFS's greatest strength.
11. Disadvantages of FCFS
11.1 High Seek Time
Large unnecessary head movement.
Example:
183 → 37
= 146 Cylinders
11.2 Poor Throughput
Fewer requests completed per unit time.
11.3 High Average Waiting Time
Later requests wait behind inefficient movements.
11.4 No Optimization
FCFS completely ignores:
Distance
Locality
Disk geometry
Key Insight
FCFS treats all requests equally even when some are much cheaper to service.
12. Where FCFS is Used
Although modern systems use better algorithms, FCFS is still useful in some situations.
Suitable Environments
Low Load Systems
Few requests.
Performance impact is minimal.
Educational Systems
Easy to understand.
Used to introduce disk scheduling concepts.
Fairness-Critical Systems
When predictability is more important than speed.
Small Embedded Systems
Simple implementation.
Minimal overhead.
Key Insight
FCFS survives because it is simple, predictable, and fair.
13. FCFS at a Glance
| Feature | FCFS |
|---|---|
| Full Form | First Come First Serve |
| Strategy | Arrival Order |
| Optimization | None |
| Fairness | Excellent |
| Starvation | No |
| Seek Time | High |
| Throughput | Low |
| Complexity | Very Low |
| Implementation | Queue |
| Practical Usage | Limited |
Final Insight
FCFS is the simplest disk scheduling algorithm, servicing requests strictly in arrival order without considering their physical location on disk. While this guarantees fairness and completely avoids starvation, it often results in excessive head movement, high seek times, and poor throughput because requests are processed without any optimization. For this reason, FCFS serves as a baseline scheduling algorithm and a foundation for understanding more advanced disk scheduling techniques such as SSTF, SCAN, and C-SCAN.