计算机操作系统模拟测试题综合应用部分

更新时间:2023-11-04 02:14:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

综合应用题:

关于PV操作:

1、桌上有一空盘,允许存放一只水果,爸爸可向盘中放苹果,也可向盘中放桔子,儿子专等吃盘中的桔子,女儿专等吃盘中的苹果。规定当盘空时一次只能放一只水果供吃者取用。 2、从读卡机上读进N张卡片,复制并打印。要求复制的信息、打印的卡片与原卡片的信息完全一致。假设这一工作由3个进程get,copy和put来完成,它们用了两个缓冲区buffer1和buffer2,缓冲区只能容纳一张卡片的信息。其中,进程get的功能是依次将每张卡片上的信息从读卡机上读进buffer1;进程copy的功能是把buffer1中的信息复制到buffer2;进程put的功能是取出buffer2中的信息并从打印机上输出。

试用P,V操作描述3个进程间可并发运行的关系图(或程序),要求说明信号量的作用及信号量的初值,尽可能提高并发性。

练习:某招待所有100个床位,住宿者入住要先登记(在登记表上填写姓名和床位号)。离去时要注销登记(在登记表上删去姓名和床位号)。请给出住宿登记及注销过程的算法描述。

有一阅览室,读者进入时必须先在一张登记表上登记。该表中每个表项代表阅览室中的一个座位。读者离开时要消掉其登记信息。阅览室共有50个座位。登记表每次仅允许一位读者进行登记或注销。读者登记时,发现登记表满,他在阅览室外等待,直至有空位再登记进入。试用Wait、Signal操作描述读者行为。

关于死锁即银行家算法,安全算法问题 (P110)

3、设系统中有三类资源R1、R2、R3和R4,又设系统中有5个进程P1,P2,P3,P4和P5.在T0时刻系统状态如下: 资源 进程 最大需求量 R1 R2 R3 R4 已分配资源量 R1 R2 R3 R4 剩余资源量 R1 R2 R3 R4 P1 P2 P3 P4 P5 8 6 4 1 4 3 3 1 10 1 3 2 3 3 3 1 5 4 6 3 1 2 1 1 3 1 1 1 4 1 3 2 3 2 2 0 1 1 3 1 2 1 1 3 系统是否处于安全状态?若是,则给出进程安全序列。 若P2提出申请1112,系统能否分配给他? 系统满足P2要求后,系统是否立即进入死锁?

4、(设有3个进程P、Q、R,它们共享10个同类资源,P、Q、R进程的资源最大需求量依次为4、7和8。现假定它们对资源的请示序列如下表所示:

进程运行顺序及申请资源情况 步骤 1 2 进程 P Q 申请资源数 2 4 3 4 5 6 R Q R P 2 2 2 2 为了避免死锁,系统分配资源时采用银行家算法。如果申请资源得不到满足,进程就转入阻塞态。根据上述信息,试描述各步骤结束时,申请资源的进程是得到满足,还是转入阻塞状态,为什么?(起始状态:各进程均不拥有资源,无进程处于阻塞态)

关于进程调度算法问题:

5. 假设系统有5个进程,他们的到达时间和服务时间如表,忽略I/O及其他开销采用FCFS、SPF(抢、非抢)、RR(抢、非抢,时间片为1)、HRRN(抢、非抢)、FB(抢、非抢i的时间片为2i-1)调度算法,计算各进程的完成时间,周转时间,带权周转时间,平均周转时间,平均带权周转时间。

进程名 A B C D E 到达时间 0 2 4 6 8 服务时间 3 6 4 5 2

练习有五个批处理的作业(A、B、C、D和E)几乎同时到达一个计算中心,估计的运行时间分别为2min、4min、6min、8min、10min,它们的优先数分别为1、2、3、4、5(1为最低优先级)。对下面的每种调度算法,分别计算作业的平均周转时间。

(1)最高优先级优先 (2)时间片轮转(时间片为2min) (3)FCFS(作业到达的顺序为C,D,B,E,A) (4)短作业优先

关于页面置换算法问题:

6、在一个请求分页系统中,加入一个作业的页面走向为4、3、2、1、4、3、5、4、3、2、1、5,目前他还没有任何页面装入内存,当分配给该作业的物理块数分别为3、4时,请分别计算采用OPT、LRU、FIFO页面淘汰算法时访问过程中的缺页次数和缺页率

关于移臂调度问题:

7、假设磁盘有200个磁道,磁盘请求队列中是一些随机请求,他们按照到达的次序分别处于55、58、39、18、90、160、150、38、184号磁道上,当前磁头在80号磁道上,并向磁

道号增加的方向上移动。请给出按FCFS、SSTF、SCAN、CSCAN算法进行磁盘调度时满足请求的次序,画出移臂调度图。

关于地址变换问题:

8、某计算机系统主存采用请求分页管理技术,主存容量为1MB,被划分为256块,每块大小为4KB。假设某个作业共有5个页面,其中0,1,2三个页面已分别装入到主存4,9,11三个物理块中,另外两个页面没有装入主存。该作业的页面变换表(PMT)如下表所示。表中的状态为0表示页面已经装入到内存中,为1表示没有装入内存。 页号 0 1 2 3 4 问题:

① 若给定一个逻辑地址为9016,其物理地址是多少?画出地址变换图。

② 若给定一个逻辑地址为12388,其物理地址是多少?地址变换过程中会出现什么问题?出现问题应如何解决?

9、某计算机系统主存采用分页管理技术,页面大小为2KB,某作业的页表如下所示。

页号 0 1 2 3 问题:

① 若给定一个逻辑地址,页号为3,页内地址为714,求其物理地址是多少?画出地址变换图。

② 若给定一个逻辑地址为10256,其物理地址是多少?地址变换过程中会出现什么问题? 其他:

10、图中将一组进程分为4类,假定各类进程之间采用优先级调度,每类进程内部采用时间片轮转调度。请简述P1,P2,P3,P4,P5,P6,P7,P8进程的调度过程。

高 低 优先级4(最高) 优先级3 优先级2 优先级1(最低) P4 P6 P5 P7 P8 P1 P2 P3 块号 4 9 11 - - 状态 0 0 0 1 1 块号 7 3 5 2 答:

11、某系统的进程状态转换如下图所示,请问: 1 就绪 3 2 4 阻塞 运行 (1)引起各种状态转换的的典型事件。

(2)当一个进程的状态变化会引起另一个进程的状态变换,说明下列因果变迁是否可能发生,其原因是什么? 1) 3 → 1 2) 3 → 2 3) 2 → 1 答案:

综合应用题:

1、int S=1; //S 表示盘子是否为空; int Sa=0; //Sa表示盘中是否有苹果; int Sb=0; //Sb表示盘中是否有桔子; 父亲while(TRUE) {

Wait(S);

将水果放入盘中; if (放入的是桔子) Signal(Sb); Else

Signal(Sa); }

儿子while(TRUE) {

Wait(Sb);

从盘中取出桔子; Signal(S); 吃桔子; }

女儿while(TRUE) {

Wait(Sa);

从盘中取出苹果; Signal(S); 吃苹果; }

父亲-母亲-儿子-女儿一个苹果或桔子

信号量:s=1(空盘);s1=0(苹果);s2=0(桔子);

爸爸:while(true) { wait(s); 放苹果; signal(s1); } 妈妈:while(true) { wait(s); 放桔子; signal(s2); } 儿子:while(true) { wait(s2); 取桔子; signal(s); } 女儿:while(true) { wait(s1); 取苹果; signal(s); } 父亲-母亲-儿子-女儿两个苹果或桔子

信号量:s=2(可用);s1=0(苹果);s2=0(桔子);mutex=1;

爸爸:wait(s); wait(mutex);放苹果; signal(s1); signal(mutex); 妈妈:wait(s); wait(mutex); 放桔子; signal(s2); signal(mutex); 儿子:wait(s2); wait(mutex); 取桔子; signal(s); signal(mutex); 女儿:wait(s1); wait(mutex); 取苹果; signal(s); signal(mutex);

2、设互斥信号量S1,S2初值为1,分别用于对buffer1和buffer2的互斥访问;同步信号量Sn1,Sn2初值为1,分别表示buffer1和buffer2初始状态为空闲,可以放一张卡片信息;同步信号量Sm1,Sm2初值为0,分别表示buffer1和buffer2中的信息还没有(或已被取用了)。用P,V操作完成这3个并发进程间能正确运行的程序如下:BEGIN S1,S2,Sn1,Sn2,Sm1,Sm2:semaphore; S1=S2=1; Sn1=Sn2=1; Sm1=Sm2=0; Cobegin

Process produce get Begin

L1: 从读卡机读进一张卡片信息; P(Sn1); P(S1);

将信息放入buffer1; V(Sm1); V(S1); Goto L1 End

Process produce copy Begin

L2: P(Sm1); P(S1);

从buffer1复制信息; V(Sn1); V(S1); P(Sn2); P(S2);

本文来源:https://www.bwwdw.com/article/mew2.html

Top