大家可以看下我使用幕布软件画的思维导图,如果大家想使用幕布可以通过我的邀请链接注册,可免费获得一个月高级会员https://mubu.com/inv/477598
文章目录
在多道程序中,调度的实质是一种资源分配,处理机调度是对处理机资源进行分配。
5.1 处理机调度的层次和调度算法的目标
在多道批处理系统中,一个作业从提交到获得处理机执行,直至作业运行完成,可能需要经历多次处理机调度。
5.1.1 处理机调度的层次
-
高级调度
高级调度又称为长程调度或作业调度,他的调度对象是作业。主要功能是根据某种算法,决定将外存上处于后备队列中的哪几个作业调入内存、为他们创建进程,分配必要的资源,并将他们放入就绪队列。 -
低级调度
低级调度又称为短程调度或作业调度,他的调度对象是进程。主要功能是根据某种算法,决定就绪队列中哪个进程应获得处理机,并由分派程序将处理机分配给被选中的进程。 -
中级调度
中级调度又称为内存调度。主要功能是将那些暂时不能运行的进程,调至外存等待,当他们具备运行条件且内存又稍有空闲时再调入内存。
5.1.2 处理机调度算法的目标
5.1.2.1 处理机调度算法的共同目标
-
资源利用率
系统中的处理机和其它所有资源应尽可能保持忙碌状态,其中最重要的处理机利用率可用以下方式计算:
C P U 的 利 用 率 = C P U 有 效 工 作 时 间 C P U 有 效 工 作 时 间 + C P U 空 闲 等 待 时 间 CPU的利用率=\frac{CPU有效工作时间}{CPU有效工作时间+CPU空闲等待时间} CPU的利用率=CPU有效工作时间+CPU空闲等待时间CPU有效工作时间 -
公平性
系统中的所有的进程都应该获得合理的CPU时间,不会发生进程饥饿现象。,对同类型的进程获得相同的服务;不同类型的进程,由于紧急程度不同或者重要性不同,应提供不同的服务。 -
平衡性
系统中可能具有多种类型的进程,有的是计算型作业,有的是I/O型作业。为了使CPU和资源尽可能的处于忙碌状态,调度算法应尽可能的保持系统资源使用的平衡性。 -
策略强制执行
对所定制的策略,只要需要,就必须准确的执行。
5.1.2.2 批处理系统的目标
-
平均周转时间段
周转时间,是指从作业被提交给系统,直到作业执行完毕所花费的时间。
对于每个用户来言,都希望自己的周转时间最短;但是对于系统来言,他要求的是平均周转时间最短,这不仅可以提高系统资源的利用率,而且还可使大多数用户都感到满意。
可把周转时间描述为:
T = 1 n [ ∑ i = 1 n T i ] T=\frac{1}{n}[\sum_{i=1}^{n}{T_i}] T=n1[i=1∑nTi]
为了进一步反应调度的性能,更清楚的描述各进程在其周转时间中,等待和执行时间的具体分配情况,往往使用带权周转时间,即作业周转时间T与系统为他提供的时间Ts之比,即$ W=\frac{T}{T_s} $,平均带权周转时间可表示为:
W = 1 n ∑ i = 1