操作系统第四章课后习题
《操作系统》第三版第四章课后答案

2、Spooling技术
也备的技术
六、简答题
1、操作系统设备管理的目标是什么?
*提高I/O设备和CPU的利用率
*提高I/O速度
*为用户使用设备提供方便、统一的界面
3、引入Spooling系统有哪些好处
*提高了I/O速度,将独占设备改造成共享设备,实现了虚拟设备功能,提高了系统的并行性,减少了用户进程的等待时间,提高了进程的推进速度。
5、什么是设备独立性?引入设备独立性有哪些好处?
*设备独立性也称设备无关性,指应用程序与实际使用的物理设备无关,亦即它独立于具体的物理设备。用户程序中使用逻辑设备,由操作系统完成逻辑设备到物理设备的映射
第四章(与磁盘相关不做)
一、填空题
1:字符、块、字符
2:设备驱动
3:缓冲
5:输入井和输出井、输入缓冲区和输出缓冲区、输入进程和输出进程
6:中断源
7:中断、DMA、通道
二、单项选择题
1、B
2、B C
6、C
7、A
三、多项选择题
1、BC
2、AB
3、AB DE
四、判断题
1、×
2、√
3、√
4、×
五、名词解释
1、设备驱动程序
*好处:设备分配时的灵活性、易于实现I/O重定向、方便用户编程
操作系统习题第四章

第四章互斥、同步与通讯一、单项选择题1.一个正在访问临界资源的进程由于申请等待I/O操作而被中断时,__________.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.设有三个进程共享一个资源,如果每次只允许一个进程使用该资源,则用PV操作管理时信号量S的可能取值是___________A.1,0,-1,-2B.2,0,-1,-2C.1,0,-1D.3,2,1,07.进程的并发执行是指若干个进程__________.A. 同时执行B. 在执行的时间上是重叠的C. 在执行的时间上是不可重叠的D. 共享系统资源8.在进程通信中,__________常用信件交换信息。
A.低级通信 B.高级通信 C.消息通信 D.管道通信9.实现进程同步时,每一个消息与一个信号量对应,进程_________可把不同的消息发送出去。
A.在同一信号量上调用P操作B.在不同信号量上调用P操作C.在同一信号量上调用V操作D.在不同信号量上调用V操作10._________是只能有P和V操作所改变的整形变量。
A.共享变量B.锁C.整型信号量D.记录型信号量11.在执行V操作时,当信号量的值_________时,应释放一个等待该信号量的进程。
A.大于0B.小于0C.大于等于0D.小于等于012.进程和程序的主要区别是__________.A.占用处理器和不占用处理器B.占用主存和不占用主存C.动态和静态D.连续执行和非连续执行13.有三个进程P1,P2,P3共享同一个程序段,而每次最多允许两个进程进入该程序段,则信号量S的初值为___________.A. 0B. 1C. 2D. 314.若P、V操作的信号量S初值为2,当前值为-1,则表示有_________等待进程。
操作系统第4章习题带答案

第四章一、问答题1、同步机制应遵循的准则是什么?2、死锁产生的4个必要条件是什么?它们是彼此独立的吗?3、简述死锁的定义和死锁产生的原因。
4、简述死锁定理和解除死锁的方法。
5、什么是安全状态?怎么判断系统是否处于安全状态?6、同步机制应遵循的准则是什么?7、死锁产生的4个必要条件是什么?它们是彼此独立的吗?二、计算题(共20分)1、当前系统中出现下述资源分配情况:利用银行家算法,试问如果进程P2提出资源请求Request(1,2,2,2)后,系统能否将资源分配给它?答:Request(1,2,2,2)<=(2,3,5,6)申请合法Request(1,2,2,2)<=Available,开始试探性分配,Available=(0,4,0,0) 测试系统是否安全:work= Available,finish=1没有进程的need满足<=work系统处于不安全状态,系统拒绝此次资源分配。
2、当前某系统有同类资源7个,进程P,Q所需资源总数分别为5,4。
它们向系统申请资源的次序和数量如表所示。
回答:问:采用死锁避免的方法进行资源分配,请你写出系统完成第3次分配后各进程占有资源量,在以后各次的申请中,哪次的申请要求可先得到满足?答:第1次申请,Q申请资源2,系统安全,分配第2次申请,P申请资源1,系统安全,分配第3次申请,Q申请资源1,系统安全,分配资源剩余3个,P占有1个资源,Q占有3个资源,第4次分配不安全,拒绝,第5分配系统安全,满足。
3、一个计算机系统有6个磁带驱动器和4个进程。
每个进程最多需要n个磁带驱动器。
问当n为什么值时,系统不会发生死锁?并说明理由答:n=2理由同第4题(进程资源最大需求-1)×进程数量+1≤系统资源数量4、若系统有某类资源m×n+1个,允许进程执行过程中动态申请该类资源,但在该系统上运行的每一个进程对该资源的占有量任何时刻都不会超过m+1个。
操作系统习题第四章

第四章互斥、同步与通讯一、单项选择题1.一个正在访问临界资源的进程由于申请等待I/O操作而被中断时,__________. 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.设有三个进程共享一个资源,如果每次只允许一个进程使用该资源,则用PV操作管理时信号量S的可能取值是___________ A.1,0,-1,-2 B.2,0,-1,-2 C.1,0,-1 D.3,2,1,0 7.进程的并发执行是指若干个进程__________. A. 同时执行B. 在执行的时间上是重叠的C. 在执行的时间上是不可重叠的D. 共享系统资源8.在进程通信中,__________常用信件交换信息。
A.低级通信 B.高级通信 C.消息通信 D.管道通信9.实现进程同步时,每一个消息与一个信号量对应,进程_________可把不同的消息发送出去。
A.在同一信号量上调用P操作B.在不同信号量上调用P操作C.在同一信号量上调用V操作D.在不同信号量上调用V操作10._________是只能有P和V操作所改变的整形变量。
A.共享变量B.锁C.整型信号量D.记录型信号量11.在执行V操作时,当信号量的值_________时,应释放一个等待该信号量的进程。
A.大于0 B.小于0 C.大于等于0 D.小于等于0 12.进程和程序的主要区别是__________. A.占用处理器和不占用处理器B.占用主存和不占用主存C.动态和静态D.连续执行和非连续执行13.有三个进程P1,P2,P3共享同一个程序段,而每次最多允许两个进程进入该程序段,则信号量S的初值为___________. A. 0 B. 1 C. 2 D. 3 14.若P、V操作的信号量S初值为2,当前值为-1,则表示有_________等待进程。
操作系统考试必备第四章习题(存储器管理)

一、单项选择题1.在存储管理方案中,可与覆盖技术配合。
A. 页式管理B.段式管理C.段页式管理D.可变分区管理2.在存储管理中,采用覆盖与交换技术的目的是。
A. 节省主存空间B.物理上扩充主存容量C. 提高CPU效率D.实现主存共享3.动态重定位技术依赖于。
A. 重定位装入程序B.重定位寄存器C. 地址机构D.目标程序4. 虚拟存储器的最大容量。
A. 为内外存容量之和B.由计算机的地址结构决定C.是任意的 D. 由作业的地址空间决定5.在虚拟存储系统中,若进程在内存中占3块(开始时为空),采用先进先出页面淘汰算法,当执行访问页号序列为1、2、3、4、l、2、5、1、2、3、4、5、6时,将产生次缺页中断。
A.7 B.8 C.9 D.106.很好地解决了“零头”问题的存储管理方法是。
A. 页式存储管理B.段式存储管理C. 多重分区管理D.可变式分区管理7.系统“抖动”现象的发生是由引起的。
A. 置换算法选择不当B.交换的信息量过大C. 内存容量不足D. 请求页式管理方案8.分区管理中采用“最佳适应”分配算法时,宜把空闲区按次序登记在空闲区表中。
A. 长度递增B.长度递减C. 地址递增D. 地址递减9.在固定分区分配中,每个分区的大小是。
A. 相同B.随作业长度变化C. 可以不同但预先固定D.可以不同但根据作业长度固定10.实现虚拟存储器的目的是。
A. 实现存储保护D.实现程序浮动C.扩充辅存容量D.扩充主存容量11.采用段式存储管理的系统中,若地址用24位表示,其中8位表示段号,则允许每段的最大长度是。
A.224B.216C.28D.23212.作业在执行中发生了缺页中断,经操作系统处理后,应让其执行指令。
A. 被中断的前一条B.被中断的C.被中断的后一条D.启动时的第一条13.把作业地址空间中使用的逻辑地址变成内存中物理地址的过程称为。
A. 重定位B.物理化C.逻辑化D.加载14.首次适应算法的空闲区是。
操作系统第四章进程调度和死锁习题及答案

第四章一、单项选择题1.为了根据进程的紧迫性做进程调度,应采用(B )。
A.先来先服务调度算法 B. 优先数调度算法 C.时间片轮转调度法 D.分级调度算法2.采用时间片轮转法调度是为了( A)。
A.多个终端都能得到系统的及时响应 B.先来先服务C. 优先数高的进程先使用处理器 D.紧急事件优先处理3.采用优先数调度算法时,对那些具有相同优先数的进程再按( A )的次序分配处理器。
A 先来先服务 B. 时间片轮转 C. 运行时间长短 D.使用外围设备多少4. 当一进程运行时,系统强行将其撤下,让另一个更高优先数的进程占用处理器,这种调度方式是( B )。
A. 非抢占方式B.抢占方式 C. 中断方式 D.查询方式5.( B)必定会引起进程切换。
A.一个进程被创建后进入就绪态B.一个进程从运行态变成阻塞态C.一个进程从阻塞态变成就绪态6.( B)只考虑用户估计的计算机时间,可能使计算时间长的作业等待太久。
A.先来先服务算法B.计算时间短的作业优先算法C.响应比最高者优先算法 D.优先数算法7.先来先服务算法以( A )去选作业,可能会使计算时间短的作业等待时间过长。
A.进入的先后次序 B.计算时间的长短 C.响应比的高低 D.优先数的大小8.可以证明,采用( C )能使平均等待时间最小。
A.优先数调度算法 B.均衡调度算法C.计算时间短的作业优先算法 D.响应比最高者优先算法9.在进行作业调度时.要想兼顾作业等待时间和计算时间,应选取(D )。
A均衡调度算法 B.优先数调度算法C.先来先服务算法D.响应比最高者优先算法10.作业调度算法提到的响应比是指( B )。
A.作业计算时间与等待时间之比B.作业等待时间与计算时间之比C.系统调度时间与作业等待时间之比 D.作业等待时间与系统调度时间之比11.作业调度选择一个作业装入主存后,该作业能否占用处理器必须由( D )来决定。
A.设备管理 B.作业控制 C.驱动调度D.进程调度12.系统出现死锁的根本原因是( D )。
操作系统第4章习题带答案

操作系统第4章习题带答案第四章⼀、问答题1、同步机制应遵循的准则是什么?2、死锁产⽣的4个必要条件是什么?它们是彼此独⽴的吗?3、简述死锁的定义和死锁产⽣的原因。
4、简述死锁定理和解除死锁的⽅法。
5、什么是安全状态?怎么判断系统是否处于安全状态?6、同步机制应遵循的准则是什么?7、死锁产⽣的4个必要条件是什么?它们是彼此独⽴的吗?⼆、计算题(共20分)1、当前系统中出现下述资源分配情况:利⽤银⾏家算法,试问如果进程P2提出资源请求Request(1,2,2,2)后,系统能否将资源分配给它?答:Request(1,2,2,2)<=(2,3,5,6)申请合法Request(1,2,2,2)<=Available,开始试探性分配,Available=(0,4,0,0) 测试系统是否安全:work= Available,finish=1没有进程的need满⾜<=work系统处于不安全状态,系统拒绝此次资源分配。
2、当前某系统有同类资源7个,进程P,Q所需资源总数分别为5,4。
它们向系统申请资源的次序和数量如表所⽰。
回答:问:采⽤死锁避免的⽅法进⾏资源分配,请你写出系统完成第3次分配后各进程占有资源量,在以后各次的申请中,哪次的申请要求可先得到满⾜?答:第1次申请,Q申请资源2,系统安全,分配第2次申请,P申请资源1,系统安全,分配第3次申请,Q申请资源1,系统安全,分配资源剩余3个,P占有1个资源,Q占有3个资源,第4次分配不安全,拒绝,第5分配系统安全,满⾜。
3、⼀个计算机系统有6个磁带驱动器和4个进程。
每个进程最多需要n个磁带驱动器。
问当n为什么值时,系统不会发⽣死锁?并说明理由答:n=2理由同第4题(进程资源最⼤需求-1)×进程数量+1≤系统资源数量4、若系统有某类资源m×n+1个,允许进程执⾏过程中动态申请该类资源,但在该系统上运⾏的每⼀个进程对该资源的占有量任何时刻都不会超过m+1个。
操作系统 第四章课后部分答案

6、为什么要引进动态重定位?如何实现?为了能够在程序执行过程中,每当要访问指令或数据时,将要访问的存储单元的逻辑地址转换成物理地址,引入了动态重定位。
使用动态地址重定位,一个作业可以占用非连续存储空间;能实现虚拟存储;有利于程序段的共享。
可在系统中增加一个重定位寄存器,用它来存放程序在内存中的起始地址。
基本的地址变换计算方法是将内存单元的逻辑地址与重定位寄存器的值相加,得到单元的物理地址。
在可重定位分区式存储管理、分页式存储管理、分段式存储管理方法中,都有不同的地址变换位方法:P128,P135,P138 9、分区存储管理常用哪些分配策略?比较它们的优缺点。
分区存储管理中常采用的分配策略有:首次适应算法、循环首次适应算法、最佳适应算法、最坏适应算法。
a.首次适应算法的优缺点:保留了高址部分的大空闲区,有利于后到来的大型作业的分配;低址部分不断被划分,留下许多难以利用的、小的空闲区,且每次分区分配查找时都是从低址部分开始,会增加查找时的系统开销。
b.循环首次适应算法的优缺点:使内存中的空闲分区分布得更为均匀,减少了查找时的系统开销;缺乏大的空闲分区,从而导致不能装入大型作业。
c.最佳适应算法的优缺点:每次分配给文件的都是最适合该文件大小的分区;内存中留下许多难以利用的小的空闲区。
d.最坏适应算法的优缺点:给文件分配分区后剩下的的空闲区不至于太小,产生碎片的几率最小,对中小型文件分配分区操作有利;使存储器中缺乏大的空闲区,对大型文件的分区分配不利。
14、较详细的说明引入分段存储管理方式是为了满足用户哪几个方面的需求。
方便编程、信息共享、信息保护、动态增长、动态链接。
P13617、分页和分段存储管理有何区别?(1) 页是信息的物理(存储)单位,分页是为实现离散分配方式,以消减内存的零头,提高内存的利用率。
或者说,分页仅仅是由于系统管理的需要而不是用户的需要。
段则是信息的逻辑单位,它含有一组其意义相对完整的信息。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.为什么要配置层次式存储器?这是因为(1)设置多个存储器可以使存储器两端的硬件能并行工作。
(2).采用多级存储系统,特别是Cache技术,这是一种减轻存储器带宽对系统性能影响的最佳结构方案。
(3)在微处理机内部设置各种缓冲存储器,以减轻对存储器存取的压力。
增加CPU中寄存器的数量也可大大缓解对存储器的压力。
2.可采用哪几种方式将程序装入内存?它们分别适用于何种场合?将程序装入内存可采用的方式有:绝对装入方式、重定位装入方式、动态运行时装入方式,绝对装入方式适用于单道程序环境中,重定位装入方式和动态运行时装入方式适用于多道程序环境中。
3.何谓静态链接?静态链接时需要解决两个什么问题?a.静态链接是指在程序运行之前,先将各自目标模块及它们所需的库函数,链接成一个完整的装配模块,以后不再拆开的链接方式。
b.装入时动态链接是指将用户源程序编译后所得到的一组目标模块在装入内存时,采用边装入边链接的一种链接方式,即在装入一个目标模块时,若发生一个外部模块调用事件,将引起装入程序去找相应的外部目标模块,把它装入内存中,并修改目标模块中的相对地址。
c.运行时动态链接是将对某些模块的链接推迟到程序执行时才进行链接,也就是,在执行过程中当发现一个被调用模块尚未装入内存时,立即由OS去找到该模块并将之装入内存,把它链接到调用者模块上。
4.何谓装入时动态链接?装入时动态链接方式有何优点?这是指将用户源程序编译后所得到的一组目标模块,再装入内存时,采用边装入边链接的链接方式。
即在装入一个目标模块时,若发生一个外部模块调用事件,将引起装入程序去找出对应的外部目标模块,并将它装入内存装入时动态链接方式有以下优点:①便于修改和更新。
采用动态链接方式,由于各目标模块是分开存放的,所以要修改或更新目标模块是件非常容易的事。
②便于实现对目标模块的共享。
再采用静态链接方式时,每个应用模块都必须含有其目标模块的拷贝,无法实现对目标模块的共享。
但采用装入时动态链接方式时,OS就很容易将个目标模块链接到几个应用模块上,实现多个应用程序对该模块的共享。
5.何谓运行时动态链接?运行时动态链接方式有何优点?在许多情况下,应用程序在运行时,每次要运行的模块可能都是不相同的。
但由于事先无法知道本次要运行哪些模块,故只能是将所有可能要运行到的模块全部都装入内存,并在装入时全部链接在一起,显然这是低效的,因为往往会有部分目标模块根本就不运行。
近几年流行起来的运行时动态链接方式,是对上述装入时链接方式的一种改进。
这种链接方式是,将对某些模块的链接推迟到程序执行时才进行。
亦即,在执行过程中,当发现一个被调用模块尚未装入内存时,立刻由0S去找到该模块,将之装入内存,将其链接到调用者模块上,这样不仅能加快程序的装入过程,而且可节省大量的内存空间。
6.在动态分区分配方式中,应如何将各空闲分区链接成空闲分区链?为了实现对空闲分区的分配和链接,在每个分区的起始部分设置一些用于控制分区分配的信息以及用于链接各分区所用的前向指针,在分区尾部则设置一后向指针。
通过前、后向链接指针,可将所有的空闲分区链接成一个双向链。
为了检索方便,在分区尾部重复设置状态位和分区大小表目。
当分区被分配出去以后,把状态位由“0”改为“1”,此时,前、后向指针已无意义。
7.为什么要引入动态重定位?如何实现?在动态运行时装入的方式中,作业装入内存后的所有地址仍然都是相对(逻辑)地址。
而将相对地址转换为绝对(物理)地址的工作被推迟到程序指令要真正执行时进行。
为使地址的转换不会影响到指令的执行速度,必须有硬件地址变换机构的支持,即须在系统中增设一个重定位寄存器,用它来存放数据在内存中的起始地址。
程序在执行时,真正访问的内存地址是相对地址与重定位寄存器中的地址相加而形成的。
地址变换过程是在程序执行期间,随着对每条指令或数据的访问自动进行的,故称为动态重定位。
当系统对内存进行了“紧凑”,而使若干程序从内存的某处移至另一处时,不需对程序做任何修改,只要用该程序在内存中的新起始地址去置换原来的起始地址即可。
8.什么是基于顺序搜索的动态分区分配算法?它可分为哪几种?为了实现动态分区分配,通常是将系统中的空闲分区链接成一个链。
所谓顺序搜索,是指依次搜索空闲分区链上的空闲分区,去寻找一个其大小能满足要求的分区。
基于顺序搜索的动态分区分配算法分为四种:①首次适应算法②循环首次适应算法③最佳适应算法④最坏适应算法。
9.在采用首次适应算法回收内存时,可能出现哪几种情况?应怎样处理这些情况?可能出现的情况有四种:(1)回收区与插入点的前一个空闲分区相邻接,此时应将回收区与插入点的前一分区合并不必再为回收分区分配新表项,而只需修改其前一分区的大小(2)回收分区与插入点的后一空闲分区相邻接,此时也可将两分区合并,形成新的空闲分区,但用回收区的首址作为新空闲区的首址,大小为两者之和。
(3)回收区同时与插入点的前、后两个分区邻接,此时将三个分区合并,使用第一个分区的表项和首址,取消其后一分区的表项,大小修改为三者之和(4)回收区没有与之相邻接的空闲分区,这时应为回收区单独建立一个新表项,填写回收区的首址和大小,并根据其首址插入到空闲链中的适当位置。
10.什么是基于索引搜索的动态分区分配算法?它可分为哪几种?基于顺序搜索的动态分区分配算法,比较适用于不太大的系统。
当系统很大时,系统中的内存分区可能会很多,相应的空闲分区链就可能很长,这时采用顺序搜索分区方法可能会很慢为了提高搜索空闲分区的速度,在大、中型系统中往往会采用基于索引搜索的动态分区分配算法。
它分为三种:①快速适应算法②伙伴系统③哈希算法。
11.令buddy(x)为大小为2、地址为x的块的伙伴系统地址,试写出buddy(x)的通用表达式x+2^k-[(x/2^k)%2]*2^(k+1)12.分区存储管理中常用哪些分配策略?比较它们的优缺点(1)固定分区分配将整个用户空间划分为若干个固定大小的区域,在每个分区中只装入道作业,这样就形成了最早的、也是最简单的一种可运行多道程序的分区式存储管理方式①分区大小相等。
其缺点是缺乏灵活性,即当程序太小时,会造成内存空间的浪费。
当程序太大时,一个分区又不足以装入该程序,致使该程序无法运行。
尽管如此,对于利用一台计算机同时控制多个相同对象的场合,因为这些对象所需的内存空间大小往往相同,这种划分方式比较方便和实用,所以被广泛采用。
②分区大小不等。
增加了存储器分配的灵活性,可以根据用户的需要来划分。
固定分区分配是最早出现的、可用于多道程序系统的存储管理方式,由于每一个分区的大小固定,必然会造成存储空间的浪费(2)动态分区分配。
又称为可变分区分配,它是根据进程的实际需要,动态地为之分配内存空间。
这种方式具有较大的灵活性,也提高了内存利用率,但是随着对内存的不断分配释放操作会引起存储碎片的产生。
13.为什么要引入对换?对换可分为哪几种类型?对换技术也称为交换技术,由于当时计算机的内存都非常小,为了使该系统能分时运行读个用户程序而引入了对换技术。
根据每次对换时所兑换的数量,可将对换分为如下两类:(1)整体对换。
处理机中级调度实际上就是存储器的对换功能,其目的是用来解决内存紧张问题,并进一步提高内存的利用率和系统的吞吐量。
由于在中级调度中对换是以整个进程为单位的,故称之为“进程对换”或“整体对换”。
这种对换被广泛地应用于多道程序系统中,并作为处理机的中级调度。
(2)页面(分段)对换,如果对换是以进程的一个“页面”或“分段”为单位进行的,分别称之为“页面对换”或“分段对换”,又统称为“部分对换”。
这种对换方法的目的是为了支持虚拟存储系统。
14.对文件区管理的目标和对对换空间管理的目标有何不同?(1)对文件区管理的主要目标文件区占用磁盘的大部分空间,用于存放各类文件。
由于通常的文件都是较长时间地驻留在外存上,对它的访问频率是较低的。
因此对文件区管理的主要目标是提高文件存储空间的利用率,然后才是提高对文件的访问速度。
因此,对文件区的管理采取离散分配方式(2)对对换空间管理的主要目标对换空间只占用磁盘的小部分,用于存放从内存换出的进程。
由于这些进程在对换区驻留的时间是短暂的,而对换操作的频率却极高,故对对换空间管理的主要目标是提高进程换入换出的速度,然后才是提高文件存储空间的利用率。
为此,对对换区空间的管理采取连续分配方式,较少考虑外存中的碎片问题。
15.为实现对换,系统应具备哪几方面的功能?(1)对对换空间的管理。
为了实现对对换区中的空闲盘块的管理,在系统中应配置相应的数据结构,用于记录外存对换区中空间盘块的使用情况。
对换分区的分配和回收,分配算法有首次适应算法,循环首次适应算法,最佳适应算法和最坏适应算法(2)进程的换出。
①选择被换出的进程。
②进程换出过程。
在进程换出时,应先申请对换空间,若申请成功,就启动磁盘,将该进程和数据传送到磁盘的对换区上,若传送过程未出现错误,便可回收该进程所占用的内存空间,并对该进程的进程控制块和内存分配表等数据结构做出相应的修改。
若此时内存中还有可换出的进程,则继续执行换出过程,直到内存中再无阻塞进程为止。
(2)进程的换入。
对对换进程将定期执行换入操作,它首先查看PCB集合中所有进程的状态,从中找岀“就绪”状态但已换岀的进程。
当有许多这样的进程时,它将选择其中已换出到磁盘上时间最久的进程作为换入进程,为他申请内存,如果申请成功,可直接将进程从外存调入内存;如果失败,则需先将内存中的某些进程换出,腾出足够的内存空间后,再将进程调入。
16.在以进程为单位进行对换时,每次是否都将整个进程换出?为什么?在以进程为单位进行对换时,并非每次都将整个进程换出。
①从结构上讲,进程由程序段数据段和PCB组成,其中进程控制块总有部分或全部常驻内存,不被换出。
②程序段和数据段可能正在被若干进程共享,此时它们也不能换出。
因为在进程的换出中,只能选择换出非共享的数据段和程序段,而对于哪些共享的程序和数据段,只要还有进程需要他,就不能被换出。
17.基于离散分配时所用的基本单位不同,可将离散分配分为哪几种?基于离散分配时所用的基本单位不同,可将离散分配分为(1)分页存储管理方式。
在该方式中,将用户程序的地址空间分为若干个固定大小的区域称为“页”或“页面”。
典型的页面大小为1KB。
相应的。
也将内存空间分为若干个物理块或页框,页和块的大小相同。
这样可将用户程序的任一页放入任一物理块中,实现了离散分(2)分段存储管理方式。
这是为了满足用户要求而形成的一种存储管理方式。
它把用户程序的地址空间分为若干个大小不同的段,每段可定义一组相对完整的信息。
在存储器分配时,以段为单位,这些段在内存中可以不相邻接,所以也同样实现了离散分配(3)段页式存储管理方式。