linux管理之进程管理

:-}

linux服务器治理之进程管理[进程优先级]

Linux系统是一个多用户,多任务的操作系统,linux中同时运行这非常多的进程,但是cpu同一个时钟周期,只能运算一个指令。进程优先级决定了每个进程处理的先后顺序。

如何查看进程优先级

ps -le 命令打印系统进程:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
machuangdeMacBook-Pro:~ machuang$ ps -le
UID PID PPID F CPU PRI NI SZ RSS WCHAN S ADDR TTY TIME CMD
0 1 0 4004 0 37 0 4375272 15616 - Ss 0 ?? 0:08.51 /sbin/launchd
0 50 1 4004 0 4 0 4351128 1640 - Ss 0 ?? 0:00.50 /usr/sbin/syslog
0 51 1 4004 0 37 0 4383328 16944 - Ss 0 ?? 0:00.69 /usr/libexec/Use
0 54 1 4004 0 20 0 4341096 8404 - Ss 0 ?? 0:00.06 /System/Library/
0 55 1 4004 0 37 0 4387652 21496 - Ss 0 ?? 0:02.84 /usr/libexec/kex
0 56 1 1004004 0 50 0 4357408 10660 - Ss 0 ?? 0:00.91 /System/Library/
0 58 1 4004 0 4 0 4376372 18332 - Ss 0 ?? 0:00.11 /System/Library/
0 59 1 4004 0 20 0 4448588 12940 - Ss 0 ?? 0:00.14 /usr/local/opt/p
55 61 1 4004 0 4 0 4379836 10364 - Ss 0 ?? 0:00.31 /System/Library/
0 62 1 4004 0 4 0 4381992 14872 - Ss 0 ?? 0:00.37 /usr/sbin/system
0 64 1 400c 0 37 0 4382632 12472 - Ss 0 ?? 0:00.96 /usr/libexec/con
0 65 1 4004 0 37 0 4376736 10276 - Ss 0 ?? 0:00.88 /System/Library/
0 66 1 4004 0 20 0 4330896 4128 - Ss 0 ?? 0:00.02 nginx: master pr
0 70 1 4004 0 37 0 4429136 13136 - Ss 0 ?? 0:01.04 /usr/libexec/log

pri和ni都代表优先级,数字越小优先级越高。
pri :priority
Ni:nice

修改NI值注意事项

  • NI值的范围是-20到19;
  • 普通用户调整NI范围是0到19,而且只能调整自己的进程;
  • 普通用户只能调高NI值,而不能降低。则原本NI值等于0,则只能调整为大于0;
  • root用户才能设定进程NI为负值,而且可以调整所有用户的进程。
  • PRI(最终值) = PRI(原始值)+NI
  • 用户只能修改该NI的值,不能直接修改PRI

nice命令

Nice可以给新执行的命令直接赋予NI值,但是不能修改已存在进程的NI值
nice -n NI值 命令,例如:

nice -n -5 service httpd start

renice命令

renice命令修改已经存在进程的NI值,renice [优先级] PID
例如:
renice -10 2125

更多请关注我的看云:http://doc.martist.cn