Operating System - FCFS (First-Come, First-Served) Scheduling

Definition:

FCFS (First-Come, First-Served) is the simplest scheduling algorithm in Operating Systems.
Processes are executed in the order they arrive — like a queue at a ticket counter.

Key Characteristics:

Feature Description
Type Non-preemptive
Scheduling Order Based on arrival time
Fairness Fair but not always efficient
Implementation Using a FIFO queue

Example:

Process Arrival Time Burst Time
P1 0 ms 4 ms
P2 1 ms 3 ms
P3 2 ms 1 ms

Execution Order (FCFS):

  • P1 arrives at 0 → starts first

  • P2 arrives at 1 → waits for P1

  • P3 arrives at 2 → waits for P1 and P2

Gantt Chart:

| P1 | P2 | P3 |
 0    4    7    8

Calculations:

Process Arrival Burst Start Completion Turnaround Time (CT - AT) Waiting Time (TAT - BT)
P1 0 4 0 4 4 0
P2 1 3 4 7 6 3
P3 2 1 7 8 6 5

Advantages:

  • Simple and easy to implement.

  • Fair (no starvation).

Disadvantages:

  • Long waiting time for short processes that arrive after long ones (convoy effect).

  • Not suitable for interactive systems.

Conclusion:

FCFS is best suited for simple batch systems, but not ideal for time-sharing or interactive environments due to poor average waiting time and response time.