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

FeatureFCFS
Full FormFirst Come First Serve
StrategyArrival Order
OptimizationNone
FairnessExcellent
StarvationNo
Seek TimeHigh
ThroughputLow
ComplexityVery Low
ImplementationQueue
Practical UsageLimited

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.