您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 操作系统练习题(全)
答案仅供参考1.Howdoesthedistinctionbetweenkernelmodeandusermodefunctionasarudimentaryformofprotection(security)system?(内核态和用户态作为保护系统有什么区别)答:内核态和用户态的区别有以下方式,某些指令只有当CPU处于内核态时才可以执行。同样地,某些硬件设备只有当程序在内核态下执行才能够被访问。只有在CPU处于内核态时,才能够控制中断。因此,CPU处于用户态时的能力有限,从而强制保护关键的资源。2.Whichofthefollowinginstructionsshouldbeprivileged?(下列哪个指令是受保护的)a.Setvalueoftimer.设置计时器的值b.Readtheclock.读时钟c.Clearmemory.清除内存d.Issueatrapinstruction.解决一个陷阱指令e.Turnoffinterrupts.关中断f.Modifyentriesindevice-statustable.修改设备状态表中的条目g.Switchfromusertokernelmode.从用户态转到内核态h.AccessI/Odevice.访问I/O设备答:受保护的:a、c、e、f、h,剩下的可以在用户态执行。3.WhyshouldanapplicationprogrammerpreferprogrammingaccordingtoanAPIratherthaninvokingactualsystemcall?(为什么应用程序设计者更喜欢根据API编程)答:使用API编程的一个好处是程序的可移植性:程序员用API设计的程序可以在任何支持相同API的系统上编译和运行,并且,对于一个应用程序来说,实际系统调用比API更加复杂和困难,总之,API调用和与其相关的内核中的系统调用有着很强的相关性。4.Whatresourcesareusedwhenathreadiscreated?Howdotheydifferfromthoseusedwhenaprocessiscreated?(当线程创建时需要哪些资源,当进程创建时又需要哪些)答:因为一个线程小于一个进程,因此,创建线程所用的资源一般比创建进程所用的资源少。创建一个进程需要分配进程控制块(PCB),一个相当大的数据结构,PCB包括了一个内存映射,打开文件的目录和外界变量。分配和管理内存映射通常是最费时的活动。创建一个用户或内核线程包括分配一个小的数据结构来控制寄存器的设置,堆栈和优先级。5.Supposethatthefollowingprocessesarriveforexecutionatthetimesindicated.Eachprocesswillrunthelistedamountoftime.Inansweringthequestions,usepreemptiveschedulingandbasealldecisionsontheinformationyouhaveatthetimethedecisionmustbemade?(考点:调度算法)ProcessArrivalTimeBurstTimeP108P214P329P435WhatistheaverageturnaroundtimefortheseprocesseswiththepreemptiveSJFschedulingalgorithm(抢占、最短作业优先调度算法)?答:甘特图:P1P2P4P1P3015101726平均等待时间=((10-1)+0+(17-2)+(5-3))/4=6.5ms6.Considerthefollowingsnapshot(快照)ofasystem:(考察银行家算法)allocationmaxavailableNeedP1(0,0,1,2)(0,0,1,2)(2,1,0,0)(0,0,0,0)P2(2,0,0,0)(2,7,5,0)(0,7,5,0)P3(0,0,3,4)(6,6,5,6)(6,6,2,2)P4(2,3,5,4)(4,3,5,6)(2,0,0,2)P5(0,3,3,2)(0,6,5,2)(0,3,2,0)a.WhatOSthecontentofthematrixneed?(求need矩阵的内容Need=Max-Allocation)答:Need(0,0,0,0)(0,7,5,0)(6,6,2,2)(2,0,0,2)(0,3,2,0)b.Isthesysteminasafestate?(系统是否处于安全状态)答:availableP1先执行,执行完后(2,1,1,2)P4先执行,执行完后(4,4,6,6)P5先执行,执行完后(4,7,9,8)P2先执行,执行完后(6,7,9,8)P3最后执行,执行完后(6,7,12,12)因此,系统存在安全序列P1,P4,P5,P2,P3,所以,系统安全7.Thenecessaryconditionsforarisingdeadlockinasystemare发生死锁的必要条件是(互斥)、(循环等待)、(请求与保持)、(非剥夺分配)。8.Thesynchronization(同步)Problems:a.readersandwritersproblems(读者写者问题)一个缓冲区,读与读不互斥,读与写互斥,写与写互斥,写与读互斥,读优先信号量mutex=1(readcount)信号量wrt=1(写和读)信号量readcount=0(记录读个数)读:写:wait(mutex);wait(wrt);readcount++;//writingif(readcount==1)signal(wrt);wait(wrt);signal(mutex);//readingwait(mutex);readcount--;if(readcount==0)signal(wrt);signal(mutex);b.producersandconsumersproblems(生产者消费者问题)Thereisonebufferonlycanaccommodatekproducts,mproducerandnconsumer(有一个缓冲区只能容纳k个产品,m个生产者和n个消费者)信号量mutex=1(表示缓冲区个数)信号量full=0(消费者,最开始使用资源为0)信号量empty=k(生产者,k)生产者:消费者:wait(empty);wait(full);wait(mutex);wait(mutex);//放入产品//使用产品signal(mutex);signal(mutex);signal(full);signal(empty);c.busmananddrivers(司机和售票员问题)司机:启动车辆,正常行车,到站停车售票员:关车门,售票,开车门信号量S1=0(是否能启动车,司机)信号量S2=0(时候能开门,售票员)售票员:司机://关车门wait(S1);signal(S1);//正常行车//售票//到站停车wait(S2);Signal(S2);//开门,上下车d.drinkingproblembetweenyoungerandelderBuddhistmonk.(小和尚和老和尚喝水问题)m个小和尚,n个老和尚,一个水缸,容纳10桶水,一口井,一个桶取水小和尚:提水供老和尚饮用,3桶水=一缸水(一次一个桶)get():从井中取水,倒入缸中(小和尚)use():从缸中取水饮用(老和尚)信号量mutex1=1(水井使用互斥)信号量mutex2=1(水缸使用互斥)信号量empty=10(水缸中还能装水数,小和尚)信号量full=0(水缸中有多少水,老和尚)信号量count=3(水桶使用互斥)get():use():wait(empty);wait(full);wait(count);wait(count);wait(mutex1);wait(mutex2);//提水//取水signal(mutex1);signal(mutex2);wait(mutex2);signal(count);//水倒入水缸signal(empty);signal(mutex2);signal(count);signal(full);9.Consideralogicaladdressspaceofeightpagesof1024wordseach,mappedontoaphysicalmemoryof32frames,thus,thereare(13)bitsinthelogicaladdress,andthereare(15)bitsinthephysicaladdress。10.Consideringthefollowingstring:1、2、3、4、2、1、5、6、2、1、2、3、7、6、3、2、1、2、3、6;assumingthatfourframesareallocatedtothecurrentlogicaladdress.Usingthefollowingmethodstocomputethenumberofpagefault.(1)LRU(最近最少使用算法)(2)FIFO(先进先出算法)(3)Optimal(最佳页面替换算法)解:(1)采用LRU页面置换算法,分配给进程的页面为4时,对应的页面置换情况如表所示。由表可知,缺页中断次数为10页面走向12342156212376321236物理块11111111166物理块2222222222物理块333553333物理块44466771缺页缺缺缺缺缺缺缺缺缺缺(2)采用FIFO页面置换算法,分配给进程的页面为4时,对应的页面置换情况如表所示,由表可知,缺页中断次数为14页面走向12342156212376321236物理块111115555333311物理块22222666677773物理块3333322226666物理块444441111222缺页缺缺缺缺缺缺缺缺缺缺缺缺缺缺(3)采用Optimal页面置换算法,分配给进程的页面为4时,对应的页面置换情况如表所示,由表可知,缺页中断次数为8页面走向12342156212376321236物理块111111171物理块22222222物理块3333333物理块445666缺页缺缺缺缺缺缺缺缺11.Indemandpagingmanagementsystem,theAddresschangecanbeinterruptbecauseofsomereasonssuchas缺页;地址越界;访问权限错误.12Inthepagingmanagementsystem,therearethreeordinaryPageReplacementalgorithms,inAalgorithm,theReplacepagethatwillnotbeusedforlongestperiodoftime,thenAalgorithmiscalled__最佳_algorithm;InBalgorithm,theReplacepagethatremaininmemoryforthelongesttimethanothers,thenBalgorithmiscalled__先进先出__algorithm;13.Whenthesemaphoreisgreaterthanzero,thePhysicalmeaningofSemaphoreis可用资源的数目;Whenthesemaphoreislessthanzero,theabsolutevalueofSemaphoreis等待进程的个数.14.Thelogicalconstraintrelationsbetweenprocessesinsystemiscalled进程同步.15.Ifaprocesshasbeenincriticalsection,whatshouldtheotherswhowanttoentert
本文标题:操作系统练习题(全)
链接地址:https://www.777doc.com/doc-2454635 .html