中程调度程序由换入和换出两个过程组成:
换出过程把内存中的程序或数据换到交换区。
换入过程把外存中的程序或数据换到内存。
为了加快交换速度,外存交换区采用连续分配方式。
3.进程调度
进程调度又称低级调度、微观调度或短程调度,其主要任务是按照某种策略和方法从就绪队列中选取一个进程,将处理机分配给它。
进程调度的运行频率很高,一般几十毫秒要运行一次。
进程调度的功能
记录系统中所有进程的状态、优先数和资源情况。
按调度算法选择进程运行。
实施处理机的分配及回收。
引起进程调度的原因
正在运行进程结束
运行进程因某种原因阻塞,如P操作、I/O等
有进程进入就绪队列且就绪队列为空,或进程优先级高于当前运行进程且为剥夺调度方式
从系统调用或中断返回
时间片用完
4. 选择调度算法的准则
由于操作系统的类型及目标不同,因此选择的调度算法也不同。
选择调度算法有以下准则:
面向系统的准则
面向用户的准则
面向系统的准则
公平性:系统中的每个进程应获得合理的CPU时间。
CPU利用率高:对微机和实时系统不太重要。
系统吞吐量大:吞吐量指单位时间内所完成的进程数。
合理利用各类资源:让各类资源都忙碌,对微机不太重要。
面向用户的准则
周转时间短:指从作业提交到作业完成的时间间隔。
响应时间快:指从用户提交请求到系统产生响应的时间间隔。
截止时间的保证:截止时间是指某任务必须开始执行或必须完成的最迟时间。
稳定性:对某用户的作业而言,调度策略不应使其响应时间和周转时间变化太大。
周转时间
作业的周转时间是指从作业提交到作业完成之间的时间间隔。
平均周转时间是指多个作业的周转时间的平均值。n个作业的平均周转时间:
T =(T1+T2+ … +Tn)/n(Ti为作业i的周转时间)
带权周转时间