《2022年计算机操作系统-章课后经典习题参考答案.docx》由会员分享,可在线阅读,更多相关《2022年计算机操作系统-章课后经典习题参考答案.docx(13页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选学习资料 - - - - - - - - - 课后习题第一章1 设计现代 OS 的主要目标是什么?答:( 1)有效性(2 )便利性(3 )可扩充性(4 )开放性2 OS 的作用可表现在哪几个方面?答:( 1) OS 作为用户与运算机硬件系统之间的接口(2 )OS 作为运算机系统资源的治理者(3 )OS 实现了对运算机资源的抽象3 为什么说 OS 实现了对运算机资源的抽象?答: OS 第一在裸机上掩盖一层 I/O 设备治理软件,实现了对运算机硬件操作的第一层次抽象;在第一层软件上再掩盖文件治理软件,实现了对硬件资源操作的其次层次抽象;OS 通过在运算机硬件上安装多层系统软件,增强了系统功能,
2、隐匿了对硬件操作的细节,由它们共同实现了对运算机资源的抽象;7 实现分时系统的关键问题是什么?应如何解决?答:关键问题是当用户在自己的终端上键入命令时,系统应能准时接收并准时处理该命令,在用户能接受的时延内将结果返回给用户;解决方法:针对准时接收问题,可以在系统中设置多路卡,使主机能同时接收用户从各个终端上输入的数据;为每个终端配置缓冲区,暂存用户键入的命令或数据;针对准时处理问题,应使全部的用户作业都直接进入内存,并且为每个作业安排一个时间片,答应作业只在自己的时间片内运行,这样在不长的时间内,能使每个作业都运行一次;10 试从交互性、准时性以及牢靠性方面,将分时系统与实时系统进行比较;答:
3、( 1)准时性:实时信息处理系统对实时性的要求与分时系统类似,都是以人所能接受的等待时间来确定;而实时掌握系统的准时性,是以掌握对象所要求的开头截止时间或完成截止时间来确定的,一般为秒级到毫秒级,甚至有的要低于 100 微妙;(2 )交互性:实时信息处理系统具有交互性,但人与系统的交互仅限于拜访系统中某些特定的专用服务程序;不像分时系统那样能向终端用户供应数据和资源共享等服务;(3 )牢靠性:分时系统也要求系统牢靠,但相比之下,实时系统就要求系统具有高度的牢靠性;由于任何差错都可能带来庞大的经济缺失,甚至是灾难性后果,所以在实时系统中,往往都实行了多级容错措施保证系统的安全性及数据的安全性;名
4、师归纳总结 - - - - - - -第 1 页,共 9 页精选学习资料 - - - - - - - - - 11 OS 有哪几大特点?其最基本的特点是什么?答:并发性、共享性、虚拟性和异步性四个基本特点;最基本的特点是并发性;13 什么是时分复用技术. 举例说明它能提高资源利用率的根本缘由是什么. ,从而提答:时分复用技术: 将资源在不同的时间片内安排给各进程以使该资源被重复利用高资源的利用率;如采纳时分复用技术的虚拟处理机,能够在不同的时间片内处理多个用户的恳求 , 从而使得用户感觉自己独占主机 ,而处理机在这期间也被充分的利用其次章1. 什么是前趋图?为什么要引入前趋图?答:前趋图 Pr
5、ecedence Graph 是一个有向无循环图,记为 DAGDirectedAcyclic Graph,用于描述进程之间执行的前后关系;2. 画出下面四条语句的前趋图 :S1=a:=x+y; S2=b:=z+1; S3=c: =a b ;S4=w:=c+1;答:其前趋图为:3. 什么程序并发执行会产生间断性特点?答:程序在并发执行时,由于它们共享系统资源,为完成同一项任务需要相互合作,致使这些并发执行的进程之间,形成了相互制约关系,从而使得进程在执行期间显现间断性;4 程序并发执行时为什么会失去封闭性和可再现性?答:程序并发执行时,多个程序共享系统中的各种资源,因而这些资源的状态由多个程序转
6、变,致使程序运行失去了封闭性,也会导致其失去可再现性;6 试从动态性,并发性和独立性上比较进程和程序 .答: 1 动态性是进程最基本的特性,表现为由创建而产生,由调度而执行,因得不到资源而暂停执行,由撤销而消亡;进程有肯定的生命期,而程序只是一组有序的指令集合,是静态实体;8 PCB 供应了进程治理和进程调度所需要的哪些信息 .答:进程治理:通用寄存器、指令寄存器、程序状态字、用户栈指针进程调度:进程状态、进程优先级、大事、其他信息10 何谓操作系统内核. 内核的主要功能是什么.答:操作系统内核是指大多数操作系统的核心部分;它由操作系统中用于治理储备器、文件、外设和系统资源的那些部分组成;操作
7、系统内核通常运行进程 11 试说明进程在三个基本状态之间转换的典型缘由;答: (1 )就绪状态 执行状态:进程安排到 CPU 资源,并供应进程间的通信名师归纳总结 - - - - - - -第 2 页,共 9 页精选学习资料 - - - - - - - - - (2 )执行状态 就绪状态:时间片用完(3 )执行状态堵塞状态:I/O 恳求(4 )堵塞状态就绪状态:I/O 完成16 在创建一个进程时所要完成的主要工作是什么?答:(1 )OS 发觉恳求创建新进程大事后,调用进程创建原语Creat;(2 )申请空白PCB;(3 )为新进程安排资源;(4 )初始化进程掌握块;(5 )将新进程插入就绪队列
8、 . 17 在撤销一个进程时所要完成的主要工作是什么?答:(1 )依据被终止进程标识符,从PCB 集中检索出进程PCB,读出该进程状态;(2 )如被终止进程处于执行状态,立刻终止该进程的执行,置调度标志真,指示该进程被终止后重新调度;(3 )如该进程仍有子进程,应将全部子孙进程终止,以防它们成为不行控进程;(4 )将被终止进程拥有的全部资源,归仍给父进程,或归仍给系统;(5 )将被终止进程 PCB 从所在队列或列表中移出,等待其它程序搜集信息;19 为什么要在 OS 中引入线程?答:在操作系统中引入线程,就是为了削减程序在并发执行时所付出的时空开销,使 OS具有更好的并发性,提高 CPU 的利
9、用率;进程是安排资源的基本单位 ,而线程就是系统调度的基本单位;第三章2 处理机调度算法的共同目标是什么. 批处理系统的调度目标又是什么.答: 共同目标 : 资源利用率 , 公正性 , 平稳性 , 策略强制执行;批处理系统的调度目标:平均周转时间短,系统吞吐量高,处理机利用率高;5 在作业调度中应如何确定接纳多少个作业和接纳哪些作业?名师归纳总结 - - - - - - -第 3 页,共 9 页精选学习资料 - - - - - - - - - 答: 作业调度每次接纳进入内存的作业数,取决于多道程序度;应将哪些作业从外存调入内存,取决于采纳的调度算法;最简洁的是先来服务调度算法,较常用的是短作业
10、优先调度算法和基于作业优先级的调度算法;6 为什么要引入高响应比优先调度算法 .它有何优点 .答: 在批处理系统中 ,FCFS 算法所考虑的只是作业的等待时间 ,而忽视了作业的运行时间;而 SJF 算法正好与之相反 , 只考虑作业的运行时间 ,而忽视了作业的等待时间;高响应比优先调度算法就是既考虑了作业的等待时间 ,又考虑作业运行时间的调度算法 , 因此既照料了短作业,又不致使长作业的等待时间过长,从而改善了处理机调度的性能;6 在抢占调度方式中,抢占的原就是什么?答:抢占的原就有:时间片原就、优先权原就、短作业优先权原就等;13 在时间片轮转法中,应如何确定时间片的大小?答:时间片应略大于一
11、次典型的交互需要的时间;一般应考虑三个因素:系统对相应时间的要求、就绪队列中进程的数目和系统的处理才能;21 什么是最早截止时间优先调度算法?举例说明;答:依据任务的开头截止时间确定的任务优先级调度算法;截止时间越早就优先级越高;该算法要求在系统中保持一个实时任务就绪队列,该队列按各任务截止时间的先后排序;举例:非抢占式调度方式用于非周期实时任务;图3-9 是将该算法用于非抢占调度方式之例;该例中具有四个非周期任务,它们先后到达;系统第一调度任务 1 执行,在任务 1 执行期间,任务 2 、3 又先后到达;由于任务 3 的开头截止时间早于任务 2 ,故系统在任务1 后将调度任务 3 执行;在此
12、期间又到达作业 4,其开头截止时间仍是早于任务 2 的,故在任务 3 执行完后,系统又调度任务 4 执行,最终才调度任务 2 执行;25. 试举例说明竞争不行抢占资源所引起的死锁;答:例如 ,系统中有两个进程P1 和 P2, 它们都预备写两个文件F1 和 F2, 而这两者都属于可重用和不行抢占性资源;进程P1 先打开 F1, 然后再打开文件F2; 进程 P2 先打开文件F2,后打开 F1 两个进程 P1 和 P2 在并发执行时 ,假如 P1 先打开 F1 和 F2, 然后 P2 才去打开 F1 或 F2,由于文件 F1F2 已被 P1 打开 ,故 P2 会被堵塞;当 P1 写完文件 F1 或
13、F2 而关闭F1F2 时,P2 会由堵塞状态转为就绪状态 , 被调度执行后重新打开文件 F1 或 F2 ;在这种情形下 ,P1 和 P2 都能正常运行下去;如P2 先打开 F1 和 F2, 然后 P1 才去打开 F1 或F2,P1 和 P2 同样也可以正常运行下去;但假如在 P1 打开 F1 的同时 ,P2 去打开 F2, 每个进程都占有一个打开的文件 ,此时就可能出现问题;由于当 P1 试图去打开 F2, 而 P2 试图去打开 F1 时,这两个进程都会因文件已被打开而堵塞 ,它们期望对方关闭自己所需要的文件 ,但谁也无法运行 , 因此这两个进程将会无限期地等待下去 , 而形成死锁;名师归纳总
14、结 27. 何谓死锁 . 产生死锁的缘由和必要条件是什么. 第 4 页,共 9 页- - - - - - -精选学习资料 - - - - - - - - - 答: 死锁是指多个进程在运行过程中因争夺资源而造成的一种僵局,当进程处于这种僵持状态时 ,如无外力作用 ,它们都将无法再向前推动;产生死锁的缘由为竞争资源和进程间推动次序非法;其必要条件是 : 互斥条件、恳求和保持条件、不剥夺条件、环路等待条件29. 请具体说明可通过哪些途径预防死锁;答:1摈弃“ 恳求和保持” 条件, 就是假如系统有足够资源, 便一次性把进程需要的全部资源安排给它 ; 2 摈弃“ 不剥夺” 条件 ,就是已经拥有资源的进程
15、 ,当它提出新资源恳求而不能立刻满意时 ,必需释放它已保持的全部资源 ,待以后需要时再重新申请 ; 3 摈弃“ 环路等待” 条件 ,就是将全部资源按类型排序标号 ,全部进程对资源的恳求必需严格按序号递增的次序提出31. 在银行家算法中, 如显现下述资源安排情形, 试问 :1 该状态是否安全. 名师归纳总结 2 如进程 P2 提出恳求 Request1, 2, 2, 2 后,系统能否将资源安排给它. 第 5 页,共 9 页- - - - - - -精选学习资料 - - - - - - - - - 第四章2 可采纳哪几种方式将程序装入内存?它们分别适用于何种场合?答: (1 )肯定装入方式,只适用
16、于单道程序环境;(2 )可重定位装入方式,适用于多道程序环境;(3 )动态运行时装入方式,用于多道程序环境;不答应程序运行时在内存中移位置;3 何谓静态链接?何谓装入时动态链接和运行时的动态链接?P120 答:静态链接是指在程序运行前,先将各目标模块及它们所需的库函数,链接成一个完整 的 装配模块,以后不再拆开的链接方式;装入时动态链接是指将用户源程序编译后得到的一组目标模块,在装入内存时采纳边装 入边链接的链接方式;运行时动态链接是指对某些目标模块的链接,是在程序执行中需要该目标模块时,才对 它进行的链接;名师归纳总结 - - - - - - -第 6 页,共 9 页精选学习资料 - - -
17、 - - - - - - 4. 何谓装入时动态链接.装入时动态链接方式有何优点. 答:这是指将用户源程序编译后所得到的一组目标模块,再装入内存时 , 采纳边装入边链接的链接方式;即在装入一个目标模块时 ,如发生一个外部模块调用大事 , 将引起装入程序去找出对应的外部目标模块 ,并将它装入内存;装入时动态链接方式有以下优点 : 便于修改和更新;采纳动态链接方式 , 由于各目标模块是分开存放的 ,所以要修改或更新个目标模块是件特别简洁的事;便于实现对目标模块的共享;再采纳静态链接方式时,每个应用模块都必需含有其目标模块的拷贝 ,无法实现对目标模块的共享;但采纳装入时动态链接方式时 ,OS 就很简洁
18、将一个目标模块链接到几个应用模块上, 实现多个应用程序对该模块的共享;5. 何谓运行时动态链接 .运行时动态链接有何优点 . 答:在很多情形下 ,应用程序在运行时 ,每次要运行的模块可能都是不相同的;但由于事先无法知道本次要运行哪些模块 ,故只能是将全部可能要运行到的模块全部都装入内存 ,并在装入时全部链接在一起 ,明显这是低效的 , 由于往往会有部分目标模块根本就不运行;近几年流行起来的运行时动态链接方式,是对上述装入时链接方式的一种改进;这种链接方式是, 将对某些模块的链接推迟到程序执行时才进行;亦即 ,在执行过程中 ,当发觉一个被调用模块尚未装入内存时 ,马上由 OS 去找到该模块 ,将
19、之装入内存 ,将其链接到调用者模块上 ,这样不仅能加快程序的装入过程,而且可节约大量的内存空间;7. 为什么要引入动态重定位 .如何实现 . 答:在动态运行时装入的方式中 , 作业装入内存后的全部地址仍旧都是相对 规律 地址;而将相对地址转换为肯定 物理 地址的工作被推迟到程序指令要真正执行时进行;为使地址的转换不会影响到指令的执行速度 ,必需有硬件地址变换机构的支持 ,即须在系统中增设一个重定位寄存器 , 用它来存放数据在内存中的起始地址;程序在执行时 , 真正拜访的内存地址是相对地址与重定位寄存器中的地址相加而形成的;地址变换过程是在程序执行期间 ,随着对每条指令或数据的拜访自动进行的,故
20、称为动态重定位;当系统对内存进行了“ 紧凑”,而使如干程序从内存的某处移至另一处时,不需对程序做任何修改,只要用该程序在内存中的新起始地址去置换原先的起始地址即可;11. 令 Buddykx为大小为 2k 、地址为 x 的块的伙伴系统地址, 试写出 Buddykx的通用表达式13. 为什么要引入对换.对换可分为哪几种类型. 答:对换技术也称为交换技术,由于当时运算机的内存都特别小,为了使该系统能分时运行读个用户程序而引入了对换技术;依据每次对换时所兑换的数量, 可将对换分为如下两类:名师归纳总结 - - - - - - -第 7 页,共 9 页精选学习资料 - - - - - - - - -
21、整体对换;处理机中级调度实际上就是储备器的对换功能,其目的是用来解决内存紧急问题, 并进一步提高内存的利用率和系统的吞吐量;由于在中级调度中对换是以整个进程为单位的 ,故称之为“ 进程对换” 或“ 整体对换” ;这种对换被广泛地应用于多道程序系统中 ,并作为处理机的中级调度;页面 分段 对换 , 假如对换是以进程的一个“ 页面” 或“ 分段” 为单位进行的 ,就分别称之为“ 页面对换” 或“ 分段对换”虚拟储备系统;, 又统称为“ 部分对换” ;这种对换方法的目的是为了支持18. 什么是页面 .什么是物理块.页面的大小应如何确定. ,并为各页加以编号,从 0 开头 , 答:页面;分页储备治理将
22、进程的规律空间分成如干个页如第 0 页、第 1 页等;物理块;相应的, 也把内存的物理地址空间分成如干个块,同样也为它们加以编号,如 0#块、 1# 块等等;页面大小;在分页系统中 ,如挑选过小的页面大小 ,虽然一方面可以减小内存的碎片 , 起到削减内存碎片总空间的作用 , 有利于内存利用率的提高 ,但另一方面却会造成每个进程占用较多的页面 ,从而导致进程的页表过长 ,占用大量内存;此外 ,仍会降低页面的换出的效率;然而 ,假如挑选的页面过大 , 虽然可以削减页表的长度 , 提高页面换进换出的效率 , 但却又会使页内碎片增大;因此 ,页面的大小应挑选适中 ,且页面大小应是 2 的幂 , 通常为
23、1KB8KB;19. 什么是页表 .页表的作用是什么 . 答:在分页系统中 ,答应将进程的各个页离散的储备在内存的任一物理块中 ,为保证进程仍然能够正确地运行 ,即能在内存中找到每个页面所对应的物理块 ,系统又为每个进程建立了一张页面映像表 , 简称页表;在进程地址空间内的全部页 0N, 依次在页表中有一页表项 ,其中记录了相应页表在内存中对应的物理块号;在配置了页表后, 进程执行时 ,通过查找该表, 即了找到每页在内存中的物理块号;可见 ,也表的作用是实现从页号到物理块号的地址映射;21. 在分页系统中是如何实现地址变换的 . 答:页表功能是由一组特地的寄存器来实现的;一个页表项用一个寄存器
24、;由于寄存器具有较高的拜访速度 ,因而有利于提高地址变换的速度 ,但由于寄存器成本较高 ,页表又可能很大, 因此 ,页表大多驻留在内存中 ,在系统中只设置一个页表寄存器 ,在其中存放页表在内存的始址和页表的长度;当进程要拜访某个规律地址中的数据时, 分页地址变换机构会自动将有效地址分为页号和页内地址两部分 ,再以页号为索引去检索页表;查找操作由硬件执行;在执行检索之前 , 先将页号与页表长度进行比较 ,假如页号大于或等于页表长度 , 就表示本次所拜访的地址已超越进程的地址空间;于是 , 这一错误将被系统发觉 ,并产生已地址越界中断;如未显现越界中断 ,就将页表始址与页号和页表项长度的乘积相加
25、, 便得到该表项在页表中的位置 ,于是可从中得到该页的物理块号 ,将之装入物理地址寄存器中;与此同时 , 再将有效地址寄存器中的页内地址送入物理地址寄存器的块内地址字段中;这样便完成了从逻辑地址到物理地址的变换;名师归纳总结 26. 分页和分段储备治理有何区分. 第 8 页,共 9 页- - - - - - -精选学习资料 - - - - - - - - - 答:页是信息的物理单位,采纳分页储备治理方式是为实现离散安排方式,以消减内存的外零头 ,提高内存的利用率;或者说,分页仅仅只是系统治理上的需要, 完全是系统的行为, 多用户是不行见的;而段是信息的规律单位;它通常包含的是一组意义相对完整的
26、信息;分段的目的主要在于能更好地满意用户的需要;页的大小固定而且由系统打算 ,在采纳分页储备治理系统中 , 在硬件结构上 ,就是把用户程序的规律地址划分为页号和页内地址两部分 ,是直接由硬件实现的 ,因而在每个系统中只能有一种大小的页面;而段的大小不固定,通常由编译程序依据信息的性质来划分分页用户程序地址空间是一维的, 分页完全是系统的行为,故在分页系统中,用户程序的地址是属于单一的线性地址空间, 程序员只需利用一个记忆符即可表示一个地址;而分段是用户的行为 ,故在分段系统中, 用户程序的地址空间是二维的,程序员在标识一个地址时,既需给出段名 ,又需给出段内地址;名师归纳总结 - - - - - - -第 9 页,共 9 页