操作系统红颜色部分

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

生产者消费者问题1.爸爸妈妈放苹果桔子例子(盘子可以放2个水果),爸专向盘子中放苹果,妈妈专向盘子中放橘子,儿子专等吃盘子中的橘子,女儿专等吃盘子中的苹果。semaphoreplate=2,apple=0,orange=0,mutex1=1,mutex2=1(互斥信号量);父亲进程while(1){取苹果;P(plate);//互斥向盘中取、放水果P(mutex1);向盘中放苹果;V(mutex1);V(apple);//允许取苹果}母亲进程while(1){取桔子;P(plate);//互斥向盘中取、放水果P(mutex1);向盘中放橘子;V(mutex1);V(orange);//允许取橘子}儿子进程while(1){P(orange);//互斥向盘中取橘子P(mutex2);从盘子中拿桔子;V(mutex2);V(plate);//允许向盘中取、放水果吃桔子;}女儿进程while(1){P(apple);//互斥向盘中取苹果P(mutex2);从盘子中拿苹果;V(mutex2);V(plate);//运行向盘中取、放水果吃苹果;}2.图书馆看书登记的例子图书馆有100个座位,每位进入图书馆的读者要在登记表上登记,退出时要在登记表上注销。要几个程序?有多少个进程?(答:一个程序;为每个读者设一个进程)(1)当图书馆中没有座位时,后到的读者在图书馆为等待(阻塞)(2)当图书馆中没有座位时,后到的读者不等待,立即回家。解(1)设信号量:S=100;MUTEX=1P(S)P(MUTEX)登记V(MUTEX)阅读P(MUTEX)注销V(MUTEX)V(S)解(2)设整型变量COUNT=100;信号量:MUTEX=1;P(MUTEX);IF(COUNT==0){V(MUTEX);RETURN;}COUNT=COUNT-1;登记V(MUTEX);阅读P(MUTEX);COUNT=COUNT+1;V(MUTEX);RETURN;1.在页式管理中,页长为2K,某一作业的4个页面0,1,2,3分别被分配到内存的2,4,6,9块中,试回答(1)画出作业A的页表;(2)在1200单元有一条指令movr1,[7500]执行时,如何进行正确的地址变换,使7500单元处的内容1234装入r1中?请写出计算过程。(1)页号块号02142639(2)因为每页大小为2KB=2048字节,而7500=3*2048+1356,可知逻辑地址7500对应的页号为3,页内地址为1356.根据页号检索页表可知对应的物理块号为9,所以物理地址为:9*2048+1356=19788.在一个请求分页系统中,假设系统分配给某进程的物理块数为3/4,开始时内存为空,执行如下访问页号序列:?用FIFO先进先出淘汰算法/OPT理想型淘汰算法/LRU,写出页面淘汰过程,并计算缺页率。2.操作系统为某进程在内存中分配有三个页面,该进程访问内存的顺序(访问串)为4,3,2,1,4,3,5,4,3,2,1,5,试用先进先出淘汰算法和理想型淘汰算法运行该进程,写出页面淘汰过程,并计算缺页率(假设初始时内存中没有该进程的页面)。OPT算法:432143543215444442133333321555缺页率=7/12*100%=58%FIFO算法淘汰最先进入内存页面,即选择在内存中驻存时间最长的页面予以淘汰:432143543215444111555333444222223331缺页率=9/12*100%=75%LRU算法淘汰最近最久未使用的页面:432143543215444111522233344441122233335缺页率=10/12*100%=83%某分页系统中主存容量为XXKB,页面大小为2KB,作业A的4个页面0,1,2,3分别被分配到主存的XXXX块中,试回答(1)画出作业A的页表(2)如何将逻辑地址2800(十进制)转换为物理地址?(超出页表长度产生地址越界中断)3.某虚拟存储器的用户空间共有32个页面,每页2KB,主存32KB。(1)逻辑地址的有效位是多少?32*2KB=2^16B16位(2)物理地址的有效位为多少?主存32KB=2^15B15位(3)假定某时刻系统用户的第0,1,2,3页分别分配的物理块号为5,10,4,7。将虚地址092BH变换为物理地址。(如果给出的地址分离的页号不在页表中,并且小于页长,则产生缺页中断,否则才是地址越界中断。)页号块号051102437092BH=0100100101011“0001”为页号页号1对应块号10对应的二进制为“1010”拼接页内地址00100101011得到物理地址101000100101011=512BH4.某文件占8个磁盘块,现要把该文件磁盘块逐个读入主存缓冲区,并送用户区进行分析,假设一个缓冲区与一个磁盘块大小相同,把一个磁盘块读入缓冲区的时间(T)为60us,将缓冲区的数据传送到用户区的时间(M)是30us,CPU对一块数据进行分析的时间(C)为30us。在单缓冲区和双缓冲区结构下,读入并分析完该文件的时间分别是多少?单缓冲区的总时间=(磁盘写入缓冲区时间+缓冲区读取时间)*8+CPU处理最后一块数据的时间双缓冲区的总时间=(磁盘写入缓冲区时间)*8+读取最后一块数据时间+CPU分析最后一块数据的时间单缓冲区总时间=(T+M)*8+C=(60+30)*8+30=750us双缓冲区总时间=T*8+M+C=60*8+30+30=540us5.磁盘或内存采用位示图分配。(1)块号B对应位示图的字号和位号各是多少?(2)位示图字号W,位号M对应块号是多少?类似P277T15(1)字号i=(B-1)DIVn+1位号j=(B-1)MODn+1(DIV求商,MOD求余)(2)B=n*(W-1)+M(b=n*(i-1)+j)6.假定当前磁头位于A号磁道,进程对磁道的请求序列依次为。当采用最短寻道时间优先和SCAN/CSCAN算法时,总的移动的磁道数分别是多少?P218假定当前磁头位于100号磁道,进程对磁道的请求序列依次为55,58,39,18,90,160,150,38,180。当采用先来先服务和最短寻道时间优先算法时,总的移动的磁道数分别是多少?(请给出寻道次序和每步移动磁道数)(8分)FCFS:服务序列依次为:55,58,39,18,90,160,150,38,180移动的磁道数分别是:45,3,19,21,72,70,10,112,142总的移动的磁道数是:494SSTF:服务序列依次为:90,58,55,39,38,18,150,160,180移动的磁道数分别是:10,32,3,16,1,20,132,10,20总的移动的磁道数是:244SCAN:150,160,180,90,58,55,39,18CSCAN:150,160,90,18,39,55,58,907.假设一个UNIX系统中,每个i结点中有10个直接地址和一、二、三重间接地址各一个,如果每个盘块长2KB,每个盘块地址占用16bit,则一个1MB的文件分别占用多少数据盘块和间接盘块?1MB的文件1)占用数据盘块数:1MB/2KB=512个2)每个盘块占用16bit,即用2个字节存放盘块地址一次间接盘块可存放2KB/2B=1K=1024个数据盘块索引502个所以:1MB的文件占用1个间接盘块,该间接盘块有502个数据盘块地址。10MB的文件1)占用数据盘块数:10MB/2KB=5120个2)每个盘块占用16bit,即用2个字节存放盘块地址一次间接盘块可存放2KB/2B=1K=1024个数据盘块索引一次间接不够,需要二次间接,5120-1024-10=4086个占用二次间接盘块4086/1024=[3.99]=4(取上整),加上主索引1块,一共5块。所以:10MB的文件占用5块二次间接,1块一次间接,一共6个间接盘块。简答题死锁、虚拟存储、文件删除、位示图磁盘、同步互斥、spool、虚拟设备、文件进程状态:三个基本状态及转换(原因)两种形式的制约关系:同步和互斥临界资源、临界区、互斥、同步的定义及举例共享缓冲区的合作、进程同步进程状态:三个基本状态及转换(原因)死锁的定义及例子,解决死锁的办法虚拟存储管理作用,概念,实现方式有?磁盘进行移臂调度的目的(),算法,特点SPOOLing系统是如何实现虚拟设备的?虚拟设备,SPOOLing技术如何实现虚拟打印机?位示图作用,计算,分配回收UNIX索引结点,计算数据盘块和间接盘块数文件误删除如何恢复?原理?

1 / 6
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功