计算IO设备、CPU利用率

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


一、题目

在一个单CPU的处理机中,有P1,P3,P5三个作业,有两个IO设备IO1,IO2,并且能够实现抢先式多任务并行工作的多道程序环境中,投入运行优先级由高到低P5,P1,P3三个作业,他们使用设备的先后顺序和占用设备的时间分别为:
P1:IO2(10ms) CPU(10ms) IO1(30ms)CPU(10ms);
P3:IO1(30ms) CPU(10ms) IO2(30ms)CPU(10ms);
P5:CPU(20ms) IO1(30ms) CPU(10ms) IO2(15ms)

忽略其他的时间损耗,3个作业投入到全部完成的情况下。请计算IO2的设备利用率

二、解题步骤

0.分析:

由于是抢先式多任务并行环境,所以资源能抢到就占用,优先级高的会剥夺优先级低的进程持有的资源。同一设备每时刻只能被一个进程占用,

首先:三个进程并行执行,优先级高的P5抢占CPU成功,P1、P3分别抢占IO2、IO1成功;P5使用完CPU后,尝试占用IO1,发现P3在使用,但是我P5优先级高,直接抢占成功执行30ms,这30ms内P3一直阻塞。

对于P1进程使用完IO2后尝试占用CPU,发现优先级更高的进程P5正在使用,阻塞在这里,等待P5使用完后才尝试获取CPU。它获取CPU成功并使用10ms后开始尝试占用IO1,发现P5在使用IO1,于是又阻塞在这里,这里P3也阻塞在这里,而P1优先级高,所以等P5使用完后,先阻塞的P3并不是先获得IO1,而是又被P1阻塞在这里。后面执行过程类似…

P5执行一路无阻,神挡杀神,最先执行完。

1.图解:

横虚线为时间:三个进程结束时共耗时140个时间单位(ms),IO2耗时55个时间单位,CPU耗时70个时间单位,IO1耗时90个时间单位。
所以设备IO2 利用率=55÷140=0.3928
CPU利用率=70÷140=0.5
IO1利用率=90÷140=0.6428

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值