操作系统时间片轮转调度算法 进程 到达时间 服务时间 p1 p2 p3 p4

本文详细解析了时间片轮转调度算法的工作流程,通过一个具体的实例,展示了算法如何处理多个进程的调度,包括进程到达时间、服务时间和时间片大小的影响。

时间片轮转调度算法详细判断流程:

例题:

进程 到达时间 服务时间
P1 0.0 7
P2 2.0 4
P3 4.0 1
P4 5.0 4

时间片为1

先放出来最终的结果

P1 P1 P2 P1 P2 P3 P1 P4 P2 P1 P4 P2 P1 P4 P1 P4
P1 P2 P3 P1 P4 P2 P1 P4 P2 P1 P4 P1 P4
P1 P4 P2 P1 P4 P2 P1 P4
P2

因为时间片为1,所以我们每隔1就要中断一下

0时刻,P1到达,第1个时间片执行服务开始,此时队列中的数据如下(箭头向上代表流动方向,上面的代表出队列,下面的代表入队列

P1

1时刻没有陆续到达的,第1个时间片执行完成,队列中仍然是P1

p1已服务时间: 1    ,p2已服务时间: 0   ,p3已服务时间: 0   ,p4已服务时间: 0   

队列如下  

P1

再执行1个时间片(第2个时间片执行服务开始),总状态(除最后一列外的左边列代表已执行过的队列,最后一列代表当前队列)  

P1 P1

2时刻P2到达,第2个时间片执行完成,P2入队列,P1出队列循环到队尾,此时队列如下

p1已服务时间: 2    ,p2已服务时间: 0   ,p3已服务时间: 0   ,p4已服务时间: 0   

P2
P1

再执行1个时间片(第3个时间片执行服务开始),总状态 

P1 P1 P2
P1

3时刻没有到达的,第3个时间片执行完成,继续循环出队列然后进队列,P2到队尾,此时状态

p1已服务时间: 2    ,p2已服务时间: 1   ,p3已服务时间: 0   ,p4已服务时间: 0   

P1
P2

再执行1个时间片(第4个时间片执行服务开始),总状态 

P1 P1 P2 P1
P1 P2

继续循环,4时刻,P3到达,第4个时间片执行完成,P1到队尾,此时状态

p1已服务时间: 3    ,p2已服务时间: 1   ,p3已服务时间: 0   ,p4已服务时间: 0   

P2
P3
P1

再执行1个时间片(第5个时间片执行服务开始),总状态

P1 P1 P2 P1 P2
P1 P2 P3
P1

继续循环,5时刻,P4到达,第5个时间片执行完成,P2到队尾,此时的状态

p1已服务时间: 3    ,p2已服务时间: 2   ,p3已服务时间: 0   ,p4已服务时间: 0   

评论 20
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值