性能指标#
CPU利用率=CPU有效工作时间+CPU空闲等待时间CPU有效工作时间
系统吞吐量=CPU工作时间完成作业量
周转时间=作业完成时间−作业提交时间
带权周转时间=实际运行时间作业周转时间
响应时间=首次响应时间−用户提交请求时间
等待时间
调度算法#
FCFS:先来先服务,效率不高。可用于作业调度和进程调度。当先来长作业,后续短作业都需要等待。不利于 I/O 密集型作业。
SJF:最短任务优先,直至完成或阻塞才释放。容易导致长作业饥饿,没考虑作业紧急程度。估算时间难衡量。但平均等待时间,平均周转时间最短。
优先级调度:既可用于作业调度也可用于进程调度,分为非抢占式优先级和抢占式优先级。抢占式优先级分为静态优先级(创建时设置优先级,不变)和动态优先级(动态调整)。优先级参考指标包括:是否系统进程,是否交互进程,是否 I/O 进程等。
** 高响应比优先调度:** 主要用于作业调度,响应比Rp=要求服务时间等待时间+要求服务时间
** 时间片转轮调度:** 适用于分时系统。时间片大小影响系统性能。
多级队列调度:不同队列不同优先级、队列内优先级可以不同,多处理器中可以分配不同队列给不同 CPU
多级反馈队列调度:设置多级队列,队列内采用 FCFS,为不同队列赋予不同优先级,不同时间片。队列越优先,时间片越小。当时间片用完,但未完成就转入下一级队列。各种作业都能较为均衡的处理。