Linux下进程调度与优先级

本文深入探讨了Linux中nice值和实时优先级的概念及其对进程调度的影响。nice值允许用户调整进程的优先级,而实时优先级提供了额外的优先级等级,确保关键任务得到及时响应。文章详细解释了nice值的范围、影响及与有效优先级的关系,同时介绍了实时优先级的特点、与普通优先级的区别以及FIFO和RR调度策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 http://mail.khcyber.com.cn/home-space-uid-56821-do-blog-id-138117.html

4)nice值与有效优先级

4.1)nice值的由来
内核允许用户通过使用一个名为nice的数值来影响调度程序关于优先级的调度
也就是说nice值是用户来触发,而我们上面说的额外值是内核来触发的.
4.2)nice值对有效优先级的影响
nice值越高,有效优先级就越低.
nice值越低,有效优先级就越高.
有效优先级=静态优先值+额外值-nice值

4.3)nice与有效优先级的范围
nice的范围是-20到19

有效优先级的范围是0-39

 
5)实时优先级
5.1)实时优先级概述:
linux提供了一个实时调度策略,提供了100个额外优先级别,以保证系统能及时响应进程.
5.2)实时优先级和普通优先级的区别:
实时优先级比普通优先级高,普通优先级是0-39.而实时优先级是(41-139),优先级一般不用40.
实时优先级在整个进程的生命周期里是不变的,所以实时进程没有nice值,也没有额外值.它的有效优先级就是静态优先级.
5.3)POSIX标准为实时进程指定了两种策略:先进先出(FIFO),时间片法(Round_Robin,简称RR)
5.3.1)先进先出(FIFO)调度
如果有两个同优先级的进程位于就绪队列,通常情况下,排在前面的先被执行
FIFO的策略要求进程不能抢占CPU,除非另一个实时进程有更高优先级

5.3.3)时间片调度(RR)
用时间片调度来执行chewer程序,则不会出现死机的情况.因为它在运行一段时间后,会根据时间片释放自己,这样就会fork出sleep进程,最后kill掉自己(chewer).
依然用chrt程序,-r表示用实时时间片调度,级别依然是50

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值