centos_71 发表于 2015-01-19 21:49

[结贴]RR算法,是否隐含了如果进程任务完成或者阻塞,则交出剩余时间片?

本帖最后由 centos_71 于 2015-01-20 22:33 编辑

例如,一个进程拿到了一个100ms的时间片,但是其运行了1ms就退出了。剩下的99ms,对于RR算法来说,就是空等,对吗?

linux的进程之间轮流使用cpu时间片,这个时间片的大小是多少呢?
i)如果进程都能分到cpu时间片,那么进程的优先级如何体现出来呢?
ii)当cpu不是很忙的时候,是不是多个进程,无论优先级高低,能否轮流的得到相同数量的cpu时间片?
iii)RR中Round是轮转的意思,那Robin是什么意思?

Tinnal 发表于 2015-01-19 22:20

回复 1# centos_71

总体来于,有一事情我想给你澄清一下,RR和FIFO都是实时进程,优先级并不是NICE值!他们有自己的优先级。不要和普通进程的搞混了。


例如,一个进程拿到了一个100ms的时间片,但是其运行了1ms就退出了。剩下的99ms,对于RR算法来说,就是空等,对吗?
对于RR来于说,剩下的99ms,如果有相同优先级的任务,则执行它(这是他相对说FIFO来说的差异)。如果没有相同优先级的,则看更低优先级的任务,否则执行普通任务。

linux的进程之间轮流使用cpu时间片,这个时间片的大小是多少呢?
还是以RR来说,刚才翻了一下我2.6.34的代码是由DEF_TIMESLICE写死的。/*
* These are the 'tuning knobs' of the scheduler:
*
* default timeslice is 100 msecs (used only for SCHED_RR tasks).
* Timeslices get refilled after they expire.
*/
#define DEF_TIMESLICE                (100 * HZ / 1000)i)如果进程都能分到cpu时间片,那么进程的优先级如何体现出来呢?
RR有独立的优先级,高优先级的任务就绪,低优先级的就不能运行。时间片只在相同优先级的任务间使用。

ii)当cpu不是很忙的时候,是不是多个进程,无论优先级高低,能否轮流的得到相同数量的cpu时间片?
同上。

iii)RR中Round是轮转的意思,那Robin是什么意思?
http://fanyi.baidu.com/#en/zh/round%20robin
应该是专有词汇,不要拆开来翻译。

   

centos_71 发表于 2015-01-20 20:47

Tinnal 发表于 2015-01-19 22:20 static/image/common/back.gif
回复 1# centos_71

总体来于,有一事情我想给你澄清一下,RR和FIFO都是实时进程,优先级并不是NICE值! ...
谢谢,还想知道一下,例如我在一个bash里面运行我自己编写的一个a.out,在另外一个bash里面运行top命令。
那么这两个bash,一个a.out,一个top命令, 有哪些是实时进程,哪些是普通进程呢?

top命令需要不断更新,这就是实时进程吗?
(1) 我在shell下,能否知道一个linux进程是实时进程,还是普通进程?
(2) Nice是对于普通进程才有意义的的对吗?
(3) 我自己写一个shell脚本或者c程序,能通过什么养的方式来让我自己运行的时候是一个实时的进程?

以上疑惑还请大侠解释一下!

Tinnal 发表于 2015-01-20 21:23

回复 3# centos_71

默认所有都是普通进程。你对Linux完全不了解呀。建议你自己先把问题百度一吧吧。
   

centos_71 发表于 2015-01-20 22:32

Tinnal 发表于 2015-01-20 21:23 static/image/common/back.gif
回复 3# centos_71

默认所有都是普通进程。你对Linux完全不了解呀。建议你自己先把问题百度一吧吧。


我倒是用过很长时间,做过一点应用开发。但是深入的知识并不知道。我还真的是头回知道有普通进程和实时进程的区别。多谢了。

Tinnal 发表于 2015-01-21 08:56

回复 5# centos_71

给你一些CUer的blog看看。
http://blog.chinaunix.net/uid-23896168-id-2653836.html
http://blog.chinaunix.net/uid-24774106-id-3379478.html

建议你买一本《unix 环境高级编程》看一下。CSDN上也有电子版的。
页: [1]
查看完整版本: [结贴]RR算法,是否隐含了如果进程任务完成或者阻塞,则交出剩余时间片?