《OS练习题带答案.doc》由会员分享,可在线阅读,更多相关《OS练习题带答案.doc(14页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、操作系统练习题-习题加答案注:本答案只提供参考只用,中间不免有些错误,可以QQ或当面大家交流,也希望不要把这个当成期末的宝贝,只背答案是不行的,能理解尽量理解的了,加油!13章(引论、处理机管理)1、现代操作系统的特征是: 并发 、 共享 、 虚拟 、 异步 。2、进程与进程控制块(PCB) 是 (是/不是)一一对应的关系3、引入临界资源后,程序段被分为进入区、临界区、退步区、剩余区四个区域。4、处理机的调度层次包括 高级调度、中级调度和 低级调度,其中,调度频率最低的是 高级调度 ,必不可少的一种调度是 低级调度,为了提高内存利用率的一种调度是 中级调度 。5、产生死锁的原因是资源竞争和进程
2、间推进顺序非法, 其中引发死锁的最根本的原因是竞争互斥性资源。6、刚刚创建的进程会由 创建状态转变为就绪状态,得到处理机的调度转变为执行状态,执行中的进程如果申请资源得不到,将会转变为阻塞状态,得到资源,再次转变为就绪状态 ,正在执行输入输出操作的进程将处于终止状态。7、如果并发执行的五个进程都需要使用临界资源R,并且每个进程对资源R的需求量都是3,那么现在资源R至少有 11 个时不管怎么调度,一定不会出现死锁。若初始时资源R有9个,每个并发进程对资源的需求量为3,则最多有 4个进程并发执行一定不会出现死锁。8、为某种临界资源设置信号量S,若S的初始值为5,当前值为3,则当前处于阻塞状态的进程
3、有 2个,系统可供分配的该资源的个数是 3 个。9、操作系统的主要功能是对计算机中的四大类资源进行管理,这四类资源分别是 处理机 、 存储器 、 I/O设备 和 文件 。9、简述并行与并发的区别。(13页)答:并行性是指两个或多个事件在同一时刻发生并发性是指两个或多个事件在同一时间间隔内发生10、 简述操作系统的功能。(16页)答:处理机的管理功能:处理机的管理应具有进程控制、进程同步、进程通信、调度等功能。存储器管理功能:存储器管理应具有内存分配、内存保护、地址映射、内存扩充等功能。设备管理功能:设备管理应具有缓冲管理、设备分配、设备处理等功能。文件管理功能:文件管理应具有文件存储空间的管理
4、、目录管理、文件的读/写管理和保护等功能。11、 简述PCB的作用与组成。(39-41页)答:进程控制块是进程实体的一部分,是操作系统中最重要的记录型数据结构。作用:是使一个在多道程序环境下不能独立运行的程序或数据),成为一个独立运行的基本单元,一个能与其他进程并发执行的进程。组成部分:进程标识符(能够唯一的表示一个进程)、处理机状态、进程调度信息、进程控制信息。12、 简述进程的定义与特征。(35-36页)答:定义:进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位。特征:动态性、并发性、独立性、异步性13、 简述进程与程序的区别。(36页)答:1、程序是指令的有序集合,其本身
5、没有任何运行的含义,是一个静态的概念。而进程是程序在处理机上的一次执行过程,它是一个动态的概念。2、 程序可以作为一种软件资料长期保存在某种介质上,而进程是有一定生命期的,进程被创建后存在于内存中,进程消亡后生命期结束,不再存在。3、 程序的每次运行都将创建新的进程,而进程一旦消亡,就无法再被执行。4、 进程更能真实地描述并发,而程序不能(没有PCB)。5、 进程能够独立运行、独立分配资源和独立接受调度的基本单位,程序(没有PCB)不能作为独立的单位运行。14、 简述产成死锁的四个必要条件。(107页)互斥条件:进程对分配到的资源进行排他性使用。请求和保持条件(部分分配条件):进程在等待一新资
6、源时继续占有已分配的资源。不剥夺条件:不能强行剥夺进程拥有的资源。循环等待条件:存在“进程资源”的环形链,链中的每一个进程已获得的资源同时被链中的下一个进程所请求。15、 简述进程同步应该遵循的四个原则。(51页)答:1、空闲让进2、忙则等待3、有限等待4、让权等待16、 简述死锁的定义与产生死锁的原因。(105-107页 课后题27题)定义:多个进程中运行过程中因争夺资源而造成的一种僵局,当进程处于这种僵持状态时,若无外力作用,它们将无法再向前推进。原因:(1)资源有限。当系统中多个进程共享资源,如打印机、公用队列等,其数目不足以满足诸进程的需要,会引起进程对资源的竞争而产生死锁。(2)并发
7、进程间的推进顺序不当。进程在运行过程中,请求和释放资源的顺序不当,也会导致产生进程死锁。 17、 简述处理死锁的方法。(108页)答:预防死锁:指通过设置某些限制条件,去破坏产生死锁的四个必要条件中的一个或几个条件,来防止死锁的发生。避免死锁:指在资源的动态分配过程中,用某种方法去防止系统进入不安全状态,从而避免死锁的发生。检测死锁:允许系统在运行过程中发生死锁,但可设置检测机构及时检测死锁的发生,并采取适当措施加以清除。解除死锁:当检测出死锁后,便采取适当措施将进程从死锁状态中解脱出来。18、 用信号量机制给出读者写者问题的解决方案。问题解答: 所用信号量和其他变量设置如下:1) 互斥信号量
8、wmutex,初值为1,用于实现写者与其他写者或读者互斥地访问共享的数据对象。2) 互斥信号量rmutex,初值为1,用于实现诸读者互斥地访问读者计数器变量readcount。3) 整型变量readcount,初值为0,用于对读者进行记数。 读者Readers: begin repeat wait(rmutex); if readcount=0 then wait(wmutex); readcount:=readcount+1; signal(rmutex); 执行读操作; wait(rmutex); readcount:=readcount-1; if readcount=0 then si
9、ngal(wmutex); singal(rmutex); until false; end写者Writers: begin repeat wait(wmutex); 执行写操作; singal(wmutex); until false;end 19、 用信号量机制实现不会出现死锁的哲学家进餐问题。semaphore chopstick5 = 1,1,1,1,1;semaphore room =4;int i;void philosopher (int i); while think( ); wait (room); wait (chopsticki); wait (chopstick (i+
10、l) %5); eat( ); signal (chopstick (i+l) % 5); signal (chopsticki); signal (room);void main( ) for(int i=0;i5;i+) cobegin philosopher (i); coend 20、 桌子上有一只盘子,最多可容纳两个水果,每次只能放入或取出一个水果。爸爸专向盘子中放苹果,妈妈专向盘子中放橘子,两个儿子专等吃盘子中的橘子,两个女儿专等吃盘子中的苹果。请用信号量操作来实现爸爸、妈妈、儿子、女儿之间的同步与互斥关系。(PPT)ParbeginFather:begin L1: p(empty
11、); p(mutex); 放苹果; v(mutex); v(apple); goto l1; end;Mather:begin L2:p(empty); p(mutex); 放橘子; v(mutex); v(orange); goto l2; end;Daughter:begin L3:p(apple); p(mutex); 取苹果; v(mutex); v(empty); goto l3; end;L4:p(orange); p(mutex); 取橘子; v(mutex); v(empty); Goto l4; end;21、假设有4道作业,它们的提交时刻及执行时间由下表给出:作业号提交时间
12、(小时)执行时间(小时)110.002210.201310.400.5410.500.3计算在单道程序环境下,采用先来先服务调度算法和最短作业优先调度算法时的周转时间和平均带权周转时间,并指出它们的调度顺序。(86页)作业周转时间:从作业被提交给系统开始,到作业完成为止的这段时间间隔。平均周转时间 带权周转时间:作业的周转时间T与系统为它提供服务的时间TS之比,即W=T/TS。平均带权周转时间:22、在单CPU条件下有下列要执行的作业作业到来的时间是按作业编号顺序进行的(即后面作业依次比前一个作业迟到一个时间单位)。 作业运行时间优先级A33B11C23D14E52(1)用一个执行时间图描述在
13、下列算法时各自执行这些作业的情况:RR(时间片1)和非抢占式优先级。(2)对于上述每种算法,各个作业的周转时间是多少?平均周转时间是多少? (3)对于上述每种算法,各个作业的带权周转时间和平均带权周转时间各是多少?解:因为是有优先级的,所以应该考虑的RR(时间片=1) 所以是要一次一次轮着执行的,执行的顺序为:ABCDEACEAEEE时间片作业情况进程名ABCDE平均到达时间01234服务时间31215RR=1完成时间927412周转时间915184.8带权周转时间312.511.61.82因为是有优先级的非抢占的,所以是依次按优先级顺序执行的,执行顺序:AAADCCEEEEEB作业到达时间运
14、行时间完成时间周转时间带权周转时间A03331B11121111C22642D31411E451171.4平均周转时间(3+11+4+1+7)/5=5.2平均带权周转时间(1+11+2+1+1.4)/5=3.2821、 同步问题求解:参考课本及课件例题。46章(存储器管理、设备管理)1、内存管理包括内存分配、内存保护、地址映射和内存扩充四个子功能。2、动态分区分配算法中,首次适应算法是按照由低址到高址的 顺序来组织空闲区的,最佳适应算法是按照 空闲区容量由大到小的 顺序来组织空闲区的,而最坏适应算法则是按照 产生碎片几率的大小顺序来组织空闲区的。这三种算法效率最高的是最坏适应算法。3、无论是使
15、用拼接(或紧凑)技术还是使用对换技术,都要求作业的装入应该采用 装入模块 方式。4、对于各种内存分配方式所造成的空间浪费,通常称为碎片,其中固定分区分配方式容易产生 内部碎片,动态分区分配方式容易产生 外部碎片 ,基本分页分配管理方式产生的是 页内碎片 ,基本分段分配方式产生的是 内部碎片 。5、基本分页存储管理方式为每一个进程设置 1 个页表,基本分段存储管理方式为每一个进程设置 1个段表,而段页式则为每一个进程设置 1 个段表和 1 个页表,其中页表个数取决于 段数 。6、虚拟内存实现的理论基础是 程序运行时的局部性原理 ,具体是指 离散式内存分配管理方式(程序在运行之前,没有必要全部装入
16、内存,仅须将当前要运行的页(段)装入内存即可 ) 。7、对于UNIX系统而言,在请求分页实现时,第一次调入的页面从 文件区 调入,之后再调入该页面时则一定是从 对换区 调入的。8、可重定位分区分配算法比动态分区分配算法多使用了一个 紧凑或拼接 技术,将小的离散的空闲空间合并成一个大的连续的空闲空间,再进行分配。8、分页存储管理方式下,若没有快表支持,每存取一个数据需访问内存 1 次。9、按照设备的共享属性,可以把设备分为 独占设备 、 共享设备 和虚拟设备三种,其中,虚拟设备是利用虚拟 技术,将一台 物理 存在的独占设备虚拟成多台 逻辑 存在的设备,从而将一台独占设备转变成一台共享设备。9、只
17、有在 设备 、 控制器 和 通道 三者都分配成功的情况下,一次设备分配才算成功10、设备控制器中传递的三种信号是 数据信号 、 状态信号 、和控制信号 。11、磁盘的访问时间是由寻道时间、旋转延迟时间和传输时间三部分构成。12、UNIX系统使用的缓冲技术是缓冲池技术,该技术将所有的缓冲区分成了三个缓冲队列,分别是空缓冲队列、输入队列和输出队列,以及四种工作缓冲区用于收容输入数据的工作缓冲区、用于提取输入数据的工作缓冲区、用于收容输出数据的工作缓冲区和用于提取输出数据的工作缓冲区。13、SPOOLING技术中,在硬盘开辟的空间成为输入井和输出井。14、设备分配时,依次访问的数据结构是系统设备表、
18、设备控制表、控制器控制表和通道控制表。15、调入页面的时机中,预先调入策略事实上使用的是提前读技术,目的是提高磁盘访问速度。16、为实现设备独立性,将逻辑设备转变为物理设备使用到的数据结构是LUT逻辑控制表。17、简述分页和分段的区别。(148页)答:1.从功能上看,页是信息的物理单位,分页是为实现离散分配方式,以消减内存的外零头,提高内存的利用率,满足了系统的需要,但未满足用户的需要;段是信息的逻辑单位,它含有一组其意义相对完整的信息,目的是为了更好地满足用户的需要。2. 页的大小固定且有系统决定,而段的长度却不固定,决定于用户所编写的程序。3. 分页的作业地址空间是一维的,而分段的作业地址
19、空间是二维的。18、什么是虚拟内存?虚拟内存有什么特点?(155页)答;指具有请求调入功能和置换功能,能从逻辑上对内存容量加以扩充的一种存储器系统。它使用户逻辑存储器与物理存储器分离,是操作系统给用户提供的一个比真实内存空间大得多的地址空间 。特点:多次性、对换性、虚拟性19、 简述缺页中断机制与一般中断的不同之处。(课本158页) 答 1.在指令执行期间产生和处理中断信号;2.一条指令在执行期间,可能产生多次缺页中断。20、 什么是抖动?引发抖动的原因是什么?(170页)答:系统大量的时间不是用在进程的正常执行,而是用在页面的换入换出上,从而使得系统的效率急剧下降,这种现象称之为“抖动”。引
20、发抖动的原因:1.给进程分配的物理块数过少;2.页面置换算法不合理。21、 引入通道的目的是什么?为什么说通道是一种特殊的处理机? (186页)答:引入通道的目的:使一些原来由CPU处理的I/O任务转由通道来承担,从而把CPU从繁杂的I/O任务中解脱出来。I/O通道与一般的处理机不同之处:一是其指令类型单一,这是由于通道硬件比较简单,其所能执行的命令主要局限于I/O操作相关的指令;二是通道没有自己的内存,通道所执行的通道程序是放在主机的内存中,换言之,是通道与CPU共享内存。22、 简述DMA的工作原理(196页)答:即直接内存访问模式,简单来说,总线控制权在CPU“手上”,外设无权直接访问内
21、存,需要CPU参与,但DMA控制器从CPU那“偷出”几个时钟来控制总线,让外设可以直接访问内存,这样外设的读写就不需要CPU参与,降低了CPU的占用率。23、 简述通道I/O方式的工作原理(186页)答:CPU发送I/O命令给通道,通道通过调用内存中的相应通道程序完成任务。24、 引入缓冲管理的目的是什么?(209页)答:1.缓和CPU与I/O设备间速度不匹配的矛盾;2.减少CPU的中断频率,放宽对CPU中断响应时间的限制。25、 以打印机为例说明SPOOLING系统如何实现。(207页)答:利用SPOOLing技术,将作为独占设备的打印机改造为一台可供多个用户共享的设备;当用户请求打印时,S
22、POOLing系统只做两件事:(1) 由输出进程在输出井中为之申请一个空闲磁盘区,并将要打印的数据送入其中;(2)输出进程再为用户进程申请一张空白的用户请求打印表,并将用户的打印要求填入其中,再将该表挂到请求打印队列上。(3)若还有进程要求打印输出,系统仍可接受该请求,并提供上述操作。(4)若打印机空闲,输出进程将从打印队列的队首取出一张请求打印表,进行打印;打印完后,查看队列中是否还有打印请求,若有,重复上述操作指导队列为空;输出进程进入阻塞状态。当下次有打印请求是,输出进程被唤醒。26、什么是设备的独立性?实现设备独立性有什么好处?答:设备独立性的基本含义是:应用程序独立于具体使用的物理设
23、备。好处:1.设备分配时的灵活性;2.易于实现I/O重定向。27、 某虚拟存储器的用户空间共有32个页面,每页1KB,主存16KB。假定某时刻系统为用户的第0、1、2、3页分别分配的物理块号为5、10、4、7,试将虚拟地址1289、0A5C和293C变换为物理地址。答:1289/1024=1 1289mod1024=265 ,所以对应物理块号为10,块内偏移265个字节;0A5C,化成二进制0000101001011100/1024=00000010 0000101001011100Mod1024=001001011100;即:对应的物理块号为4,块内偏移604个字节。293C,化成二进制00
24、10100100111010/1024=00001010 0010100100111010Mod1024=000100111010;即:发生了缺页中断。28、 假定系统为某进程分配了3个物理块,进程运行时的页面走向为 7,0,2,1,0,4,0,3,2,4,0,3,2,1,2,1,0,7,0,1,开始时3个物理块均为空,给出采用最佳置换算法时页面置换情况,并计算出该算法的缺页率? (1)最佳置换淘汰算法 (OPT) (2)先进先出淘汰算法 (FIFO) (3)最近最久未使用淘汰算法(LRU)答:70210403240321210701OPT777144011100003330022222227
25、FIFO777111333000111000444222333002220004442227LRU777113330001110000004442227224422233300缺页率:OPT:(10/20)*100%=50%; FIFO:(15/20)*100%=75%; LRU:(14/20)*100%=70%。29、 假设一个磁盘有200个磁道,编号从0199。当前磁头正在143道上服务,并且刚刚完成了125道的请求。如果磁盘访问请求的顺序为: 86、147、91、177、94、150、102、175、130 请计算,按照FCFS、SSTF、SCAN和CSCAN调度算法来完成上述请求,磁头
26、移动的总量是多少? (217页)磁头:125143 FCFS:表示先来先服务,即按照到达顺序执行。 SSTF:表示最短寻道时间优先,即挑选离现在近的磁道。 SCAN:表示扫描算法,这个是不光看中距离的,还要有方向的因素。因为它是从小到大后从大返回小。 CSCAN:表示循环扫描算法,每次都只往一个方向走的,从小到大或从大到小。被访问的下一个磁道号移动距离(磁道数)130514717150317525177210275948913865平均寻道长度15.9 FCFS:先来先服务 SSTF:最短寻道时间优先被访问的下一个磁道号移动距离(磁道数)8639147619156177869483150561
27、02481757313045平均寻道长度60.8被访问的下一个磁道号移动距离(磁道数)1472215031752517728691915943102813028平均寻道长度20.8 SCAN:扫描算法 CSCAN:循环扫描法被访问的下一个磁道号移动距离(磁道数)1472215031752517721304710228948913865平均寻道长度15.9 79章(文件管理、用户接口)1、按照逻辑结构把文件分为有结构文件(或记录式文件)和无结构文件(或流式文件) 两种。2、站在用户的角度看到的文件的结构成为文件的逻辑结构,站在系统存储的角度看到的文件的结构成为文件的物理结构。3、目录结构引入目的
28、是实现 按名存取 。4、UNIX中是把设备作为 文件 来进行管理和使用的。6、系统调用中的参数传递方式有陷入指令自带方式、直接将参数送入指定的寄存器中和参数表方式。7、文件和目录项之间是一一对应的关系,目录项的构成有两种方式,即文件控制块作为目录项和索引节点作为目录项。8、FCB与文件是一一对应的关系,索引结点和文件是一对多的关系。9、试说明系统调用和一般过程调用的不同之处。(300页)答:1.运行在不同的系统状态;2.状态的转换通过软中断进入;3.返回问题;4.嵌套调用。10、 简述UNIX系统中引入索引节点的好处。(234页)答:1.减少了调入内存的数据量; 2.加快了文件的查找、访问速度
29、。11、 简述UNIX中文件共享的两种方式。(240页)答:1.基于索引节点的共享方式; 2.采用符号链实现文件共享。12、 简述系统调用的执行过程。(301页)答:首先,将处理机状态由用户态转为系统态;其次,分析系统调用类型,转入相应的系统调用处理子程序;最后,在系统调用处理子程序执行完后,应恢复被中断的或设置新进程的CPU现场,然后返回呗中断进程或新进程,继续往下执行。13、 简述命令解释程序的功能。(301页)答:1.等待用户输入; 2.接收并识别命令;3.执行相应的命令处理程序。14、 已知路径名/usr/joe/src, 画出目录查找过程的示意图(图中如需使用目录/文件结点号和盘块号
30、,请根据需要自拟)。(235页 这只是个参考)答: 结点8是 150号盘块是 结点4是 456号盘块是 /urc的目录 /urc的目录 /urc/joe的目录 /urc/joe的目录 1. 1.4bin5dev7src8usr12etc6tmp1506.1.9dick5reic4joe7wang20wei16zhang45632.6.45good75src85sd89wwer78ert45rty 15、 存放在某磁盘上的文件系统采用混合索引分配方式,其中FCB由4个地址项构成,前两个地址项是直接寻址方式,第三个地址项是一次间接寻址方式,第四个地址项是二次间接寻址。若每个盘快的大小为1KB,盘块
31、号用4个字节描述。那么: (1)源文件系统允许文件的最大长度是多少?(3分) (2)将文件的字节偏移量500、5000和 转换为物理块号和块内偏移。(7分)(301页)答:(1)、每个盘块存的盘块地址1KB/4=256 最长为:1k*(2+256*1+256*256*1)=2K+256K+64M(2)、因为500在0与1K之间,所以在块号为1的盘块里,块内偏移为500-0=500 因为5000大于2K但小于258K,所以在块号为三的盘块里, 块内偏移为5000-2K=2952 因为大于258K,所以块号为4的盘块里, 块内偏移为 -258K=-=16、成组链接法相关问题:参看课本或者上课习题。