您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 操作系统期末测试2答案
Forpersonaluseonlyinstudyandresearch;notforcommercialuse肇1.某数据库有一个写进程,多个读进程,它们之间读、写操作的互斥要求是:写进程正在写该数据库时不能有其他进程读该数据库,也不能有其他进程写该数据库;读进程之间不互斥,可以同时读该数据库。请用信号量及P、V操作描述这一组进程的工作过程。芄解:在本题中,允许读进程同时读数据库,但写进程正在写数据库时不允许其他进程读数据库,也不允许其他进程写该数据库。为了解决读、写进程之间的同步,应设置两个信号量和一个共享变量:读互斥信号量rmutex,用于使读进程互斥地访问共享变量count,其初值为1;写互斥信号量wmutex,用于实现写进程与读进程的互斥及写进程与写进程的互斥,其初值为1,共享变量count,用于记录当前正在读数据库的读进程数目,初值为0。节其工作过程如下:蒇intrmutex=1;螇intwmutex=1;羁intcount=0;莀main()袇{蒈cobegin肃reader();螂write();薀coend羄}膄reader()袁{罿while(1)螄{羂p(rmutex);罿if(count=0)p(wmutex);葿count++;蒅v(rmutex);羃读数据库;莁p(rmutex);袈count--芅if(count=0)v(wmutex);肄v(rmutex);蒀}芈}羅write()袂{螂while(1)蚇{蚆p(wmutex);袃写数据库;羁v(wmutex);莀}蒆}羄2.某系统有R1、R2和R3共3种资源.在T0时刻P1、P2、P3和P4这4个进程对资源的占用和需求情况见下表,此刻系统的可用资源向量为(2,1,2),问题:聿(1)将系统中各种资源总数和此刻各进程对各资源的需求数目用向量或矩阵表示出来;袀(2)如果此时P1和P2均发出资源请求向量Request(1,0,1),为了保持系统安全性,应该如何分配资源给这两个进程?说明你所采用策略的原因;膇(3)如果(2)中两个请求立刻得到满足后,系统此刻是否处于死锁状态?螂解:(1)系统资源总数为(9,3,6)。莁各进程对资源需求矩阵为:222艿202羇103螃420薀(2)采用银行家算法进行计算得:系统不可以将资源分配给进程P1,虽然剩余资源还可以满足进程P1现在的需求,但是一旦分配给进程P1后,就找不到一个安全执行的序列保证各个进程能够正常运行下去。因此进程P1进入等待状态。系统可以满足P2的请求,因为分配完成后,至少还可以找到一个安全序列,如(P2P1P3P4),使各进程可以运行至结束。蚈(3)系统满足进程P1和P2的请求后,没有立即进入死锁状态,因为此时所有进程还处于运行状态,没有被阻塞;只有等到进程继续申请资源井因得不到满足而全部进人阻塞状态,死锁才真正发生了。蚇3.在一个采用页式虚拟存储管理的系统中,有一用户作业,它依次要访问的字地址序列是:115,228,120,88,446,102,321,432,260,167,若该作业的第0页已经装入主存,现分配给该作业的主存共300字,页的大小为100字,请回答下列问题:按(1)FIFO调度算法(2)LRU调度算法将产生多少次缺页中断,缺页中断率为多少,依次淘汰的页号是什么。袅答:(1)按FIFO调度算法将产生5次缺页中断;袂依次淘汰的页号为:0,1,2;肈缺页中断率为:5/10=50%。蒈(2)按LRU调度算法将产生6次缺页中断;蚂依次淘汰的页号为:2,0,1,3;羀缺页中断率为:6/10=60%。薇4.在一个段式存储管理系统中,段表内容如下:袄试求下述逻辑地址对应的物理地址是什么?螃解:(1)由于第0段的内存始址为210,段长为500,故逻辑地址[O,430]是合法地址。逻辑地址[0,430]对应的物理地址为210十430=640。腿(2)由于第1段的内存始址为2350,段长为20,故逻辑地址[1,10]是合法地址。逻辑地址[1,10]对应的物理地址为2350+10=2360。羇(3)由于第2段起始地址为100,段长为90,所给逻辑地址[2,500]非法。蚄(4)由于第3段的内存始址为1350,段长为590,故逻辑地址[3,400]是合法地址。逻辑地址[3,400]对应的物理地址为1350十400=1750。螅(5)由于第4段的内存始址为1938,段长为95,所给逻辑地址[4,l12]非法。蒁(6)由于系统中不存在第5段,所给逻辑地址[5,32]非法。蚀5.在某系统中,采用固定分区分配管理方式,内存分区(单位字节)情况如图a所示。现有大小为lK、9K、33K、121K的多个作业要求进入内存,试画出它们进入内存后的空间分配俏况,并说明主存浪费有多大?莅解:从图a可以看出,该系统中共有四个分区,第一分区的大小为8k,第二分区的薂大小为32K,第三分区的大小为120K,第四分区的大小为332K。作业进入系统后的内存薀分配情况,如图b所示(每个分区中未被利用的那部分空间用阴影表示):聿(图a某系统内存分配情况)膅(图b作业进入系统后的分配情况)蚃从图b可以看出,作业进入系统后,第一分区剩余空间为7K,第二分区剩余空间为23K,第三分区剩余空间为87K,第四分区剩余空间为211K。主存空间浪费328K。羂6.有一页式系统,其页表存放在主存中,(1)如果对主存的一次存取需要1.5微秒,试问实现一次页面访问的存取时间是多少?蕿(2)如果系统加有快表,平均命中率为85%,当页表项在快表中时,其查找时间忽略为0,试问此时的存取时间为多少?袆解:若页表存放在主存中,则要实现一次页面访问需两次访问主存,一次是访问页表,确定所存取页面的物理地址,第二次才根据该地址存取页面数据。蚅(1)由于页表存放在主存,因此CPU必须两次访问主存才能获得所需数据,所以实现一次页面访问的存取时间是1.5×2=3微秒(2)在系统增加了快表后,在快表中找到页表项的概率为85%,所以实现一次页面访问的存取时间为0.85×1.5十(1—0.85)×2×1.5=1.725微秒仅供个人用于学习、研究;不得用于商业用途。Forpersonaluseonlyinstudyandresearch;notforcommercialuse.NurfürdenpersönlichenfürStudien,Forschung,zukommerziellenZweckenverwendetwerden.Pourl'étudeetlarechercheuniquementàdesfinspersonnelles;pasàdesfinscommerciales.толькодлялюдей,которыеиспользуютсядляобучения,исследованийинедолжныиспользоватьсявкоммерческихцелях.以下无正文
本文标题:操作系统期末测试2答案
链接地址:https://www.777doc.com/doc-4834162 .html