linux进程管理

 linux多用户多任务

多个用户可以在同一时间使用计算机,liunx可以同时执行多个任务,可以在还未执行完一个任务时又执行另一项任务,linux上所有运行的程序都可以称之为进程,linux用分时管理的方法使所有的任务共同分享系统资源.
 
ps 进程查看命令
ps -e 显示所有进程ps
ps -r 只显示正在运行的进程
ps -l 给出长列表
ps -a 显示终端上的所有进程
ps -f 全格式
ps -a 显示终端上的所有进程
ps -x 显示没有控制终端的进程
ps -j 按作业格式输出
ps -v 按虚拟存储器格式显示输出
ps -m 显示存储器信息
ps -S 增加子cpu时间和页面出错
ps -w 用宽格式显示,不截取命令行
ps -aux 
ps -auxf |grep httpd 查看会有什么结果
 
 
 
 
ps命令输出字段的含义
user 进程所有者用户名
PID进程号
%cpu 进程最近一次刷新以来所占用的cpu时间和总时间的百分比
%MEM 进程使用内存的百分比
VSZ 进程使用虚拟内存大小以K为单位
RSS 驻留空间的大小,显示当前常驻内存的程序的K字节数
TTY 进程先关的终端
STAT 进程的状态
   (R:可执行的,S:睡眠状态,D:不间断睡眠,T:停止或跟踪,Z:僵尸进程,W:进程没有驻留页,I:空闲
TIME进程使用的总cpu时间
command 被执行的命令行
NI 进程的优先级值,较小的数字意味着占用较少的CPU时间
PRI 进程优先级
ppid 父进程ID
wchan 进程等待的内核事件名
 
上面知道了进程的相关信息那么怎么对进程进行控制呢
常用手段之一
阻止前台进程 ctrl+c
阻止后台进程 kill
强制终止进程 Kill -9 324 
         kill -SIGKILL xxx (XXX为进程标识号)
使用命令回收内存
kill -9 xxx(xxx为无用的进程标识号)
接下来 free
 
killall -HUP inetd
 
进程睡眠
sleep 可以使当前正在执行的进程在规定的时间内处于睡眠状态
sleep time (time 时间以s为单位)
 
前台和后台进程
& 在命令后面加上一个&表示该命令在后台执行
jobs 该命令可以查看当前有多少在后台运行的命令,若未指定jobsid,则显示所有活动的任务状态信息
在这里讲一个概念:当前任务 
  如果后台的任务号有2个,[1],[2];如果当第一个后台任务顺利执行完毕,第二个后台任务还在执行中时,当前任务便会自动变成后台任务号码“[2]”的后台任务。所以可以得出一点,即当前任务是会变动的。当用户输入“fg”、“bg”和“stop”等命令时,如果不加任何引号,则所变动的均是当前任务
 
fg :将后台命令调到前台来执行 fg %n
N为 是jobs 看到的jobnumber。

ctrl+z 表示将一个正在前台执行的命令放在后台,并且暂停

bg命令 在后台暂停运行的进程变成继续在后台运行的进程 bg %n

结束前台进程
这种只需要按下组合键: ctrl + c 即可。
 
pstree -up |less 以树状的结构显示进程 up (uid,pid)
调整已经存在的进程
renice -5-p5200 pid为5200的进程nice设为5
-g <程序群组名称>  
-p <程序识别码>
-u <用户名称>
top
#进入top后按“r”–>输入进程PID–>输入nice值
 
 
nice -n -5 /usr/local/mysql/bin/mysqld_safe &
 
linux nice 命令详解

功能说明:设置优先权。

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

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

若不输入 nice 值,则进程以值 +10 开始。
默认值 0 被视为中间值。您可以使用 -20 到 19 之间的数值来指派 nice 级别。
nice 级别的值越低,进程的优先级越高。nice 级别为 -20 的进程以最高优先级运行;nice 级别为 19 的进程以最低优先级运行
只允许根用户以负的 nice 值启动进程(如 nice -n -3 sleep 99)。
 

你可能感兴趣的:(linux进程管理)