调度
抽象模型
调度或译排班(英语:schedule),是将任务分配至资源的过程,在计算机或生产处理中尤为重要。
“Scheduling”的各地常用名称 | |
---|---|
中国大陆 | 调度 |
台湾 | 排程、排班 |
排班首要面对的就是效率问题。以数学而言,排班问题通常就是优化问题。以航空公司为例,使用机场每个登机口皆需计时付费,“分配登机口”就是一项任务,而“登机口”就是可供利用的资源,若将登机口使用数量及时间压到最低,亦即能节省最多的成本。有时任务不能赶及限期前完成,延误的时长称为延迟。
电脑
调度多任务处理的主要目的,是随时保有一个行程在执行,藉以提高CPU使用率。事实上,行程就是一种任务,可利用的资源即是CPU。若能最有效率完成运算,对用户而言就不必久候。
常见调度
- 依序循环调度(RR,Round-robin scheduling)
- 最短先做排班(SJN,Shortest job next)
- Shortest remaining time
- Weighted round-robin scheduling
- 速率单调 (RMS)
- Deadline-monotonic scheduling (DMS)
- Earliest deadline first scheduling (EDF)
- Two-level scheduling
- 先进先出
- LIFO
- Fair-share scheduling
- 完全公平调度 (CFS)
- Least slack time scheduling (LST)
- Multilevel Feedback Queue
- Take scheduling
- Gang scheduling
- Least-connection scheduling
- Weighted least-connection scheduling
- Shortest expected delay scheduling
- Never queue scheduling
- List scheduling
- Genetic Anticipatory
- Lottery Scheduling
- 关键路径