操作系统计算题问题详解
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.设某进程所需要的服务时间t=k ⨯q,k 为时间的个数,q 为时间长度且为常数.当t 为一定值时,令q →0,则有k →∞.从而服务时间为t 的进程的响应时间T 是t 的连续函数.对应于时间片调度方式RR,先来先服务方式FCFS 和线性优先级调度方式SRR,其响应时间函数分别为:
T
rr
(t)=()λμμ-⨯t
T
fc
(t)=()λμ-1
T
sr
(t)=
()()()
'11
λμμλμ-⨯--
-t
其中'
λ=(
)λ⨯-a
b
1=r λ⨯
取(μλ,)=(50,100),分别改变r 的值,计算
T
rr
(t),
T
fc
(t)和
T
sr
(t),并画出其时间变化
图.
2.对实时系统的频率单调调度算法,对于由3个周期组成的实时任务序列,设每个周期为
T
i
(i=1,2,3),其相应任务的执行时间为
C i
(i=1,2,3).计算说明当进程执行时间与周期比
之和为0.7时,能否保证用户所要求的时限(32=1.266).
3.有5个批处理作业(A,B,C,D,E)几乎同时到达一个计算中心,估计运行时间分别为2,4,6,8,10分钟,它们的优先数分别为1,2,3,4,5(数值小的优先级低),在使用最高优先级优先调度算法时,计算作业的平均周转时间.
解答:
1.对(,λμ)=(50,100)
T rr (t)=t,T fc (t)=1/50,T sr (t)=1/50-(1-100t)/(100-50t) 0r →时,T sr (t)→1/100+t 1r →时, T sr (t)→2t 图象如下:
只有T sr (t)受r 值影响,且r 值增大,T sr (t)的斜率增大,y 截距由1/100趋向0,服务时间也增加。
题目:
4.假定某页式管理系统,主存为64KB,分成16块,块号为0,1,2,3,4,K K ,15,设某作业有4
页,其页号为0,1,2,3,被分别装入主存的2,4,1,6块,试问:
(1)该作业的总长度是多少字节?(按十进)
(2)写出该作业每一页在主存中的起始地址.
(3)若给出逻辑地址[0,100],[1,50],[2,0],[3,60],请计算出相应的存地址.(方括号的第一个元素为页号,第二个元素为页地址).
5.有一个虚存系统,某进程存占了3页,开始时存为空, 执行如下访问页号顺序后:1,2,3,4,1,2,5,1,2,3,4,5.
(1).采用先进先出(FIFO)淘汰算法,缺页次数是多少?
(2).采用最近最少使用(LRU)淘汰算法,缺页次数是多少?
6.有一只铁笼子,每次只能放入一只动物,猎人向笼中放入老虎,农民向笼中放入羊,野生动物园等待取笼中的老虎,饭店等待取笼中的羊,试用P.V操作写出能同步执行的程序.
解答:
4.解:(1)每块长度=64KB/16=4KB
于是由题目可知,每页也是4KB。故作业长4KB⨯4=16KB
(2)页表为
页号块号
0 2
1 4
2 1
3 6
第0页在主存中的起始地址为4K⨯2=8K
第1页在主存中的起始地址为4K⨯4=16K
第2页在主存中的起始地址为4K⨯1=4K
第3页在主存中的起始地址为4K⨯6=24K
(3)逻辑地址[0,100]的存地址为4K⨯2+100=8192+100=8292
逻辑地址[1,50]的存地址为4K⨯4+50=16384+50=16434
逻辑地址[2,0]的存地址为4K⨯1+0=4096
逻辑地址[3,60]的存地址为4K⨯6+60=24576+60=24636
5.解:(1)采用先进先出(FIFO)淘汰算法的页面调度过程如下:
存中页面1 1 1 1 2 3 4 1 1 1 2 5 5
存中页面2 2 2 3 4 1 2 2 2 5 3 3
存中页面3 3 4 1 2 5 5 5 3 4 4
请求页号 1 2 3 4 1 2 5 1 2 3 4 5
缺页缺缺缺缺缺缺缺缺缺
(2)采用最近最少使用(LRU)淘汰算法的页面调度过程如下:
存中页面1 1 1 1 2 3 4 1 2 5 1 2 3
存中页面2 2 2 3 4 1 2 5 1 2 3 4
存中页面3 3 4 1 2 5 1 2 3 4 5
请求页号 1 2 3 4 1 2 5 1 2 3 4 5
缺页缺缺缺缺缺缺缺缺缺缺
故缺页中断10次
6.解:这是两个生产者和两个消费者共享只能存放一件产品的缓冲区,利用P.V操作编程如下:
猎人进程农民进程动物园进程饭店进程
P(S) P(S) P(S1) P(S2)
放入虎放入羊取老虎取羊
V(S1) V(S2) V(S) V(S)
信号量初值:S=1,S1=0,S2=0
答案到此就可以了,但如果要编程,可编程如下:
begin
S, S1, S2:Semaphore;
S:=1;S1:=0;S2:=0;
cobegin
process hunter
begin
repeat
have a tiger
P(S)
put a tiger
V(S1)
forever
end
process peasant
begin
repeat
have a goat
P(S)
put a goat
V(S2)
forever
end
process hotel
begin
repeat
P(S2)
get a goat
V(S)
eat a goat
forever
end
process zoo
begin
repeat