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:
Disadvantages:
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.