调度算法:食堂大妈告诉你什么叫\”先来后到\”
大学食堂中午12点,饥肠辘辘的学生们排起了长队。
窗口大妈手持大勺,一边打饭一边喊:“排好队!一个一个来!”
这就是最朴素的调度算法——先来先服务(FCFS)。
今天我们就来聊聊操作系统里的那些\”食堂大妈调度算法\”。
一、什么是调度算法?
CPU调度的本质:谁先用CPU,谁后用CPU。
想象CPU是一个超级服务员(速度极快的员工),而一群客户(进程)都想让这个服务员帮忙。
调度算法就是服务员决定:**“服务顺序”**的各种规则。
调度的层次:
1. 高级调度(作业调度):决定哪些作业进入系统
2. 中级调度(交换调度):决定哪些进程暂时换出内存
3. 低级调度(进程调度):决定哪个就绪进程使用CPU
二、先来先服务(FCFS)
First Come First Serve,最简单的调度算法。
时间线:
T1: 进程A到达,开始执行(需要5ms)
T6: 进程B到达,开始执行(需要3ms)
T9: 进程A完成,进程B执行
T12: 进程B完成
A的等待时间 = 0ms
B的等待时间 = 3ms(T6到达,T9才执行)
平均等待时间 = 1.5ms
优点
- 简单!公平!谁先来谁


