Linux nice及renice命令使用
Linux nice及renice命令使用
引言: linux内核是一个了不起的马戏表演者,它在进程和系统资源之间小心地玩着杂耍,并保持系统的正常运转。同时,内核也很公平,它将资源公平地分配给各个进程。但是,如果用户需要给一个重要进程提高优先级、或是降低优先级,该怎么办呢?答案是需要由用户来为内核制定进程的优先级。这里对nice及renice命令做一个基本的介绍。
一、nice命令
1.1、基本介绍
nice命令可以修改进程的优先级,进而调整进程调度。nice值的范围是[-20, 19], -20表示进程的最高优先级,19表示进程的最低优先级。Linux进程的默认nice值为0。使用nice可调整进程的优先级,这样调度器就会依据进程优先级,为其分配CPU资源。
1)、sleep 200&后,ps -el | grep sleep抓取,无nice命令,优先级数值为0
2)、nice sleep 200&后,ps -el | grep sleep抓取,优先级NI数值为10
3)、nice -N sleep 200&,即在默认值0基础上加N,ps -el | grep sleep抓取
4)、nice –N sleep 200&,仅管理员可在默认值0基础上加 -N,ps -el | grep sleep抓取
1.2、使用场景
在实际应用中,如果要运行一个CPU密集型程序,最好通过nice命令来启动它,这样可以保证其他进程获得更高的优先级,即使服务器或台式机在负载很重的情况下, 也可以快速响应。
1.3、测试实例
下面的测试代码,是一个完全抢占CPU的程序,直接启动或nice调整优先级后启动,使用top观测其CPU占有率,验证结论。因为笔记本电脑是四个CPU,需要拉起来至少五个进程,才可以看到效果。
/********************************************
*内容:模拟一个一直抢占CPU的进程,测试nice命令
*时间:2018.03.19
*问题:
**********************************************/#include<stdio.h>int main(void)
{
while(1);
return 0;}
二、renice命令
2.1、基本介绍
renice命令是与nice关联的一个命令,由re两个字母就知道可以重新调整进程执行的优先级,可以指定群组或者用户名调整优先级等级,并修改隶属于该群组或者用户的所有程序优先级。等级范围为[-20,19]。同样仅系统管理员可以拉高优先级。nice在进程拉起时调整,renice在进程执行时调整。
2.2、使用场景
一个紧急进程,需要更多CPU资源时,可以拉低之前运行进程的优先级。
2.3、测试实例
三、其他与进程优先级相关的系统调用
linux下与进程优先级相关的系统调用,均在/usr/src/linux-headers-4.4.0-31/include/linux,sched.h文件夹内。包括内容有:
nice()、设置进程的优先级
sched_setscheduler()设置进程调度策略
sched_getscheduler()获取进程调度策略 等等
参考资料:
1、linux man手册
2、公众号:Linux中国:《使用nice、cpulimit和cgroup限制cpu占用率》
纠错与建议
邮箱:db_hebut@163.com
Linux nice及renice命令使用相关推荐
- linux renice命令,Linux nice和renice命令教程(7个示例)
Linux nice和renice命令教程(7个示例) Linux命令行的威力可以从以下事实来衡量:您甚至可以使用命令行工具轻松调整进程的调度优先级. 是的,这是可能的,在本教程中,我们将讨论如何使用 ...
- Linux nice及renice命令使用-验证篇
本文转载自:https://blog.csdn.net/XD_hebuters/article/details/79619213 Linux nice及renice命令使用 引言: linux内核是一 ...
- Linux 中的 renice 命令详解及C/C++代码实现
Linux 中的 nice 命令有助于执行具有修改的调度优先级的程序/进程. 它启动具有用户定义的调度优先级的进程. 如果我们给一个进程更高的优先级,那么内核会为这个进程分配更多的 CPU 时间. 而 ...
- 在linux下nice用法,Linux下nice/renice命令小结
1. nice命令 内核根据进程的nice值决定进程需要多少处理器时间. nice值的取值范围是是: -20到20. 一个具有-20 的 nice 值的进程有很高的优先级. 一个 nice 值为 20 ...
- linux进程cpu资源分配命令nice,renice,taskset
http://www.51testing.com/html/07/n-222407.html 进程cpu资源分配就是指进程的优先权(priority).优先权高的进程有优先执行权利.配置进程优先权对多 ...
- linux renice命令,Linux操作系统的renice命令详解
Linux操作系统的基础知识并不是很难理解,熟悉掌握基础知识能更好的学习Linux.下面由学习啦小编为大家整理了Linux操作系统的知识点总结的相关知识,希望对大家有帮助! Linux操作系统的ren ...
- linux命令优先级设置,linux renice命令参数及用法详解(linux修改程序运行优先级命令)...
linux renice命令参数及用法详解(linux修改程序运行优先级命令) 发布时间:2012-07-21 12:45:32 作者:佚名 我要评论 renice指令可重新调整程序执行的优先 ...
- linux线程优先级和nice值,如何使用nice和renice命令设置Linux进程优先级
在本文中,我们将简要介绍内核调度程序 (也称为进程调度程序 )和进程优先级 ,这些主题超出了本指南的范围. 然后,我们将深入了解一些Linux进程管理 :了解如何运行具有修改优先级的程序或命令,还可以 ...
- linux进程资源分配命令,linux进程cpu资源分配命令nice,renice,taskset
进程cpu资源分配就是指进程的优先权(priority).优先权高的进程有优先执行权利.配置进程优先权对多任务环境的linux很有用,可以改善系统性能.还可以把进程运行到指定的CPU上,这样一来,把不 ...
最新文章
- 用动图讲解分布式 Raft
- python运行非常慢的解决-python执行太慢
- 【转】推荐计算机科学类的经典书籍 3
- 推荐阅读:变异检测到底应该用什么软件?
- Bootstrap手机网站开发案例
- 《信息检索》第8讲 毕业论文学习指导(资源及预习材料)
- Spring远程调用技术1-RMI
- java算法提高求最大值_藍橋杯 算法提高 求最大值
- RHEL/CentOS 6.x使用EPEL6与remi的yum源安装MySQL 5.5.x
- 华为高管揭秘公司不上市的原因;微信回应「花钱就能查到聊天记录」;马斯克删除「超苹果只要几个月」评论 | 极客头条...
- CMU 15-213 Introduction to Computer Systems学习笔记(7) Machine-Level Programming-Data
- ZYNQ图像处理(7)——sobel边缘检测
- 深入浅出的理解频谱泄露
- 【路径规划】FMM快速行进法船舶路径规划【含Matlab源码 2291期】
- QQ欢乐斗地主心得体会 (三):高倍场攻略
- 没解锁的一加手机刷Recovery的方法
- 计算机游戏制作零基础教程,一个人、零基础,一天内学会独立开发出电脑和手机游戏?视频教学...
- 多项式回归(PolynomialFeatures)
- Java web实习总结
- 揭开神奇数字“142857”隐藏着惊天秘密
热门文章
- Testing ovn manually based on LXD (by quqi99)
- 中兴通讯招聘测评答题技巧,真题解析(附真题)
- Vue3引入阿里巴巴矢量多彩图标库(下载至本地引入)
- Springboot整合Redis(RedisConfig等工具类编写)
- Stable Diffusion配置要求,显卡推荐
- linux nightshift调整,我为何放弃 Night Shift,重新拥抱 f.lux
- 欧拉版本登录vsftp服务报错530(Login incorrect)问题现象分析及解决
- .线性回归(Linear Regression)
- html 字段唯一性校验,使用ModelForm校验数据唯一性
- ISO26262功能安全 故障分类