Linux进程管理

进程管理:
   /proc目录下的数字目录是进程号
    cd /proc/1---->cat cmdline(发起进程的命令,init是1号进程,所有进程都是init的子进程)
  命令:    
   ps:Process State
    SysV风格
    
       a:所有跟终端有关的进程
    u:发起进程的用户
    x:所有跟终端无关的进程
  如:ps a;ps ax;ps aux;
   进程状态:
    D:不可中断的进程
    R:运行或就绪
    S:可中断的睡眠
    T:停止
    Z:僵死
    
    <:高优先级进程
    N:低优先级进程
    +:前台进程组中的进程
    l:多线程
    s:多会话进程首进程
   BSD风格
   -e :所有进程(显示)
   -l:长格式显示信息
   -F:详细信息
   -f:可读格式(比F信息少一点)
   组合使用:-ef,-elf
   -o:指定字段
   如:ps -o PROPERTY1,PROPERTY2,...
  pstree:显示进程树
  pgrep:根据模式显示进程
  如:pgrep -u root sshd
  pidof:根据进程名查找进程id号
   pidof init
   pidof sshd
  top:监控系统进程(不停刷新5s)
   M:根据驻留内存大小进行排序
   P:根据CPU使用百分比进行排序(默认cup排序)
   T:根据累计时间进行排序
   
   l:是否显示平均负载和启动时间
   t:是否显示进行和CPU状态相关的信息
   m:是否显示内存相关的信息
   
   c:是否显示完整的命令行信息
   q:退出top
   k:终止某个进程
   -d:修改刷新时长
   -b:批模式(翻屏刷新)
   -n:指定刷多少屏(-n 3:刷三屏)
进程间通信(IPC:Inter Process Communication)
  共享内存
  信号:Signal
  Semaphore
  
 kill -l 查看信号 
重要的信号:
 1.SIGHUP:让一个进程不用重启,就可以重读其配置文件,并让新的配置信息生效;
 2.SIGINT:Ctrl+c,中断一个进程
 9.SIGKILL:杀死一个进程(强制杀死进程)
 15.SIGTERM:终止一个进程(通知其他进程或任务,要终止进程)
 
 指定一个信号:
  信号号码:kill -NUMBER
  信号名称:kill -SIGKILL
  信号名称简写:kill -KILL
  
  kill:
   kill 进程号(默认15信号)
  killall COMMAND(进程名) 杀死所有进程名的进程
 
 renice:调整nice值
  renice NICE PID
  renice -n NICE COMMAND
   
 前台作业:占据了命令提示符
 后台作业:启动之后,释放命令提示符,后续的操作在后台完成
 
 前台-->后台
  Ctrl+z:把正在前台的作业送往后台
  COMMAND &:让命令在后台执行
  
  jobs:查看后台的所有作业
   作业号,不同于进程号
    +:命令将默认操作的作业
    -:命令将第二默认操作的作业
    
  bg:让后台的停止作业继续运行
   bg [%JOBID](省略默认找带+的job)
  
  fg:将后台的作业调回前台
   fg [%JOBID]
  注意:%表示作业,bg,fg操作作业的,可以省略%
  
  kill %JOBID:终止某作业(kill是杀死进程的,所以必须有%)
 vmstat:系统状态查看命令
  vmstat NUMBER:个NUMBER秒刷新一次
  vmstat NUMBER1 NUMBER2:隔NUMBER1秒刷新一次,一共刷新NUMBER2次
 uptime:查看系统进程信息,跟top第一行信息一样
 
 /proc/meminfo:存储内存信息的文件
   
 进程的分类:
  跟终端相关的进程:命令行输入的进程
  跟终端无关的进程:系统启动的进程
  
  
  
  
  
 netstat命令:
  -r:显示路由表
  -n:以数字方式显示
 
  -t:建立tcp连接
  -u:显示udp连接
  -l:显示监听状态的连接
  -p:显示监听的套接字的进程的进程与及进程名

posted @ 2016-04-05 20:47  Runny_Hao  阅读(54)  评论(0)    收藏  举报