计算机操作系统复习资料.docx
- 文档编号:9262121
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:20
- 大小:474.12KB
计算机操作系统复习资料.docx
《计算机操作系统复习资料.docx》由会员分享,可在线阅读,更多相关《计算机操作系统复习资料.docx(20页珍藏版)》请在冰豆网上搜索。
计算机操作系统复习资料
用P、V操作实现下述问题:
1、有3个并发进程R、M、P,它们共享一个缓冲区。
进程R负责从输入设备读信息,每读入一个记录后放入缓冲区中;进程M在缓冲区中加工读入的记录;进程P把加工后的记录打印输出。
读入的记录经过加工打印后,缓冲区又可以存放下一个记录。
Beginc,a,b:
semaphore;
C=1;a=b=0;
CobeginR:
beginM:
beginP:
begin
repeatrepeatrepeat
P(c)P(a)P(b)
读记录到缓冲区加工缓冲区内的记录打印加工后的记录
V(a)V(b)V(c)
untilfalseuntilfalseuntilfalse
endendend
CoendEnd
2、桌上一个盘子,可以放一个水果,父亲总放苹果到盘子中,母亲总放香蕉到盘子中,一个儿子专等吃盘子中的香蕉,一个女儿专等吃盘子中的苹果。
互斥关系:
F,M竞争临界资源(盘子)同步关系:
M---S,banana=0
Mutex=1F----D,apple=0
向盘中放苹果
3、设有进程A、B、C,分别调用过程get、copy、put对缓冲区S和T进行操作。
进程get负责把数据块输入缓冲区S,copy负责从缓冲区S中提取数据块复制到缓冲区T中,put负责从缓冲区T中取信息打印。
生产者—消费者关系:
A---B,A:
生产者,B:
消费者,缓冲区S
B---C,B:
生产者,C:
消费者,缓冲区T
empty1=empty2=1,full1=full2=0
从缓冲区T取数打印
4、8个进程并发制约关系
▪1.假设有4道作业,它们的提交时刻及执行时间由下表给出
作业号
提交时刻/小时
执行时间/小时
1
10:
00
2
2
10:
20
1
3
10:
40
0.5
4
10:
50
0.3
计算在单道程序环境下,采用先来先服务调度算法和最短作业优先调度算法时的平均周转时间和平均带权周转时间,并指出它们的调度顺序。
作业号
提交时刻/小时
执行时间/小时
1
10:
00
2
2
10:
20
1
3
10:
40
0.5
4
10:
50
0.3
▪FCFS:
1.10:
00——12:
00
(2)
2.10:
20——13:
00(2.67)
3.10:
40——13:
30(2.83)
4.10:
50——13:
48(2.97)
平均周转时间:
=(2+2.67+2.83+2.97)/4=2.62
平均带权周转时间:
=(1+2.67+2.83/0.5+2.97/0.3)/4=4.8
作业号
提交时刻/小时
执行时间/小时
1
10:
00
2
2
10:
20
1
3
10:
40
0.5
4
10:
50
0.3
▪SJF:
1.10:
00——12:
00
(2)
4.10:
50——12:
18(1.47)
3.10:
40——12:
48(2.13)
2.10:
20——13:
48(3.47)
平均周转时间:
=(2+1.47+2.13+3.47)/4=2.27
平均带权周转时间:
=(1+1.47/0.3+2.13/0.5+3.47/1)/4=3.41
▪3.若在后备作业队列中等待运行的同时有三个作业,1、2、3,已知它们各自的运行时间为a、b、c,且满足关系a
▪答:
T=[a+(a+b)+(a+b+c)]/3=(a+b+c)–(0a+1b+2c)/3
因为a+b+c是固定的,所以当a
▪5.有一个具有两道作业的批处理系统,作业调度采用短作业优先的调度算法,进程调度采用以优先数为基础的抢占式调度算法。
在下表所示的作业序列,作业优先数即为进程优先数,优先数越小优先级越高。
作业名
到达时间
估计运行时间
优先数
A
10:
00
40分
5
B
10:
20
30分
3
C
10:
30
50分
4
D
10:
50
20分
6
(1)列出所有作业进入内存时间及结束时间
(2)计算平均周转时间
A:
10:
00–11:
10(70)作业平均周转时间为:
(70+30+90+90)/4=70分钟
B:
10:
20–10:
50(30)
C:
10:
50–12:
00(90)
D:
11:
10–12:
20(90)
6.假设有四个作业,它们的提交、运行时间如下表所示。
若采用响应比高者优先调度算法,问,平均周转时间和平均带权周转时间为多少?
(时间单位:
小时,以十进制进行计算)
作业号
到达时间
运行时间
1
8.0(08:
00)
2.0
2
8.3(08:
18)
0.5
3
8.5(08:
30)
0.1
4
9.0(09:
00)
0.4
▪某个OS采用可变分区分配方法,用户区主存512KB,若分配时采用分配自由区的低地址部分的方案,假设初始时全为空,对下列申请次序:
req(300KB),req(100KB)release(300KB),req(150KB),req(30KB)req(40KB),req(60KB)release(30KB)
▪采用FF算法、BF算法,自由区中各有哪些空块(给出地址,大小)?
▪如果再申请100KB,针对以上两种算法,各有什么结果?
FF算法
BF算法
在一分页式存储管理中,逻辑地址长度为16位,页面大小为2048字节,对应页表如下,现有逻辑地址05ACH,2F6AH,经过地址变换后所对应的物理地址各是多少?
页号
块号
0
5
1
10
2
4
3
7
▪若每页存放200个整数,程序A会发生50次缺页,程序B会发生50x100=5000次缺页。
▪若每页存放100个整数,程序A会发生100次缺页,程序B会发生100x100=10000次缺页。
▪说明访问数组的时候要按照数组在内存中实际的存储方式来访问,减少缺页次数。
银行家算法如下:
设Requesti是进程Pi的请求向量,Requesti(j)=k表示进程Pi请求分配Rj类资源k个,当Pi发出资源请求后,系统按照下列步骤进行检查。
(1)若Requesti≤Need,则执行步骤
(2);否则系统会因为它所需要的资源数已超过它要求的最大值而认为出错。
(2)若Requesti≤Available,则执行步骤(3);否则系统会因为系统中尚无足够的资源满足Pi的申请而使进程Pi等待。
(3)系统试探地把资源分配给进程Pi并修改如下数据结构中的值:
Available=Available-Requesti
Allocationi=Allocationi+Requesti
Needi=Needi-Requesti
(4)系统执行安全算法,检查此次资源分配后,系统是否处于安全状态。
若是则系统才真正将资源分配给进程Pi以完成本次分配;若不是则系统将试探分配作
例子:
假定系统有10个资源(为了说明问题的简单,不管它是什么资源),目前分配的情况如上表:
此时,系统中只剩下2个资源,这时就要考察能满足哪个进程,不能满足P和R的最大要求,能满足Q,于是将剩下的2个资源分配给Q,Q就能完成,然后释放所占用的6个资源。
可满足P,也可满足R,这时不论分给谁都能保证完成
安全状态的例子——单资源
例:
假定系统有三个进程P1、P2、P3,共有12台磁带机。
进程P1总共要求10台磁带机,P2和P3分别要求4台和九台。
设在T0时刻,进程P1、P2和P3已经获得5台、2台和2台,还有3台空闲没有分配。
已分配
最大需求
可用
进程
进程
P1
3
5
10
2
4
P2
2
P3
9
T0时刻系统时安全的。
这时存在一个安全序列
多资源的银行家算法
仍需要的资源W
已分配资源P
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 操作系统 复习资料
![提示](https://static.bdocx.com/images/bang_tan.gif)