您好,欢迎访问三七文档
1操作系统练习题-习题加答案注:本答案只提供参考只用,中间不免有些错误,可以QQ或当面大家交流,也希望不要把这个当成期末的宝贝,只背答案是不行的,能理解尽量理解的了,加油!!!1~3章(引论、处理机管理)1、现代操作系统的特征是:并发、共享、虚拟、异步。2、进程与进程控制块(PCB)是(是/不是)一一对应的关系3、引入临界资源后,程序段被分为进入区、临界区、退步区、剩余区四个区域。4、处理机的调度层次包括高级调度、中级调度和低级调度,其中,调度频率最低的是高级调度,必不可少的一种调度是低级调度,为了提高内存利用率的一种调度是中级调度。5、产生死锁的原因是资源竞争和进程间推进顺序非法,其中引发死锁的最根本的原因是竞争互斥性资源。6、刚刚创建的进程会由创建状态转变为就绪状态,得到处理机的调度转变为执行状态,执行中的进程如果申请资源得不到,将会转变为阻塞状态,得到资源,再次转变为就绪状态,正在执行输入输出操作的进程将处于终止状态。7、如果并发执行的五个进程都需要使用临界资源R,并且每个进程对资源R的需求量都是3,那么现在资源R至少有11个时不管怎么调度,一定不会出现死锁。若初始时资源R有9个,每个并发进程对资源的需求量为3,则最多有4个进程并发执行一定不会出现死锁。8、为某种临界资源设置信号量S,若S的初始值为5,当前值为3,则当前处于阻塞状态的进程有2个,系统可供分配的该资源的个数是3个。9、操作系统的主要功能是对计算机中的四大类资源进行管理,这四类资源分别是处理机、存储器、I/O设备和文件。9、简述并行与并发的区别。(13页)答:并行性是指两个或多个事件在同一时刻发生并发性是指两个或多个事件在同一时间间隔内发生10、简述操作系统的功能。(16页)答:处理机的管理功能:处理机的管理应具有进程控制、进程同步、进程通信、调度等功能。存储器管理功能:存储器管理应具有内存分配、内存保护、地址映射、内存扩充等功能。设备管理功能:设备管理应具有缓冲管理、设备分配、设备处理等功能。文件管理功能:文件管理应具有文件存储空间的管理、目录管理、文件的读/写管理和保护等功能。11、简述PCB的作用与组成。(39-41页)答:进程控制块是进程实体的一部分,是操作系统中最重要的记录型数据结构。作用:是使一个在多道程序环境下不能独立运行的程序或数据),成为一个独立运行的基本单元,一个能与其他进程并发执行的进程。组成部分:进程标识符(能够唯一的表示一个进程)、处理机状态、进程调度信息、进程控制信息。212、简述进程的定义与特征。(35-36页)答:定义:进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位。特征:动态性、并发性、独立性、异步性13、简述进程与程序的区别。(36页)答:1、程序是指令的有序集合,其本身没有任何运行的含义,是一个静态的概念。而进程是程序在处理机上的一次执行过程,它是一个动态的概念。2、程序可以作为一种软件资料长期保存在某种介质上,而进程是有一定生命期的,进程被创建后存在于内存中,进程消亡后生命期结束,不再存在。3、程序的每次运行都将创建新的进程,而进程一旦消亡,就无法再被执行。4、进程更能真实地描述并发,而程序不能(没有PCB)。5、进程能够独立运行、独立分配资源和独立接受调度的基本单位,程序(没有PCB)不能作为独立的单位运行。14、简述产成死锁的四个必要条件。(107页)互斥条件:进程对分配到的资源进行排他性使用。请求和保持条件(部分分配条件):进程在等待一新资源时继续占有已分配的资源。不剥夺条件:不能强行剥夺进程拥有的资源。循环等待条件:存在“进程——资源”的环形链,链中的每一个进程已获得的资源同时被链中的下一个进程所请求。15、简述进程同步应该遵循的四个原则。(51页)答:1、空闲让进2、忙则等待3、有限等待4、让权等待16、简述死锁的定义与产生死锁的原因。(105-107页课后题27题)定义:多个进程中运行过程中因争夺资源而造成的一种僵局,当进程处于这种僵持状态时,若无外力作用,它们将无法再向前推进。原因:(1)资源有限。当系统中多个进程共享资源,如打印机、公用队列等,其数目不足以满足诸进程的需要,会引起进程对资源的竞争而产生死锁。(2)并发进程间的推进顺序不当。进程在运行过程中,请求和释放资源的顺序不当,也会导致产生进程死锁。17、简述处理死锁的方法。(108页)答:预防死锁:指通过设置某些限制条件,去破坏产生死锁的四个必要条件中的一个或几个条件,来防止死锁的发生。避免死锁:指在资源的动态分配过程中,用某种方法去防止系统进入不安全状态,从而避免死锁的发生。检测死锁:3允许系统在运行过程中发生死锁,但可设置检测机构及时检测死锁的发生,并采取适当措施加以清除。解除死锁:当检测出死锁后,便采取适当措施将进程从死锁状态中解脱出来。18、用信号量机制给出读者写者问题的解决方案。问题解答:所用信号量和其他变量设置如下:1)互斥信号量wmutex,初值为1,用于实现写者与其他写者或读者互斥地访问共享的数据对象。2)互斥信号量rmutex,初值为1,用于实现诸读者互斥地访问读者计数器变量readcount。3)整型变量readcount,初值为0,用于对读者进行记数。读者Readers:beginrepeatwait(rmutex);ifreadcount=0thenwait(wmutex);readcount:=readcount+1;signal(rmutex);…执行读操作;…wait(rmutex);readcount:=readcount-1;ifreadcount=0thensingal(wmutex);singal(rmutex);untilfalse;end写者Writers:beginrepeatwait(wmutex);执行写操作;singal(wmutex);untilfalse;end19、用信号量机制实现不会出现死锁的哲学家进餐问题。semaphorechopstick[5]={1,1,1,1,1};semaphoreroom=4;inti;voidphilosopher(inti);{while⑴4{think();wait(room);wait(chopstick[i]);wait(chopstick[(i+l)%5]);eat();signal(chopstick[(i+l)%5]);signal(chopstick[i]);signal(room);}}voidmain(){for(inti=0;i5;i++)cobeginphilosopher(i);coend}20、桌子上有一只盘子,最多可容纳两个水果,每次只能放入或取出一个水果。爸爸专向盘子中放苹果,妈妈专向盘子中放橘子,两个儿子专等吃盘子中的橘子,两个女儿专等吃盘子中的苹果。请用信号量操作来实现爸爸、妈妈、儿子、女儿之间的同步与互斥关系。(PPT)ParbeginFather:beginL1:p(empty);p(mutex);放苹果;v(mutex);v(apple);gotol1;end;Mather:beginL2:p(empty);p(mutex);放橘子;v(mutex);v(orange);gotol2;end;Daughter:beginL3:p(apple);p(mutex);取苹果;v(mutex);v(empty);5gotol3;end;L4:p(orange);p(mutex);取橘子;v(mutex);v(empty);Gotol4;end;21、假设有4道作业,它们的提交时刻及执行时间由下表给出:作业号提交时间(小时)执行时间(小时)110.002210.201310.400.5410.500.3计算在单道程序环境下,采用先来先服务调度算法和最短作业优先调度算法时的周转时间和平均带权周转时间,并指出它们的调度顺序。(86页)作业周转时间:从作业被提交给系统开始,到作业完成为止的这段时间间隔。平均周转时间带权周转时间:作业的周转时间T与系统为它提供服务的时间TS之比,即W=T/TS。平均带权周转时间:622、在单CPU条件下有下列要执行的作业作业到来的时间是按作业编号顺序进行的(即后面作业依次比前一个作业迟到一个时间单位)。作业运行时间优先级A33B11C23D14E52(1)用一个执行时间图描述在下列算法时各自执行这些作业的情况:RR(时间片=1)和非抢占式优先级。(2)对于上述每种算法,各个作业的周转时间是多少?平均周转时间是多少?(3)对于上述每种算法,各个作业的带权周转时间和平均带权周转时间各是多少?解:因为是有优先级的,所以应该考虑的RR(时间片=1)所以是要一次一次轮着执行的,执行的顺序为:ABCDEACEAEEE时间片作业情况进程名ABCDE平均到达时间012347服务时间31215RR=1完成时间927412周转时间915184.8带权周转时间312.511.61.82因为是有优先级的非抢占的,所以是依次按优先级顺序执行的,执行顺序:AAADCCEEEEEB作业到达时间运行时间完成时间周转时间带权周转时间A03331B11121111C22642D31411E451171.4平均周转时间(3+11+4+1+7)/5=5.2平均带权周转时间(1+11+2+1+1.4)/5=3.2821、同步问题求解:参考课本及课件例题。4~6章(存储器管理、设备管理)1、内存管理包括内存分配、内存保护、地址映射和内存扩充四个子功能。2、动态分区分配算法中,首次适应算法是按照由低址到高址的顺序来组织空闲区的,最佳适应算法是按照空闲区容量由大到小的顺序来组织空闲区的,而最坏适应算法则是按照产生碎片几率的大小顺序来组织空闲区的。这三种算法效率最高的是最坏适应算法。3、无论是使用拼接(或紧凑)技术还是使用对换技术,都要求作业的装入应该采用装入模块方式。4、对于各种内存分配方式所造成的空间浪费,通常称为碎片,其中固定分区分配方式容易产生内部碎片,动态分区分配方式容易产生外部碎片,基本分页分配管理方式产生的是页内碎片,基本分段分配方式产生的是内部碎片。5、基本分页存储管理方式为每一个进程设置1个页表,基本分段存储管理方式为每一个进程设置1个段表,而段页式则为每一个进程设置1个段表和1个页表,其中页表个数取决于段数。6、虚拟内存实现的理论基础是程序运行时的局部性原理,具体是指离散式内存分配管理方式(程序在运行之前,没有必要全部装入内存,仅须将当前要运行的页(段)装入内存即可)。7、对于UNIX系统而言,在请求分页实现时,第一次调入的页面从文件区调入,之后再调入该页面时则一定是从对换区调入的。88、可重定位分区分配算法比动态分区分配算法多使用了一个紧凑或拼接技术,将小的离散的空闲空间合并成一个大的连续的空闲空间,再进行分配。8、分页存储管理方式下,若没有快表支持,每存取一个数据需访问内存1次。9、按照设备的共享属性,可以把设备分为独占设备、共享设备和虚拟设备三种,其中,虚拟设备是利用虚拟技术,将一台物理存在的独占设备虚拟成多台逻辑存在的设备,从而将一台独占设备转变成一台共享设备。9、只有在设备、控制器和通道三者都分配成功的情况下,一次设备分配才算成功10、设备控制器中传递的三种信号是数据信号、状态信号、和控制信号。11、磁盘的访问时间是由寻道时间、旋转延迟时间和传输时间三部分构成。12、UNIX系统使用的缓冲技术是缓冲池技术,该技术将所有的缓冲区分成了三个缓冲队列,分别是空缓冲队列、输入队列和输出队列,以及四种工作缓冲区——用于收容输入数据的工作缓冲区、用于提取输入数据的工作缓冲区、用于收容输出数据的工作缓冲区和用于提取输出数据的工作缓冲区。13、SPOOLING技术中,在硬盘开辟的空间成为输入井和输出井。14、设备分配时,依次访问的数据结构是系统设备表、设备控制表、控制器控制表和通道控制表。15、调入页面的时机中,预先调入策略事实上使用的是提前读技术,目的是提高磁盘访问速度。16、为实现设备独立性,将逻
本文标题:OS练习题带答案1
链接地址:https://www.777doc.com/doc-2885068 .html