[OS]Basic Scheduling algorithms
FCFS(First-Come-First-Service)
- Non-preemptive scheduling
- Scheduling criteria
- High resource utilization
- Good for Batch system, Not good for interactive system
- Weakness
- Convoy effect
- long response time
RR(Round-Robin)
- Preemptive scheduling
- Scheduling criteria
- Time quantum
- System parameter
- Timer-runout
- Anti-monopoly
- High context switch overhead
- Good for interactive system
SPN (Shortest-Process-Next)
- Non-preemptive scheduling
- Scheduling criteria
- burst time
- SJF(Shortest Job First) scheduling
SRTN(Shortest Remaining Time Next)
- Preemptive scheduling
- Context switching overhead
HRRN(High-REsponse-Ratio-Next)
- SPN + Aging concepts, Non-preemptive scheduling
- Aging concepts
- Scheduing criteria
- Response ratio = (WT + BT) / BT
MLQ(Multi-level Queue)
- Have a ready queue for each Job (or Priority)
- Can’t get out of assigned queue
- Weakness
- overhead
- Low priority queue starvation
MFQ(Multi-level Feedback Queue)
- Allow process to move between Queue
- Dynamic priority
- Preemptive scheduling
- Favor short burst-time processes
- Favor I/O bounded processes
- Improve adaptability
Reference
Process Scheduling