关于linux进程调度的公平性

人有旦夕祸福、事有轻重缓急。因此我们不可能对系统内得所有进程都统一对待,这不科学也不合理。因此必须给进程赋予不同的优先级,进而再依此为基础较为科学的分配cpu的处理时间。但是,有了优先级我们如何依此来分配处理器时间以彰显系统对所有进程的公平呢?有两种方法:

1.按照进程的优先级,给进程分配不同大小的时间片,时间片用完的进程就被放到“过期队列”,等可执行状态的进程都过期了,再统一分配处理器时间。O(1),O(N)借鉴了该思想。

2.采取动态策略,动态调整进程的优先级,随着进程在CPU上运行,其优先级被不断的调低,以便其他进程有机会得到执行。CFS借鉴了该思想。

 

方法2从实现方式上保证了更细的公平粒度,并将“公平性”和“动态性”结合起来,打打简化了内核调度程序的代码。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值