计算机操作系统第4章
计算机操作系统(第三版)汤小丹第4章

注意:1)“本章要点”部分,用红字标注的不是期末考试出题范围。
2)“习题部分”用蓝字标注的是重点习题,期末考试50%的题目是这些习题的原题。
红字标注的习题期末考试不考,仅供考研的同学参考。
3)大部分习题答案只给出要点,同学们可以自行适当补充,但一定要简明扼要。
4)如“本章要点”部分用红字标注的非考试内容,在“习题”部分有相关的重点习题,则对该部分内容只需做该习题即可。
------------------------------------------------------------第四章存储器管理要点4.1 存储器的层次结构理解P116图4-1的存储器层次结构,知道这种结构从经济上考虑,具有好的性能/价格比。
了解P117-118高速缓存CACHE和磁盘缓存,知道它们使用的淘汰算法与虚拟内存的页面置换算法是基本相同的。
4.2 程序的装入和链接这一小节的内容是一些重要的专业常识。
应了解本小节介绍的各种装入和链接方法,要求结合Windows操作系统及C 语言的实际去理解上述装入和链接方法(联系实际部分可上网查询)。
4.3 连续分配方式通用操作系统大都不用连续分配方式,有些嵌入式OS可能使用这种分配方式。
这一小节只需阅读P121-124即可。
4.4 基本分页存储管理方式这是本章最重要的一小节,要求全读。
重点理解页面、物理块、页表、页表的访存、物理地址、逻辑地址、快表(TLB)等概念及相互关系。
4.5 基本分段存储管理方式阅读4.5.1,知道为什么要分段。
阅读4.5.2 知道分段的原理。
考研的同学要知道段表、地址变换,知道分段和分页的主要区别。
阅读4.5.3 知道分段有利于信息共享,知道“纯代码”的概念。
阅读4.5.4 知道什么是段页式存储。
需要补充说明的是:教材说过,分段方便编程,主要是指方便汇编语言程序员,和设计高级语言编译器的程序员。
对使用高级语言进行应用编程的程序员来说,段是透明的,一般不能用高级语言代码去操作段。
U034计算机操作系统教程_第四版_(张尧学著)_清华大学出版社_第4章

2. 带权周转时间 作业的周转时间包含了两个部分,即等待时间和执 行时间。为了更进一步反映调度性能,使用带权周 转时间的概念。带权周转时间是作业周转时间与作 业执行时间的比: Wi=Ti/Tri 对于被测定作业流所含有的几个作业来说,其平均 1 n 带权周转时间为:
W= W n
i =1 i
对于分时系统,除了要保证系统吞吐量大、资源利 用率高之外,还应保证有用户能够容忍的响应时间。 因此,在分时系统中,仅仅用周转时间或带权周转 时间来衡量调度性能是不够的。
4.1.2 调度的层次 处理机调度问题实际上也是处理机的分配问题。显 然,只有那些参与竞争处理机所必需的资源都已得 到满足的进程才能享有竞争处理机的资格。这时, 它们处于内存就绪状态。这些必需的资源包括内存、 外设及有关数据结构等。从而,在进程有资格竞争 处理机之前,作业调度程序必须先调用存储管理、 外设管理程序,并按一定的选择顺序和策略从输入 井中选择出几个处于后备状态的作业,为它们分配 内存等资源和创建进程,使它们获得竞争处理机的 资格。
4.3 进 程 调 度
无论是在批处理系统还是分时系统中,用户进程数 一般都多于处理机数,这将导致用户进程互相争夺 处理机。另外,系统进程也同样需要使用处理机。 这就要求进程调度程序按一定的策略,动态地把处 理机分配给处于就绪队列中的某一个进程,以使之 执行。本节介绍进程调度的功能、进程调度发生的 时机以及由进程调度引起的进程上下文切换等。
4.3.1 进程调度的功能 进程调度的具体功能可总结如下: (1) 记录系统中所有进程的执行情况 作为进程调度的准备,进程管理模块必须将系统中 各进程的执行情况和状态特征记录在各进程的PCB 表中。并且,进程管理模式根据各进程的状态特征 和资源需求,将各进程的PCB表排成相应的队列并 进行动态队列转接。进程调度模块通过PCB变化来 掌握系统中所有进程的执行情况和状态特征,并在 适当的时机从就绪队列中选择出一个进程占据处理 机。
MSE计算机操作系统第四章笔记

第四章1.一个作业从提交给计算机系统到执行结束退出系统,一般都要经历提交、收容、执行和完成四个状态。
一个作业在其处于从输入设备进入外部存储设备的过程成为提交状态。
处于提交状态的作业,因其信息尚未全部进入系统,所以不能被调用程序选取。
收容状态也称为后备状态,输入管理系统不断地将作业输入到外存中对应部分(或称输入井,即专门用来存放待处理作业信息的一组外存分区)。
若一个作业的全部信息已全部被输入进输入井,那么,在它还未被调度去执行之前,该作业处于收容状态。
作业调度程序从后备作业中选取若干作业到内存投入运行。
它为被选中作业建立进程并分配必要的资源,这时,这些被选中的作业处于执行状态。
当作业运行完毕,但它所占用的资源尚未全部被系统收回时,该作业处于完成状态。
一般来说,处理机调度可分为4级:作业调度、交换调度、进程调度、线程调度。
作业调度:又称宏观调度或高级调度,其主要任务是按一定的原则对外存输入井上的大量后备作业进行选择,给选出的作业分配内存、输入输出设备等必要的资源,并建立相应的根程序,以使该作业的进程获得竞争处理机的权利,另外,当该作业执行完毕时,还负责回收系统资源。
交换调度:又称中级调度,其主要任务是按照给定的原则和策略,将处于外存交换区中的就绪状态或就绪等待状态的进程调入内存,或把处于内存就绪状态或内存等待状态的进程交换到外存交换区。
交换调度主要涉及内存的管理和扩充,一般将它归在存储管理之中。
进程调度:又称微观调度或低级调度,其主要任务是按照某种策略和方法选取一个处于就绪状态的进程占用处理机。
只有在多道批处理系统中才有作业调度,而在分时和实时系统中一般只有进程调度、交换调度和线程调度。
这是因为在分时和实时系统中,为了缩短响应时间或为了满足用户需求的截止时间,作业不是建立在外存中,而是直接建立在内存中。
2.作业调度作业调度的功能:(1)记录系统中各作业的状况,包括执行阶段的有关情况。
通常,系统为每个作业建立一个作业控制表JCB记录这些有关信息。
计算机操作系统第四章存储器管理复习资料

第四章存储器管理第一部分教材习题(P159)15、在具有快表的段页式存储管理方式中,如何实现地址变换?答:在段页式系统中,为了便于实现地址变换,须配置一个段表寄存器,其中存放段表始址和段长TL。
进行地址变换时,首先利用段号S,将它与段长TL进行比较。
若S<TL,表示未越界,利用段表始址和段号来求出该段所对应的段表项在段表中的位置,从中得到该段的页表始址,并利用逻辑地址中的段内页号P来获得对应页的页表项位置,从中读出该页所在的物理块号b,再利用块号b和页内地址来构成物理地址。
在段页式系统中,为了获得一条指令或数据,须三次访问内存。
第一次访问内存中的段表,从中取得页表始址;第二次访问内存中的页表,从中取出该页所在的物理块号,并将该块号与页内地址一起形成指令或数据的物理地址;第三次访问才是真正从第二次访问所得的地址中,取出指令或数据。
显然,这使访问内存的次数增加了近两倍。
为了提高执行速度,在地址变换机构中增设一个高速缓冲寄存器。
每次访问它时,都须同时利用段号和页号去检索高速缓存,若找到匹配的表项,便可从中得到相应页的物理块号,用来与页内地址一起形成物理地址;若未找到匹配表项,则仍须再三次访问内存。
19、虚拟存储器有哪些特征?其中最本质的特征是什么?答:虚拟存储器有以下特征:多次性:一个作业被分成多次调入内存运行,亦即在作业运行时没有必要将其全部装入,只需将当前要运行的那部分程序和数据装入内存即可;以后每当要运行到尚未调入的那部分程序时,再将它调入。
多次性是虚拟存储器最重要的特征,任何其他的存储器管理方式都不具有这一特征。
因此,认为虚拟存储器是具有多次性特征的存储器系统。
对换性:允许在作业的运行过程中进行换进、换出,也即,在进程运行期间,允许将那些暂不使用的程序和数据,从内存调至外存的对换区(换出),待以后需要时再将它们从外存调至内存(换进);甚至还允许将暂不运行的进程调至外存,待它们重又具备运行条件时再调入内存。
计算机操作系统 第四版 汤小丹 梁红兵 哲凤屏_第4章(20162017)

4.3.4 基于顺序搜索的动态分区分配算法
2. 循环首次适应(next fit ,NF)算法
在为进程分配内存空间时,不再是每次都从链首开 始查找,而是从上次找到的空闲分区的下一个空闲分 区开始查找,直至找到一个能满足要求的空闲分区, 从中划出一块与请求大小相等的内存空间分配给作业。 该算法应设置一起始查寻指针,用于指示下一次起始 查寻的空闲分区,并采用循环查找方式。
的适当位置。
0
1000 L O A D 1 ,2 5 0 0
2500 365
10000
1 1 0 0 0 L O A D 1 ,2 5 0 0
12500
365
5000 作业地址空间
15000
内存空间
把在装入时对目标程 序中指令和数据地址的 修改过程称为重定位。
地址变换通常在进程装入 时依次完成的,以后不再改 变,静态重定位。
4.2 程序的装入和链接
将一个用户源程序变为内存中的一个可执行程序,通常 有以下几个步骤:
编译,由编译程序(Compiler)将用户源代码编译成若干 个目标模块(Object Module);
链接,由链接程序(Linker)将编译后形成的一组目标模 块,以及它们所需要的库函数链接在一起,形成一个完 整的装入模块(Load Module);
4.1.2 主存储器与寄存器
1.主存储器
简称内存或主存,用于保存进程运行时的程序和数据。
CPU的控制部件只能从主存储器中取得指令和数据,数 据能够从主存储器读取并将它们装入到寄存器中,或者 从寄存器存入到主存储器。 CPU与外围设备交换的信息一般也依托于主存储器地址 空间。由于主存储器的访问速度远低于CPU执行指令的 速度,为缓和这一矛盾,在计算机系统中引入了寄存器 和高速缓存。
计算机操作系统第四章-存储器管理

第四章存储器管理第0节存储管理概述一、存储器的层次结构1、在现代计算机系统中,存储器是信息处理的来源与归宿,占据重要位置。
但是,在现有技术条件下,任何一种存储装置,都无法从速度、容量、是否需要电源维持等多方面,同时满足用户的需求。
实际上它们组成了一个速度由快到慢,容量由小到大的存储装置层次。
2、各种存储器•寄存器、高速缓存Cache:少量的、非常快速、昂贵、需要电源维持、CPU可直接访问;•内存RAM:若干(千)兆字节、中等速度、中等价格、需要电源维持、CPU可直接访问;•磁盘高速缓存:存在于主存中;•磁盘:数千兆或数万兆字节、低速、价廉、不需要电源维持、CPU 不可直接访问;由操作系统协调这些存储器的使用。
二、存储管理的目的1、尽可能地方便用户;提高主存储器的使用效率,使主存储器在成本、速度和规模之间获得较好的权衡。
(注意cpu和主存储器,这两类资源管理的区别)2、存储管理的主要功能:•地址重定位•主存空间的分配与回收•主存空间的保护和共享•主存空间的扩充三、逻辑地址与物理地址1、逻辑地址(相对地址,虚地址):用户源程序经过编译/汇编、链接后,程序内每条指令、每个数据等信息,都会生成自己的地址。
●一个用户程序的所有逻辑地址组成这个程序的逻辑地址空间(也称地址空间)。
这个空间是以0为基址、线性或多维编址的。
2、物理地址(绝对地址,实地址):是一个实际内存单元(字节)的地址。
●计算机内所有内存单元的物理地址组成系统的物理地址空间,它是从0开始的、是一维的;●将用户程序被装进内存,一个程序所占有的所有内存单元的物理地址组成该程序的物理地址空间(也称存储空间)。
四、地址映射(变换、重定位)当程序被装进内存时,通常每个信息的逻辑地址和它的物理地址是不一致的,需要把逻辑地址转换为对应的物理地址----地址映射;地址映射分静态和动态两种方式。
1、静态地址重定位是程序装入时集中一次进行的地址变换计算。
物理地址= 重定位的首地址+ 逻辑地址•优点:简单,不需要硬件支持;•缺点:一个作业必须占据连续的存储空间;装入内存的作业一般不再移动;不能实现虚拟存储。
计算机操作系统-陆丽娜-课后答案第四章
14. 设 N 为整型数,初始值为 3,两个并发进程 A 和 B 的程序如下:
process A
process B
do{ N=N+5; }
do{ print(N);
N=0;
} 若 process A 先执行了三个循环后,process A 和 process B 又并发执
行了一个循环,写出可能出现的打印值。请用 P、V 操作实现同步, 使两并发进程能正确执行。
量 S1 和 S2 初值均为 0。试问 P1、P2 并发执行后,x、y 的值各为多 少?
P1:
P2:
begin
begin
y:=1;
x:=1;
y:=y+3;
x:=x+5;
V(S1);
P(S1);
z:=y+1;
x:=x+y;
P(S2);
V(S2);
y:=z+y
end
z:=z+x;
end 答:x=10 y=9 z=15
9. 列举死锁的各种预防策略。 答: 静态分配资源策略:要求每一个进程在开始执行前就要申请它所需要 的全部资源,仅当系统能满足进程的资源申请要求时才把资源分配给 进程,该进程才能开始执行(注意,所有并发执行的进程要求的资源 总和不能超过系统拥有的资源数)。(破坏第二个条件)
按序分配资源策略:把系统中所有资源排一个顺序,对每一个资源给 一个确定的编号,规定任何一个进程申请两个以上资源时总是先申请 编号小的资源,后申请编号大的资源(或者先申请编号大的,后申请 编号小的资源)。系统按进程对资源的申请顺序来分配资源。按序分 配策略将阻止死锁 的第四个条件(循环等待条件)的出现。
end
Ⅱ 单项选择题
计算机操作系统(习题集)第四章 答案
第四章存储器管理一、单项选择题1、存储管理的目的是(C )。
A.方便用户B.提高内存利用率C.方便用户和提高内存利用率D.增加内存实际容量2、在( A)中,不可能产生系统抖动的现象。
A.固定分区管理B.请求页式管理C.段式管理D.机器中不存在病毒时3、当程序经过编译或者汇编以后,形成了一种由机器指令组成的集合,被称为(B )。
A.源程序B.目标程序C.可执行程序D.非执行程序4、可由CPU调用执行的程序所对应的地址空间为(D )。
A.符号名空间B.虚拟地址空间C.相对地址空间D.物理地址空间5、存储分配解决多道作业[1C]划分问题。
为了实现静态和动态存储分配,需采用地址重定位,即把[2C]变成[3D],静态重定位由[4D]实现,动态重定位由[5A]实现。
供选择的答案:[1]:A 地址空间 B 符号名空间 C 主存空间 D 虚存空间[2]、[3]: A 页面地址 B 段地址 C 逻辑地址 D 物理地址 E 外存地址 F 设备地址[4]、[5]: A 硬件地址变换机构 B 执行程序 C 汇编程序D 连接装入程序E 调试程序F 编译程序G 解释程序6、分区管理要求对每一个作业都分配(A )的内存单元。
A.地址连续B.若干地址不连续C.若干连续的帧D.若干不连续的帧7、(C )存储管理支持多道程序设计,算法简单,但存储碎片多。
A.段式B.页式C.固定分区D.段页式8、处理器有32位地址,则它的虚拟地址空间为( B)字节。
A.2GBB.4GBC.100KBD.640KB9、虚拟存储技术是( A)。
A.补充内存物理空间的技术B.补充相对地址空间的技术C.扩充外存空间的技术D.扩充输入输出缓冲区的技术10、虚拟内存的容量只受( D)的限制。
A.物理内存的大小B.磁盘空间的大小C.数据存放的实际地址D.计算机地址字长11、虚拟存储技术与(A )不能配合使用。
A.分区管理B.动态分页管理C.段式管理D.段页式管理12、(B )是指将作业不需要或暂时不需要的部分移到外存,让出内存空间以调入其他所需数据。
计算机基础第4章操作系统和文件管理
用来保存文件及文件夹。有:
二、 文件分类 系统文件 按性质分 按用途分: 库文件 用户文件
光盘驱动器
普通文件 目录与文件夹 设备文件
计算机基础
第二节 文件和文件管理
三、DOS文件目录管理
A的文件 DOS文件 程序文件
B的文件
Windows文件
……
数据文件
成磁 千盘 上上 万可 个以 文存 件放
如何在磁盘上查找文件? 不同系统文件重名怎么办?
计算机基础
第一节 操作系统基础知识
• • • •
操作系统的功能
软件和硬件 资源管理
操作系统的分类 •单\多用户 •单机\网络 •单任务\多任务 特征:
•并发性 •共享性 •虚拟性 •不确定性
•
处理机管理 存储管理 设备管理 文件管理 作业管理
计算机基础 计算机基础
第一节 操作系统基础知识 第一节 操作系统基础知识
计算机基础
第二节 文件和文件管理
四、Windows文件夹管理
与DOS相同,文件存储也是树型结构,只是文 件目录换成文件夹。 例如: D:\dzh\hlp\dzh.hlp
一级文 件夹
二级文 件夹
文件
长文件名 文件名组成与DOS相同,但文件名字符个数可以为 1--255个(可区分大小写字母),每个文件有两个 文件名:长文件名和8.3格式的别名。而DOS系统中 只能是8.3格式。
以windows 基本元素:窗口、菜单、对话框、图标、帮助 为例介绍
图形用户界面的基本元素
最小化
一、窗口
菜单栏
最大化
关闭 滚动条
文件夹图 标 状态栏
计算机基础
第三节 常用操作系统
二、菜单
第4章 计算机操作系统答案 处理机调度
第四章处理机调度一、选择题:1、()调度主要涉及内存管理与扩充。
A、作业B、交换C、进程D、线程2、()调度在作业执行完毕时还负责回收系统资源。
A、作业B、交换C、进程D、线程3、以下哪种调度又称为宏观调度或高级调度()。
A、作业B、交换C、进程D、线程4、()调度又称为微观或低级调度。
A、作业B、交换C、进程D、线程5、下面哪中调度一般不存在于分时系统和实时系统中()。
A、作业B、交换C、进程D、线程6、()调度的主要任务是按照某种策略和方法选取一个处于就绪状态的进程占有处理机。
A、作业B、交换C、进程D、线程7、当作业运行完毕,但它所占有的资源尚未全部被系统回收时,该作业处于()状态。
A、提交B、收容C、执行D、完成8、一个作业在其处于从输入设备进入外部存储设备的过程称为()状态。
A、提交B、收容C、执行D、完成9、当一个作业的全部信息已全部被输入进输入井但还未被调度去执行,此时该作业处于()状态。
A、提交B、收容C、执行D、完成10、()状态也称为后备状态。
A、提交B、收容C、执行D、完成11、一种既有利于短小作业又兼顾到长作业的作业调度算法是()A、先来先服务 B 、轮转C、最高响应比优先D、均衡调度12、作业调度程序是从处于()状态的作业中选取一个作业并把它装入主存。
A、输入B、收容C、执行D、完成13、下列选项中哪一个不属于作业调度算法的评价因素()A、单位时间内运行尽可能多的作业B、使各种I/O设备得以充分利用C 、对所有的作业都是公平合理的 D、使处理机尽可能保持“空闲”。
14、下列选项中哪一项不属于JCB的主要内容()A 作业名B 作业类型C 资源要求D 作业完成时间15、作业调度程序为选中作业建立进程并为这些进程分配的系统资源不包括下列哪一项()A、内存B、外存C、外设D、虚拟内存16、在操作系统中,JCB是指()。
A、作业控制块B、进程控制块C、文件控制块 D 程序控制块17、作业调度算法包括下列选项中的那些种()。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第4章 处理机调度
1
目
录
4.1 调度简介
4.2 调度算法 4.3 死锁简介 4.4 死锁检测和恢复 4.5 死锁避免
2
4.1 调度简介
计算机系统中,处理器和内存资源会出现供 不应求的情况,特别是多个I/O设备与主机交 互,作业不断进入系统,或者是多个批处理作 业在磁盘的后备队列中等待进入内存的情况。 操作系统在管理有限的资源的同时,需要考虑 如何选取进入内存的作业,如何分配有限的处 理器资源给多个进程等重要问题。处理器的调 度正是处理器和内存资源调度和分配相关的工 作。
17
4.1.2 调度准则
1. 周转时间:
对每个用户而言,都希望自己作业的周转时间最短。但 作为计算机系统的管理者,则总是希望能使平均周转时 间最短,这不仅会有效地提高系统资源的利用率,而且 还可使大多数用户都感到满意。所以一般考虑平均情况, 即平均周转时间T:
1 T Ti n i 1
26
例2,例1所示的4个作业,采用短作业优先调度算法
作 到达时 服务时 开始时 完成时 周转时 带权周转
业
1 2 3
间
0 4 8
间
20 23 1
间
0 21 20
间
20 44 21
间
20 40 13
时间
1 1.74 13
4
18
200
44
244
226
1.13
与FCFS调度算法相比,平均周转时间和平均带权周转 时间都要短,这说明SJF调度算法有效的降低了作业 的平均等待时间,提高了系统吞吐量,具有较好的调 度性能
T 20 39 36 226 80.25 4
36 1.13 9.96 平均带权周转时间: W 1 1.7 4
24
4.2 调 度 算 法
2. 短作业(进程)优先调度算法
短作业优先调度算法(shot job first, SJF)按照进 入系统的作业所要求的CPU运行时间的长短为挑选 依据,优先选取预计计算时间最短的作业。可以分 别用于高级调度和低级调度。
6
4.1 调度简介
中级调度
中级调度介于高级调度和低级调度之间。该调度根 据进程状态决定辅存和主存之间的进程对换。主存 资源紧缺时,将暂时不能运行的进程换出,进程转 为挂起状态;主存资源空闲,并且进程满足运行条 件时,再将进程调回主存。对主存的利用和系统吞 吐率都有很大的提升。
7
4.1 调度简介
在上述三种调度中,进程调度是操作系统最核心的 部分,运行频率最高,因此把它称为短程调度。为 避免进程调度占用太多的CPU时间,进程调度算法 不宜太复杂。作业调度往往是发生在一个 (批)作业 运行完毕,退出系统,而需要重新调入一个 (批) 作 业进入内存时,故作业调度的周期较长,大约几分 钟一次,因此把它称为长程调度。在纯粹的分时或 实时操作系统中通常不需要作业调度。中级调度的 运行频率基本上介于上述两种调度之间。一些功能 完善的操作系统为了提高主存利用率和作业吞吐率, 会引入中级调度。
10
4.1 调度简介
如图4.2所示,被高级调度选中的作业,从后备队 列中,通过多个作业步:编译、链接、装入、运行, 称为目标进程,进入主存的就绪队列等候。就绪队 列中的进程以此被分配相同的时间片获得处理器。 如果进程在给定的时间片内顺利完成,便在释放处 理机进入完成状态; 如果进程在本次分配的时间片内尚未完成,该进程 会到就绪队列的末尾等待下一个时间片; 如果在执行期间进程因为某事件而被阻塞,则进入 等待队列,进入挂起状态,进入挂起阻塞队列,直 到等待的事件发生,再进入挂起就绪队列,等待中 级调度将其调回主存就绪队列。
6. 处理机利用率:
7. 公平性:
22
4.2 调 度 算 法
1.先来先服务调度算法
先来先服务算法(First Come First Served, FCFS)按 照作业/进程进入队列的先后顺序进行挑选,先进入的将 优先进行后续步骤。该算法既可用于高级调度,也可用于 低级调度。当在高级调度中采用该算法时,每次调度都是 从后备作业队列中选择一个或多个最先进入该队列的作业, 将它们调入内存,为它们分配资源、创建进程,然后放入 就绪队列。在低级调度中采用该算法时,则每次调度是从 就绪队列中选择一个最先进入该队列的进程,为之分配处 理机,使之投入运行。该进程一直运行到完成或发生某事 件而阻塞后才放弃处理机。该算法比较有利于长作业(进 23 程),而不利于短作业(进程)。
25
4.2 调 度 算 法
短作业优先 (SJF) 的调度算法是从后备队列中选择 一个或若干个估计运行时间最短的作业,将它们调 入内存运行。而短进程优先 (SPF) 调度算法则是从 就绪队列中选出一个估计运行时间最短的进程,将 处理机分配给它,使它立即执行并一直执行到完成, 或发生某事件而被阻塞放弃处理机时再重新调度。 SJF调度算法能有效地降低作业的平均等待时间, 提高系统吞吐量。
14
4.1 调度简介
作业调度
审查:根据作业控制块中的信息,审查系统能否满 足用户作业的资源需求 将作业调入内存:按照一定的算法,从外存的后备 队列中选取某些作业调入内存 为它们创建进程 分配必要的资源 插入就绪队列:将新创建的进程插入就绪队列,准 备执行
15
4.1 调度简介
考虑的问题:作业调度要考虑每次允许多少个作业 同时在内存中运行?
5
4.1 调度简介
低级调度
低级调度又称为进程调度、短调度。调度对象是进 程。根据主存资源,决定就绪队列中的有多少个并 且哪些进程应获得处理机,然后再由分派程序执行 把处理机分配给该进程的具体操作。包括对处理机 现场信息的保存,如程序计数器、多个通用寄存器 中的内容等,将它们送入该进程的进程控制块 (PCB)中的相应单元。然后按某种算法选取进程, 把就绪队列中被选中的进程的状态改为运行状态, 并准备把处理机分配给它。
3
4.1 调度简介
高级调度
高级调度又称为作业调度、长调度。调度对象是作 业。作业是一个比程序更为广泛的概念,不仅包含 通常的程序和数据,还配有一份作业说明书,系统 根据该说明书来对程序的运行进行控制。在批处理 系统中,是以作业为基本单位从外存调入内存的。 从输入系统的一批作业中按照预定调度策略选择进 入主存的作业,为其分配资源,创建进程,以上就 是高级调度。作为启动阶段的调度,为进程的运行 做好准备工作,等待进程调度选择进程进行运行。
最早进入外存的作业(先来先服务调度算法) 外存上最短的作业(短作业优先调度算法) 外存上优先级最高的作业(优先级调度算法)
16
4.1.2 调度准则
1. 周转时间:指从作业被提交给系统开始,到 作业完成为止的这段时间间隔。 周转时间的长短是评价批处理系统的性能、选 择作业调度方式与算法的重要准则之一 周转时间=后备队列等待时间+就绪队列等待时 间*+CPU执行时间*+等待I/O完成时间* 带*项可能会发生多次
在作业控制块中通常应包含的内容有:
13
4.1 调度简介
作业管理
建立作业控制块:系统便为每个进入系统的作业建 立一个作业控制块,根据作业类型将它插入相应的 后备队列中 调度:作业调度程序依据一定的调度算法来调度它 们,将它们装入内存 控制:在作业运行期间,系统就按照作业控制块中 的信息对作业进行控制 回收资源:当一个作业执行结束进入完成状态时, 系统负责回收分配给它的资源,撤消它的作业控制 块
若干个作业进入系统后,被依次存放在外存上,形成 了输入的作业流;在操作系统的控制下,逐个作业进 行处理,于是便形成了处理作业流。
12
4.1 调度简介
作业的管理和调度
每个作业设置了一个作业控制块
保存了系统对作业进行管理和调度所需的全部信息,是作业 在系统中存在的标志 作业标识、用户名称、用户帐户、作业类型、作业状态、优 先级、作业已运行时间、 (预计运行时间、要求内存大小、 要求I/O设备的类型和数量等、进入系统时间、开始处理时 间、作业完成时间、作业退出时间、资源使用情况等。
平均周转时间:
T 20 40 13 226 74.75 4 1 1.74 13 1.13 4.22 4
。
例1,有以下4个作业,采用先来先服务算法,到达时 间和调度服务时间如下表所示
作 到达时 服务时 开始时 完成时 周转时 带权周转
业
1 2
间
0 4
间
20 23
间
0 20
间
20 43
间
20 39
时间
1 1.7
3 4
8 18
1 200
43 44
44 244
36 226
36 1.13
使用先来先服务算法得到的平均周转时间与作业到达 顺序和调度顺序有关 平均周转时间:
当内存中同时运行的作业数目太多时,可能会影响到系统的 服务质量,使周转时间太长等 如果在内存中同时运行作业的数量太少时,又会导致系统的 资源利用率和系统吞吐量太低
根据系统规模和运行速度等情况做适当的折衷 依据所采用的调度算法,决定应将哪些作业从外存 调入内存,通常优先调入内存的作业有:
8
4.1 调度简介
运行
就绪
阻塞 短程 阻塞,挂起
就绪,挂起 中程 长程 新建 退出
图4.1 三种调度的层次关系
9
4.1 调度简介
高级调度 后备队列 时间片内未完成 就绪队列 低级调度 处理 机 完成