关于时间片的轮转

关于时间片的轮转

CPU将执行时间分成多个小块,由多个任务去随机获取这些固定的时间片。
老师我想问一下这些任务获取时间片的情况是:
    假设QQ  微信   网易云 这三个进程,微信获取到cpu执行权限,去获取时间片 ,
    然后QQ又获取到执行执行权限去获取时间片,然后网易云又获取权限去执行权限去获取时间片。
    问题 : 是当走完这一轮了以后,它们三个又重新去争夺cpu的执行权限嘛?
             还是说当微信作为第一得到cpu执行权限获取到时间片之后,它还会参与第二次的时间片
             争夺?


正在回答

登陆购买课程后可参与讨论,去登陆

2回答

同学你好,

1、对于第一个问题,“那么第一次争夺CPU调度权限的时候,争夺到程序执行完时间片之后,就会退出这一大次的争夺 ,让 剩下 两个没争夺到 争夺,让这些程序都争夺到CPU的执行权限才结束”,同学的这个理解是正确的。

在使用完一个时间片后,即使进程并未完成其运行,它也必须释放出处理机给下一个就绪的进程,而被剥夺的进程返回到就绪队列的末尾重新排队,等候再次运行。

2、先来先服务就是指进程执行的先后顺序。

“A B C 如果A争夺到了优先执行权限,A执行完时间片之后,就会到就绪列队的末尾, 那么这个时候,A是等 B C两个线程进行争夺完,都执行完时间片之后,再加入到 下一个时间片的争夺”。这个同学的理解是正确的。A不会再参与B和 C时间片的抢占,会释放出处理机给下一进程。

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!

好帮手慕酷酷 2019-09-08 14:36:12

同学你好,

当QQ、微信、网易云三个进程执行完成一个时间片后,不会重新争夺CPU,而是参与第二次时间片的执行。

其实时间片轮转算法的基本思想是:

系统将所有的就绪进程按先来先服务算法的原则,排成一个队列,每次调度时,系统把处理机分配给队列首进程,并让其执行一个时间片。当执行的时间片用完时,由一个计时器发出时钟中断请求,调度程序根据这个请求停止该进程的运行,将它送到就绪队列的末尾,再把处理机分给就绪队列中新的队列首进程,同时让它也执行一个时间片。

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!

  • 提问者 jia_蛙 #1
    1. 第一次先争夺CPU的调度权限然后去执行时间片,第二次,以及接下来的每一次,不会重新争夺CPU执行权限,而是直接去争夺时间片嘛? 那么第一次争夺CPU调度权限的时候,争夺到程序执行完时间片之后,就会退出这一大次的争夺 ,让 剩下 两个没争夺到 争夺,让这些程序都争夺到CPU的执行权限才结束嘛?还是说只要有一个进程争夺到cpu执行权限,执行完时间片之后,就开始第二轮时间片的执行的争夺。 2. 系统将所有的就绪进程按先来先服务算法的原则: 这里的先来先服务指的就是这些进程争夺到的先后是吧?A B C 如果A争夺到了优先执行权限,A执行完时间片之后,就会到就绪列队的末尾, 那么这个时候,A是等 B C两个线程进行争夺完,都执行完时间片之后,再加入到 下一个时间片的争夺还是说, A争夺到了时间片之后,就算到了就绪列队的末尾,它也还会与B C 参与下一个时间片的争夺,只不过现在A再就绪列队的末尾,争夺到的机率比较小而已?
    2019-09-08 16:51:07
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师