linux renice命令参数及用法详解(linux修改程序运行优先级命令)

发布时间:2012-07-21 12:45:32   作者:佚名   我要评论

renice指令可重新调整程序执行的优先权等级。预设是以程序识别码指定程序调整其优先权,您亦可以指定程序群组或用户名称调整优先权等级,并修改所有隶属于该程序群组或用户的程序的优先权

linux renice 命令详解  功能说明:调整程序优先级。

语  法:renice [优先等级][-g ...][-p ...][-u ...]

补充说明:renice指令可重新调整程序执行的优先权等级。预设是以程序识别码指定程序调整其优先权,您亦可以指定程序群组或用户名称调整优先权等级,并修改所有隶属于该程序群组或用户的程序的优先权。等级范围从-20--19,只有系统管理者可以改变其他用户程序的优先权,也仅有系统管理者可以设置负数等级。

参  数:

-g  使用程序群组名称,修改所有隶属于该程序群组的程序的优先权。

-p  改变该程序的优先权等级,此参数为预设值。

-u  指定用户名称,修改所有隶属于该用户的程序的优先权。

linux安全网 www.jb51.net 收集整理

一开始执行程式就立即给予一个特定的 nice 值:用 nice 命令;

调整某个已经存在的 PID 的 nice 值:用 renice 命令。

推荐阅读一:linux进程cpu资源分配命令nice,renice,taskset

进程cpu资源分配就是指进程的优先权(priority)。优先权高的进程有优先执行权利。配置进程优先权对多任务环境的linux很有用,可以改善系统性能。还可以把进程运行到指定的CPU上,这样一来,把不重要的进程安排到某个CPU,可以大大改善系统整体性能。

一、先看系统进程:PR 就是 Priority 的简写,而 NI 是 nice 的简写。这两个值决定了PR的值,PR越小,进程优先权就越高,就越“优先执行”。换算公式为:PR(new) = PR(old) + NI

---------------------------------------------------------------------------

二、修改进程优先级的命令主要有两个:nice,renice

1、一开始执行程序就指定nice值:nice

Java代码

nice -n -5 /usr/local/mysql/bin/mysqld_safe &

linux nice 命令详解

功能说明:设置优先权。

语  法:nice [-n ][--help][--version][执行指令]

补充说明:nice指令可以改变程序执行的优先权等级。

参  数:-n或-或--adjustment=  设置欲执行的指令的优先权等级。等级的范围从-20-19,其中-20最高,19最低,只有系统管理者可以设置负数的等级。

--help  在线帮助。

--version  显示版本信息。

---------------------------------------------------------------------------

2.1、调整已存在进程的nice:renice

Java代码

renice -5 -p 5200

#PID为5200的进程nice设为-5

linux renice 命令详解

功能说明:调整优先权。

语  法:renice [优先等级][-g ...][-p ...][-u ...]

补充说明:renice指令可重新调整程序执行的优先权等级。预设是以程序识别码指定程序调整其优先权,您亦可以指定程序群组或用户名称调整优先权等级,并修改所有隶属于该程序群组或用户的程序的优先权。等级范围从-20--19,只有系统管理者可以改变其他用户程序的优先权,也仅有系统管理者可以设置负数等级。

参  数:

-g  使用程序群组名称,修改所有隶属于该程序群组的程序的优先权。

-p  改变该程序的优先权等级,此参数为预设值。

-u  指定用户名称,修改所有隶属于该用户的程序的优先权。

2.2、也可以用top命令更改已存在进程的nice:

Java代码

top

#进入top后按"r"-->输入进程PID-->输入nice值

三、把进程运行到指定CPU(即修改进程的"CPU亲和性"):taskset

两个名词

SMP (Symmetrical Multi-Processing):指在一个计算机上汇集了一组处理器(多CPU),各CPU之间共享内存子系统以及总线结构。

CPU affinity:中文唤作“CPU亲和性”,是指在CMP架构下,能够将一个或多个进程绑定到一个或多个处理器上运行。

请先确定你的cpu核心及命名(例如四个核心:0,1,2,3):cat /proc/cpuinfo

Java代码

taskset -cp 1 5200

#把PID为5200的进程运行到CPU#1上

#也可以在启动进程时指定:

taskset -c 1 /etc/init.d/mysql start

推荐阅读二 关于程序的执行顺序nice renice

关于程序的执行顺序:

还记得我们提过的多人多工环境吧?因为目前的 x86 平台的 CPU 可以做到多工的行为, 所以啰,我们的 Linux 可以在 x86 上面‘同时进行多个工作’的呢!那么多个工作是如何进行的呢? 其实每个工作都会进入到 CPU 的工作排程当中,并等待 CPU 来执行, 而 CPU 会根据每个工作的优先执行序 (priority) 来判断谁比较重要, 所以某个工作就可能会比较优先被执行完毕啦!

也就是说, Linux 系统中,每个 process 都会拥有一个所谓的‘优先执行序 (priority)’的属性, 利用该属性来让 CPU 判断那个工作是比较重要的,那个工作在一群工作当中就会优先被执行, 也让系统资源可以分配的更恰当。我们可以使用 ps 还观察优先执行序:

[root@linux ~]# ps -l

F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD

0 S 0 18851 18827 0 77 0 - 1302 wait pts/0 00:00:00 su

4 S 0 18852 18851 0 76 0 - 1349 wait pts/0 00:00:00 bash

4 R 0 19510 18852 0 76 0 - 1111 - pts/0 00:00:00 ps

其中,那个 PRI 就是 Priority 的简写,而 NI 是 nice 的简写,这两个东西是凑在一起才产生目前的 PRI 值的! PRI 越小时,代表该程序可以具有‘越早被优先执行’的意思,只是 PRI 是由系统动态产生的, 并不会是一直固定的值喔。至于那个 NI (nice) 则是我们操作值额外给予的一个数值, 他可以影响 PRI 的值,基本上,他的相关性是这样的:

* PRI(new) = PRI(old) + nice

不过您要特别留意到,如果原本的 PRI 是 50 ,并不是我们给予一个 nice = 5 ,就会让 PRI 变成 55 喔! 因为 PRI 是系统‘动态’决定的,所以,虽然 nice 值是可以影响 PRI ,不过, 最终的 PRI 仍是要经过系统分析后才会决定的。另外, nice 值是有正负的喔,而既然 PRI 越小越早被执行, 所以,当 nice 值为负值时,那么该程序就会降低 PRI 值,亦即会变的较优先被处理。此外,您必须要留意到:

相关文章

deepin20怎么使用画板打开图片?deepin20系统想要打开图片,该怎么使用画板打开图片呢?下面我们就来看看deepin画板打开图片的两种方法,需要的朋友可以参考下2020-10-03

deepin20默认浏览器怎么设置?eepin20系统想要设置默认浏览器,该怎么设置呢?下面我们就来看看deepin添加默认浏览器的技巧,需要的朋友可以参考下2020-10-03

deepin系统怎么设置屏幕分辨率?deepin系统不是很清晰,想要设置分辨率,该怎么设置分辨率呢?下面我们就来看看deepin分辨率的设置方法,需要的朋友可以参考下2020-09-29

deepin20系统字体怎么设置?deepin20系统字体太小,想要设置大一些,该怎么调整字体的大小呢?下面我们就来看看deepin终端字体大小的设置方法,需要的朋友可以参考下2020-09-27

鼠标怎么设置为左手?deepin20系统中,默认鼠标是右手模式,但是用习惯了左手,想要设置为左手模式,该怎么操作呢?下面我们就来看看deepin20左手鼠标设置方法,需要的朋友2020-09-25

cpu主频怎么看?想要查看cpu主频,在windows系统下很方便查看,那么deepin20系统该怎么操作呢?我们今天就来介绍两种deepin20查看CPU主频的技巧,需要的朋友可以参考下2020-09-24

deepin20网关地址怎么设置?deepin20系统想要设置网关地址,该怎么设置呢?下面我们就来看看deepin网关地址的修改方法,需要的朋友可以参考下2020-09-23

deepin20怎么设置图标的排列方式?deepin20中想要设置图标的显示方式,有列表视图和图标视图,该怎么设置为图标视图呢?下面我们就来看看deepin图标视图设置方法,需要的朋2020-09-23

deepin20窗口最小化魔灯效果怎么设置?deepin20系统窗口最小化是有一些特效的,想要添加魔灯效果,该怎么实现呢?下面我们就来看看详细的教程,需要的朋友可以参考下2020-09-22

deepin20任务栏透明度怎么设置?电脑任务栏透明度是可以调节的,该怎么调节呢?下面我们就来看看deepin调整任务栏透明度的技巧,需要的朋友可以参考下2020-09-21

最新评论

linux命令优先级设置,linux renice命令参数及用法详解(linux修改程序运行优先级命令)...相关推荐

  1. linux 的中断 命令,linux skill命令参数及用法详解(linux中断进程执行命令)

    linux skill命令参数及用法详解(linux中断进程执行命令) 发布时间:2012-07-21 12:09:37   作者:佚名   我要评论 linux 冻结进程命令 skill 使用详解 ...

  2. linux useradd(adduser)命令参数及用法详解(linux创建新用户命令)

    linux useradd(adduser)命令参数及用法详解(linux创建新用户命令) useradd可用来建立用户帐号.帐号建好之后,再用passwd设定帐号的密码.而可用userdel删除帐号 ...

  3. linux中的su-命令的功能,linux su命令参数及用法详解(linux切换用户命令)

    linux su命令参数及用法详解(linux切换用户命令) 发布时间:2012-07-21 12:12:39   作者:佚名   我要评论 su的作用是变更为其它使用者的身份,超级用户除外,需要键入 ...

  4. linux中whoami命令的作用是,linux whoami命令参数及用法详解(linux查看登陆用户名)

    linux whoami命令参数及用法详解(linux查看登陆用户名) 2019年05月31日 | 萬仟网科技 | 我要评论 whoami 命令显示登录名.与使用命令 who 并指定 am i 不同, ...

  5. linux 内存 参数,linux free命令参数及用法详解(linux查看内存命令)

    linux free命令参数及用法详解(linux查看内存命令) 2019年05月31日 | 萬仟网科技 | 我要评论 free指令会显示内存的使用情况,包括实体内存,虚拟的交换文件内存,共享内存区段 ...

  6. 【linux】——linux ls命令参数及用法详解---linux显示目录内容命令

    linux系统中ls命令的用法详解 ls命令是linux下最常用的命令.ls命令就是list的缩写,缺省下ls用来打印出当前目录的清单,如果ls指定其他目录,那么就会显示指定目录里的文件及文件夹清单. ...

  7. linux rm命令参数及用法详解---linux删除文件或目录命令

    http://www.linuxso.com/command/rm.html linux下rm命令使用详解---linux删除文件或目录命令 用户可以用rm命令删除不需要的文件.该命令的功能为删除一个 ...

  8. 树莓派hwclock命令参数及用法详解--linux显示/设置硬件时钟命令

    功能说明:显示与设定硬件时钟. 语 法:hwclock [--adjust][--debug][--directisa][--hctosys][--show][--systohc][--test] [ ...

  9. linux ifconfig命令参数及用法详解--linux查看配置网卡命令

    ifconfig 是一个用来查看.配置.启用或禁用网络接口的工具,这个工具极为常用的.可以用这个工具来临时性的配置网卡的IP地址.掩码.广播地址.网关等.也可以把 它写入一个文件中(比如/etc/rc ...

最新文章

  1. sdwan架构怎么搭建?
  2. 孔子、老子、墨子,春秋时期的三位人杰,谁更厉害?
  3. c++ 反射_Java代码审计基础之反射
  4. vmware ubuntu重置root密码
  5. 零基础带你学习MySQL—MySQL常用的数据类型(列类型)(五)
  6. Redis之Redis事务
  7. java进行语法解析时已到达文件结尾_java进行语法解析时已到达文件结尾?
  8. OpenGL纹理操作--glGenTextures
  9. 安卓系统源码、内核下载
  10. 飞思卡尔16位单片机(一)——飞思卡尔单片机简介
  11. Linux系统录制gif动画
  12. ICM40607 六轴传感器简介和配置
  13. 信息安全概论课堂笔记
  14. 今天收到一封非常牛B的离职信
  15. 详解vue中数据传递(父传子、子传父、兄弟之间以及vuex)代码附上
  16. 详解c语言欧拉函数,【基础数论】十分钟学会计算欧拉函数
  17. Android:EditText 设置弹出数字输入法键盘
  18. java源码系列:HashMap底层存储原理详解——5、技术本质-原理过程-算法-取模会带来一个什么问题?什么是哈希冲突?为什么要用链表?
  19. SpringBoot电商项目前后端界面搭建
  20. zto中通电子面单cpcl打印指令实例

热门文章

  1. c语言static的作用
  2. RK3399在android12中三屏显示及声音调试
  3. 一维波动方程求解matlab,MATLAB编辑一维波动方程的模拟的程序
  4. 一个人最重要的投资就是投资自己
  5. stm32f103c8t6单片机使用st-link/v2仿真器烧录程序的过程
  6. 车路协同全域感知与数据融合
  7. 计算机专业班级口号霸气顺口,史上最牛班级口号
  8. css-loader 版本号,Webpack中css-loader和less-loader的使用教程
  9. js将图片上传服务器文件夹下,Egg.js 实现向服务器上传图片
  10. Java市场调研_Java开源电商系统的市场调研怎么做