《操作系统》试题库-综合题
更新时间:2023-12-02 03:49:01 阅读量: 教育文库 文档下载
1、 设有三个进程,它们的提交时间及运行时间如下表,若采用短进程优先调度策略,试给出进程串行运行时的
调度次序及平均周转时间。 作业 提交时间 运行时间 J1 0 4 J2 2 8 J3 3 5 答:
进程 提交时间 开始时间 完成时间 周转时间 J1 0 0 4 4 J2 2 9 17 15 J3 3 4 9 6 平均周转时间=(4+15+6)/3=25/3=8.33 各进程的调度次序: J1,J3,J2
2、 设有三道作业,它们的提交时间及运行时间如下表,若采用短作业优先调度策略,试给出作业单道串行运行
时的调度次序及平均周转时间。 (8分) 作 业 提交时间(单位:基本时间单位) 运行时间(单位:基本时间单位) J1 J2 J3 0 2 3 7 4 5 作业 提交时间 开始时间 完成时间 周转时间
J1 0 0 7 7 J2 2 7 11 4 J3 3 11 16 13
平均周转时间=(7+9+13)/3=29/3=9.67 (4分) 各作业的调度次序:
(3分)
3、 假定在单CPU条件下,有A,B,C,D四个作业依次到达(后面的作业依次比前一作业迟到一个时间单位)。
四个作业分别需要运行11,6,2和1个时间单位,如果系统采用FCFS的调度算法,请计算: (1) 各作业的周转时间 (2) 系统此时的平均周转时间; (3) 各作业的带权周转时间; (4) 系统此时的平均带权周转时间; 解答:
作业 作业到达时间 运行时间 完成时间 周转时间 带权周转时间 A 0 11 11 11 1
B 1 6 17 16 2.67 C 2 2 19 17 8.5 D 3 1 20 17 17 平均周转时间T= 15.25 平均带权周转时间 W= 7.29
4、 假设在单处理机上有五个(1,2,3,4,5)进程争夺运行,其运行时间分别为10、1、2、1、5(秒),其优先
级分别为4、1、3、5、2;在某时刻这五个进程按照1,2,3,4,5的顺序同时到达。试回答: (1) 给出这些进程分别使用轮转法(时间片为2秒)、非剥夺优先级调度法时的运行进度表。 (2) 在上述各算法的调度下每个进程的周转时间和等待时间为多少? 解答:
(1) 轮转法运行进度表:
1
P1 P2 P3 p4 P5 P1 P5 P1 P5 P1
0 2 3 5 6 8 10 12 14 15 19 非剥夺优先级调度法运行进度表:
P4 P1 P3 P5 P2 0 1 11 13 18 19 (2) 轮转法周转时间和等待时间: 作业 1 2 3 运行时间(小时) 10 1 2 19 3 5 周转时间(小时) 等待时间(小时) 0+6+2+1=9 2 3 5 6+2+2=10 周转时间(小时) 11 19 13 1 等待时间(小时) 1 18 11 0 4 1 6 5 5 15 非剥夺优先级调度法周转时间和等待时间: 作业 1 2 3 4 优先级 4 1 3 5 调度顺序 2 5 3 1 运行时间(小时) 10 1 2 1 5 2 4 5 18 13 5、 画出进程的五种状态变化图,并说明状态变化原因。
答:变化原因在图上说明。
6、 某车站售票厅,任何时刻最多可容纳20名购票者进入,当售票厅中少于20名购票者时,则厅外的购票者可
立即进入,否则需在外面等待。若把一个购票者看作一个进程,请回答下列问题:
(1)用PV(或wait和signal)操作管理这些并发进程时,应怎样定义信号量,写出信号量的初值以及信号量各种取值的含义。
(2)若欲购票者最多为n个人,写出信号量可能的变化范围(最大值和最小值)。
(3)根据所定义的信号量,把应执行的PV(或wait和signal)操作填入下述括号中,以保证进程能够正确地并发执行。
Buyi(I=1,2,……) { Do{
进入售票厅; ( ) 购票;
( )
退出; }while(1)
}
2
解答: (1)定义一信号量S,初始值为20。 (1分) 意义:
S>0 S的值表示可继续进入售票厅的人数 (1分) S=0 表示售票厅中已有20名顾客(购票者) (1分) S<0 |S|的值为等待进入售票厅的人数 (1分)
(2) S的最大值为20 (1分) S的最小值为20-n (1分) (3) 上框为P(S) (1分) 下框为V(S) (1分)
注:信号量的符号可不同(如写成t),但使用时应一致(即上述的s全应改成t)。
7、 现为某临界资源设一把锁w,当w=1时,表示关锁,w=0时,表示锁已打开,试写出开锁和关锁的原语,
并说明如何利用它们去控制对该临界资源的互斥访问?(7分) ① 开锁原语unlock(w)如下:
unlock(w):w:=0 关锁原语lock(w)如下: Lock(w):
L: if w=1 then go to L e
else w:=1; (4分)
② 可设临界段cs放在两者之间来实现互斥,即 Lock(w); cs;
unlock(w) (3分)
8、 有两个用户进程A和B,在运行过程中都要使用系统中的一台打印机输出计算结果。
(1) 试说明A、B两进程之间存在什么样的制约关系?
(2) 为保证这两个进程能正确地打印出各自的结果,请用信号量和P、V操作写出各自的有关申请、使用打
印机的代码。要求给出信号量的含义和初值。
解答:(1) A、B两进程之间存在互斥的制约关系。因为打印机属于临界资源,必须一个进程使用完之后另一
个进程才能使用。(2分)
(2)mutex:用于互斥的信号量,初值为1。(2分)
进程A 进程B ... ... P(mutex) P(mutex) 申请打印机 申请打印机 使用打印机 使用打印机 V(mutex) V(mutex) ... ...
9、 进程process_A 进行计算后通过进程process_B输出,这两个并发进程的程序如下:
int Count=0; process_A() { do
{ Count = Count + 10 }while(1)} process_B() { do
{ print(Count) Count =0; }while(1) }
3
请回答:
(1) 指出这两个并发进程的临界区。
(2) 指出它们并发执行时可能出现的与时间有关的错误。
(3) 用信号量机制进行管理,写出它们能正确并发执行的程序。 解答:(1) 临界区为process_A():Count = Count + 10, process_B():print(Count) Count =0; (2)错误顺序(不是唯一的)
① print(Count) ② Count = Count + 10 ③ Count =0; (3)实现同步
信号量:S1=1,S2=0; 信号量:mutex=1;
process_B()
int Count=0;
{ do{ wait(S2)
process_A()
wait(mutex);
{ do{ wait(S1)
print(Count)
wait(mutex);
Count =0;
Count = Count + 10
Signal(mutex)
Signal(mutex)
Signal(S1)
Signal(S2)
}while(1)
}while(1)
}
}
10、 有一个阅览室,共有100个座位,读者进入时必须先在一张登记表上登记,该表为每一座位列一表目,包括
座号和读者姓名等,读者离开时要消掉登记的信息,试问:(?) (1)为描述读者的动作,应编写几个程序,设置几个进程? (2)试用PV操作描述读者进程之间的同步关系。
答:读者的动作有两个,一是填表进入阅览室,这时要考虑阅览室里是否有座位;一是读者阅读完毕,离开阅览室,这时的操作要考虑阅览室里是否有读者。读者在阅览室读书时,由于没有引起资源的变动,不算动作变化。
算法的信号量有三个:seats——表示阅览室是否有座位(初值为100,代表阅览室的空座位数);readers——表示阅览室里的读者数,初值为0;用于互斥的mutex,初值为1。 读者进入阅览室的动作描述getin: while(TRUE){
P (seats); /*没有座位则离开*/ P(mutex) /*进入临界区*/ 填写登记表;
进入阅览室读书;
V(mutex) /*离开临界区*/ V(readers) }
读者离开阅览室的动作描述getout: while(TRUE){
P(readers) /*阅览室是否有人读书*/ P(mutex) /*进入临界区*/ 消掉登记;
离开阅览室;
V(mutex) /*离开临界区*/
V(seats) /*释放一个座位资源*/ }
4
11、 假定进程A负责为用户作业分配打印机,进程B负责释放打印机,系统中设立一个打印机分配表如下,由各
个进程共用。 打印机编号 0 1 2 分配标志 0 0 0 用户名 用户定义的设备名 试用P,V操作实现两进程对分配表的互斥操作。 解答: 设一个互斥信号量mutex,其初值为1。
P1(分配进程)和P2(释放进程)的临界区代码可按下述形式组成:
P(mutex); P(mutex); 分配打印机; 释放打印机; (读写分配表) (读写分配表) V(mutex); V(mutex);
12、 设系统中只有一台打印机,有二个用户的程序在执行过程中都要使用打印机输出计算结果。设每个用户程序
对应一个进程。问:这二个进程间有什么样的制约关系?试用P,V操作写出这二个进程使用打印机的算法。 解答: 因为打印机是一种临界资源,所以这二个进程只能互斥地使用这台打印机。即一个用户的计算结果打印完后,另一个用户再打印,因此是互斥关系。
设两个进程分别为A和B,设一个互斥信号量mutex,其初值为1,其算法如下: A进程 B进程
P(mutex); P(mutex); 使用打印机; 使用打印机; V(mutex); V(mutex);
13、 设P1,P2两进程共用一个缓冲区F,P1向F写入信息,P2则从F中读出信息。问这两个进程间是什么样的
制约关系?试用P,V操作写出这两个进程读写缓冲区的算法。
解答: A,B两进程间是同步关系,即A进程向Q写满信息后,B进程才能从Q中取走信息。为此,设立两个信号量:
empty:表示缓冲区Q为空(0为不空,1为空),初值为1, full: 表示缓冲区Q为满(0为不满,1为满),初值为0。 算法如下:
A进程: B进程: while(true){ while(true){ P(empty); P(full);
向Q写入信息; 从Q中读出信息; V(full); V(empty); } }
注:若信号量初值不同,算法有些不同。如若empty和full的初值均为0,则A进程的算法中P(empty)语句应放在V(full)之后,即 解法不惟一 。
14、 设A1,A2为两个并发进程,它们共享一临界资源,其临界区代码分别为CS1,CS2。问这两个进程间是什么
样的制约关系?试用P,V操作写出这两个进程共享临界资源的算法。
5
正在阅读:
《操作系统》试题库-综合题12-02
MySQL基本查询语句(一)09-21
北京市普通高中学生综合素质评价电子平台12-06
监理工程师年度考核个人述职报告04-09
玻纤知识与浮纤解决方法探讨01-16
中国热风炉砖行业市场前景分析预测年度报告(目录) - 图文01-20
菏泽市果蔬生鲜仓储公司名录2018版194家 - 图文02-03
春季的运动会主持词02-23
中共中央组织部关于规范退(离)休领导干部在社会团体兼职问题11-10
人教版一年级下册数学教案(3-5单元)03-08
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 试题库
- 操作系统
- 综合
- 66种不需要缴纳或免征印花税的合同或情形(老会计人的经验)
- 高职院校大学英语教师职业倦怠成因探究
- 昆明市人民政府关于进一步深化行政审批制度改革的实施意见
- 职位说明书--供应商管理工程师工作内容描述及任职资格要求
- 任务4 填制和审核凭证测试题
- 人教版美术八年级上册《色彩的感染力》教案3
- 2018运维工程师年终个人总结
- 2019-2020年北京市资格从业考试《药学综合知识与技能》精选重点题含答案解析(十六)
- 外国人在中国永久居留申请服务指引
- OTIS故障代码-中文版
- 职业道德题
- 我的家乡作文一年级
- 民政述职报告 南溪县人民政府班子述职报告 精品
- 西方美术鉴赏(整理答案)
- 2016-2017四年级上册科学教学工作总结1
- 高校武术散打运动损伤的成因及预防研究
- 住院病历质量评定标准 - 图文
- 某社区卫生服务中心门诊不合格处方分析
- 五星级美德少年评选通知、评选通报 Microsoft Word 文档
- 抗结核药物导致肝功能损害的影响因素分析