操作系统-第4章复习题答案
- 格式:pdf
- 大小:131.48 KB
- 文档页数:6
操作系统-第4章复习题答案操作系统第四章复习题⼀、选择题1、在可变式分区分配⽅案中,某⼀作业完成后系统收回其主存空间,并与相邻空闲区合并,为此修改空闲区表,造成空闲区数减⼀的情况是( D )。
A ⽆上邻空闲区,也⽆下邻空闲区B 有上邻空闲区,但⽆下邻空闲区C 有下邻空闲区,但⽆上邻空闲区D 有上邻空闲区,也有下邻空闲区2、分区式存储器管理⽅式,每个程序(B)。
A ⼀定在分区中连续,部分存放B ⼀定在分区中连续,整体存放C 可以在分区中不连续,整体存放D 可以在分区中连续,部分存放3、下列选项中对分段存储管理叙述正确的是(B)A 分段存储管理中每个段必须是⼤⼩相等的。
B 每⼀段必须是连续的存储区C 每⼀段不必是连续的存储区D 段间的存储区必须是连续的4、下列对重定位的叙述中,正确的选项是(B)。
A 经过静态重定位后,指令代码并不发⽣变化。
B 经过静态重定位后,数据地址和指令地址发⽣了变化C 经过动态重定位后,指令代码中的操作码和操作数地址都要发⽣变化。
D经过动态重定位后,数据地址发⽣了变化⽽指令地址没有发⽣变化。
5、虚拟存储器功能的管理⽅法包括(C)。
A 可变分区存储管理B 基本分页存储管理C 请求分段存储管理D 段页式存储管理6、虚拟存储器的最⼤容量(C)。
A 由作业的地址空间决定B 是任意的C 由计算机的地址结构决定的D 为内、外容量之和7、操作系统为( C )分配内存空间。
A线程B⾼速缓冲存储器(Cache)C 进程 D 块表8、下⾯的页⾯置换算法中会产⽣所谓Belady异常现象的是(B)。
A 最佳页⾯置换算法(OPT)B 先进先出页⾯置换算法(FIFO)C 最近最久未使⽤页⾯置换算法(LRU)D 最少使⽤页⾯置换算法(LFU)9、采⽤( B )不会产⽣内部碎⽚。
A 分页式存储管理B 分段式存储管理C 固定分区式存储管理D 段页式存储管理10、最佳适应算法的空闲区是(B)。
A 按⼤⼩递减顺序连在⼀起B按⼤⼩递增顺序连在⼀起C 按地址由⼩到⼤排列D 按地址由⼤到⼩排列11、在可变式分区存储管理中的拼接技术可以(A)。
操作系统--精髓与设计原理(第⼋版)第四章复习题答案操作系统--精髓与设计原理(第⼋版)第四章复习题答案4.1 表3.5列出了在⼀个没有线程的操作系统中进程控制块的基本元素。
对于多线程系统,这些元素中哪些可能属于线程控制块,哪些可能属于进程控制块?这对于不同的系统来说通常是不同的,但⼀般来说,进程是资源的所有者,⽽每个线程都有它⾃⼰的执⾏状态。
关于表3.5中的每⼀项的⼀些结论如下:进程控制信息:调度和状态信息主要处于线程级;数据结构在两级都可出现;进程间通信和线程间通信都可以得到⽀持;特权在两级都可以存在;存储管理通常在进程级;资源信息通常也在进程级;进程标识:进程必须被标识,⽽进程中的每⼀个线程也必须有⾃⼰的ID。
处理器状态信息:这些信息通常只与进程有关。
4.2 请列出线程间的模式切换⽐进程间的模式切换开销更低的原因。
包含的状态信息更少。
4.3 在进程概念中体现出的两个独⽴且⽆关的特点是什么?资源所有权: 进程包括存放进程映像的虚拟地址空间;回顾第3章的内容可知,进程映像是程序、数据、栈和进程控制块中定义的属性集。
进程总具有对资源的控制权或所有权,这些资源包括内存、I/O通道、I/O设备和⽂件等。
操作系统提供预防进程间发⽣不必要资源冲突的保护功能。
调度/执⾏:进程执⾏时采⽤⼀个或多程序(见图1.5)的执⾏路径(轨迹),不同进程的执⾏过程会交替进⾏。
因此,进程具有执⾏态(运⾏、就绪等)和分配给其的优先级,是可被操作系统调度和分派的实体。
4.4 给出在单⽤户多处理系统中使⽤线程的四个例⼦。
前台和后台操作异步处理加速执⾏模块化程序结构。
4.5 哪些资源通常被⼀个进程中的所有线程共享?进程中的所有线程共享该进程的状态和资源,例如地址空间,⽂件资源,执⾏特权等。
4.6 列出⽤户级线程由于内核级线程的三个优点。
由于所有线程管理数据结构都在⼀个进程的⽤户地址空间中,线程切换不需要内核级模式的特权,因此,进程不需要为了线程管理⽽切换到内核模式,这节省了在两种模式间进⾏切换(从⽤户模式到内核模式;从内核模式返回⽤户模式)的开销。
第四章复习题一、单项选择题1. 在可变分区存储管理中,若采用最先适应分配算法宜将空闲区按(B)次序登记在空闲区表中。
A. 地址递减B. 地址递增C. 长度递减D. 长度递增2. 采用固定分区存储管理的计算机系统中(D)的做法是错误的。
A. 为作业分配的分区不能小于作业长度B. 可同时在多个分区中各装一个作业C. 不允许多个作业同时存放在一个分区中D. 一个分区中可同时装入多个作业3. 不适宜采用虚拟存储管理技术的存储管理方式是(D)。
A. 页式B. 段式C. 段页式D. 可变分区4. 在多道程序设计系统中,采用了页式存储管理。
如果允许并行工作的道数为n(n>1),则系统中同时建立的页表数一定为(C)。
A. 1B. nC. <=nD. n+15. 在单用户连续存储管理中,可供用户使用的主存区域起始地址存放在(B)。
A. 基址寄存器B. 界限寄存器C. 限长寄存器D. 相联寄存器6. 重定位的含义是(C)。
A. 把主存中的一个程序从一个区域重新定位到另一个区域B. 把绝对地址转换成逻辑地址C. 把逻辑地址换砖成绝对地址D. 把辅助存储器中的程序定位到主存的某个区域7. 在分页式存储管理中,逻辑地址由页号和页内地址两部分组成。
因而,分页的工作是在(C)时进行的。
A. 用户编制程序B. 地址转换C. 操作系统装入作业D. 系统初始化8. 采用固定分区存储管理的计算机系统中(D)的做法是错误的。
A. 为作业分配的分区不能小于作业长度B. 可同时在多个分区中各装一个作业C. 不允许多个作业同时存放在一个分区中D. 一个分区中可同时装入多个作业9. 在分页式虚拟存储管理中,若发现所要访问的页面不在主存储器中,则硬件要产生一个(C)中断。
A. I/OB. 缺段C. 缺页D. 访管10. 主存储器的每个存储单元都有一个地址与其对应,假定这些地址用n个二进制位来区分,则主存储器的容量为(D)。
A. 2n个字B. 2n-1个字C. 2n-1个字节D. 2n个字节11. LRU页面调度算法总是选择(C)页面调出。
第4章进程同步与通信1)选择题(1)在操作系统中,P、V操作是一种_D__。
A. 机器指令B. 系统调用命令C. 作业控制命令D. 低级进程通信原语(2)若信号量S的初值为2,当前值为-1,则表示有_B__等待进程。
A. 0个B. l个C. 2个D. 3个(3)在直接通信方式中,系统提供两条通信原语进行发送和接收,其中Send原语中参数应是_C_。
A. sender,messageB. sender,mailboxC. receiver,messageD. receiver,mailbox(4)下述那个选项不是管程的组成部分_A__。
A. 管程外过程调用管程内数据结构的说明B. 管程内对数据结构进行操作的一组过程C. 局部于管程的共享数据说明D. 对局部于管程的数据结构设置初值的语句(5)某通信方式通过共享存储区来实现,其属于_D__。
A. 消息通信B. 低级通信C. 管道通信D. 高级通信(6)用P、V操作管理临界区时,信号量的初值应定义为__C__。
A. -1B. 0C. 1D. 任意值(7)临界区是_B__。
A. 一个缓冲区B. 一段程序C. 一段共享数据区D. 一个互斥资源(8)信箱通信是一种_D__通信方式。
A. 直接通信B. 信号量C. 低级通信D. 间接通信(9)对于两个并发进程,设互斥信号量为mutex,若mutex=0则__A_。
A. 表示有一个进程进入临界区B. 表示没有进程进入临界区C. 表示有一个进程进入临界区,另一个进程等待进入D. 表示有两个进程进入临界区(10)对信号量S执行V操作后,下述选项正确的是_C__。
A. 当S小于等于0时唤醒一个阻塞进程B. 当S小于0时唤醒一个阻塞进程C. 当S小于等于0时唤醒一个就绪进程D. 当S小于0时唤醒一个就绪进程(11)在消息缓冲通信中,消息队列属于_A__资源。
A. 临界B. 共享C. 永久D. 可剥夺(12)在消息缓冲通信机制中,使用的临界资源是_D__。
第四章一、问答题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个。
第四章参考答案4、为了实现对空闲分区的分配和链接,在每个分区的起始部分,用两个字段设置一些用于控制分区分配的信息(如分区的大小和状态位),以及用于链接其它分区的前向指针;在分区尾部,用两个字段设置了一个后向指针,为了检索方便也设置了控制分区分配的信息。
然后,通过前、后向指针将所有的分区链接成一个双向链表。
5、在连续分配内存方式中,会出现不能被利用的“零头”或“碎片”,为了利用这些“零头”或“碎片”,就必须进行数据或程序的移动—“紧凑”,因此相应的这些程序或数据在内存中的位置就必须进行修改,否则就无法执行。
从本质上讲引入动态重定位,就是在连续分配内存方式下,进一步提高内存利用率的一种方法。
实现技术动态重定位必须获得硬件支持。
只有具有动态重定位硬件机构的计算机系统,才有可能采取动态重定位可变分区多道管理技术,系统的硬件包括重定位寄存器和加法器8、为了实现进程对换,系统必须具备对换空间的管理,进程换入、换出等三项功能。
9、p113.不是,只换出进程的程序与数据,PCB不换出(只进行修改,表示该进程在外边)。
10、页表寄存器11、分段存储管理方式的引入是为了满足用户下列要求(1)便于编程通常用户常常把自己的作业按照逻辑关系划分成若干个段,每个段都有自己的名字,且都从零开始编址,这样,用户程序在执行中可用段名和段内地址进行访问。
例如:LOAD 1,[A] | <D> 这条指令的含义是将分段A中的D单元内的值读入寄存器1。
(2)信息共享(分段共享)在实现程序和数据的共享时,常常以信息的逻辑单位为基础,而分页系统中的每一页只是存放信息的物理单位,其本身没有完整的意义,因而不便于实现信息的共享,而段却是信息的逻辑单位,有利于信息的共享。
(3)分段保护信息保护是对相对完整意义的逻辑单位(段)进行保护。
(4)动态连接通常一个源程序经过编译后所形成的若干个目标程序,还需再经过链接,形成可执行代码后才能运行,这种在装入时进行的链接称为静态链接。
第4章存储管理“练习与思考”解答1.基本概念和术语逻辑地址、物理地址、逻辑地址空间、内存空间、重定位、静态重定位、动态重定位、碎片、碎片紧缩、虚拟存储器、快表、页面抖动用户程序经编译之后的每个目标模块都以0为基地址顺序编址,这种地址称为相对地址或逻辑地址。
内存中各物理存储单元的地址是从统一的基地址开始顺序编址的,这种地址称为绝对地址或物理地址。
由程序中逻辑地址组成的地址范围叫做逻辑地址空间,或简称为地址空间。
由内存中一系列存储单元所限定的地址范围称作内存空间,也称物理空间或绝对空间。
程序和数据装入内存时,需对目标程序中的地址进行修改。
这种把逻辑地址转变为内存物理地址的过程称作重定位。
静态重定位是在目标程序装入内存时,由装入程序对目标程序中的指令和数据的地址进行修改,即把程序的逻辑地址都改成实际的内存地址。
动态重定位是在程序执行期间,每次访问内存之前进行重定位。
这种变换是靠硬件地址转换机构实现的。
内存中这种容量太小、无法被利用的小分区称作“碎片”或“零头”。
为解决碎片问题,移动某些已分配区的内容,使所有进程的分区紧挨在一起,而把空闲区留在另一端。
这种技术称为紧缩(或叫拼凑)。
虚拟存储器是用户能作为可编址内存对待的虚拟存储空间,它使用户逻辑存储器与物理存储器分离,是操作系统给用户提供的一个比真实内存空间大得多的地址空间。
为了解决在内存中放置页表带来存取速度下降的矛盾,可以使用专用的、高速小容量的联想存储器,也称作快表。
若采用的置换算法不合适,可能出现这样的现象:刚被换出的页,很快又被访问,为把它调入而换出另一页,之后又访问刚被换出的页,……如此频繁地更换页面,以致系统的大部分时间花费在页面的调度和传输上。
此时,系统好像很忙,但实际效率却很低。
这种现象称为“抖动”。
2.基本原理和技术(1)存储器一般分为哪些层次?各有何特性?存储器一般分为寄存器、高速缓存、内存、磁盘和磁带。
CPU内部寄存器,其速度与CPU一样快,但它的成本高,容量小。
第四章存储器管理一、单项选择题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 )是指将作业不需要或暂时不需要的部分移到外存,让出内存空间以调入其他所需数据。
1.这些系统直接把程序载入内存,并且从word0(魔数)开始执行。
为了避免将header作为代码执行,魔数是一条branch指令,其目标地址正好在header之上。
按这种方法,就可能把二进制文件直接读取到新的进程地址空间,并且从0开始运行。
5.rename 调用不会改变文件的创建时间和最后的修改时间,但是创建一个新的文件,其创建时间和最后的修改时间都会改为当前的系统时间。
另外,如果磁盘满,复制可能会失败。
10.由于这些被浪费的空间在分配单元(文件)之间,而不是在它们内部,因此,这是外部碎片。
这类似于交换系统或者纯分段系统中出现的外部碎片。
11.传输前的延迟是9ms,传输速率是2^23Bytes/s,文件大小是2^13Bytes,故从内存读取或写回磁盘的时间都是9+2^13/2^23=9.977ms,总共复制一个文件需要9.977*2=19.954ms。
为了压缩8G磁盘,也就是2^20个文件,每个需要19.954ms,总共就需要20,923 秒。
因此,在每个文件删除后都压缩磁盘不是一个好办法。
12.因为在系统删除的所有文件都会以碎片的形式存在磁盘中,当碎片到达一定量磁盘就不能再装文件了,必须进行外部清理,所以紧缩磁盘会释放更多的存储空间,但在每个文件删除后都压缩磁盘不是一个好办法。
15.由于1024KB = 2^20B, 所以可以容纳的磁盘地址个数是2^20/4 = 2^18个磁盘地址,间接块可以保存2^18个磁盘地址。
与 10 个直接的磁盘地址一道,最大文件有 262154 块。
由于每块为 1 MB,最大的文件是262154 MB。
19.每个磁盘地址需要D位,且有F个空闲块,故需要空闲表为DF位,采用位图法则需要B位,当DF<B时,空闲表采用的空间少于位图,当D=16时,得F/B<1/D=6.25%,即空闲空间的百分比少于6.25%.20.a)1111 1111 1111 0000b)1000 0001 1111 0000c)1111 1111 1111 1100d)1111 1110 0000 110027.平均时间T = 1*h + 40*(1-h)=-39h+40ms28.1500rpm(每分钟1500转),60s/1500=0.004s=4ms,即每转需要4ms,平均旋转延迟为2ms;读取一个k个字节的块所需要的时间T是平均寻道时间,平均旋转延迟和传送时间之和。