Linux之进程管理

一、Linux的进程

1、在Linux中,每个执行的程序(代码)都称为一个进程。每个进程都分配一个ID号。

2、每个进程都会对应一个父进程,而这个父进程可以复制多个子进程。

3、每个进程都可能以两种方式存在:前台与后台,所谓前台进程就是用户目前的屏幕上可以进行操作的。后台进程则是实际在操作,但由于屏幕上无法看到但进程,通常使用后台方式执行。

4、一般系统但服务都是以后台进程但方式存在,而且都会常驻在系统中,知道关机才结束。

 

二、显示系统执行的进程

1、查看进程使用的指令是:ps ,一般来说使用的参数是 ps -aux 或者 ps -ef

1)ps aux 是用BSD的格式来显示、其格式如下:

    -a:显示当前终端的所有进程信息

    -u:以用户的格式显示进程信息

    -x:显示后台进程进行的参数

   

 

   USER:用户名称

   PID:进程号

   %CPU:进程占用CPU的百分比

   %MEM:进程占用物理内存的百分比

   VSZ:进程占用的虚拟内存大小(单位:KB)

   RSS:进程占用的物理内存大小(单位:KB)

   TTY:终端名称,缩写

   STAT:进程状态,其中

    S:表示睡眠,

    s:进程的领导者(在它之下有子进程)

    N:优先级较低的进程

    R:表示正在运行,

    D:无法中断的休眠状态(通常 IO 的进程)

    Z:僵死进程,

    T:被跟踪或者被停止等等。

   TIME:CPU时间,即进程使用CPU的总时间

 COMMAND:启动进程所用的命令和参数,如果过长会被截断显示。

2)ps -ef 是用标准的格式显示进程的、其格式如下:

  -e:显示所有进程

  -f:全格式

  

  UID:用户ID、但输出的是用户名 

  PID:进程的ID

  PPID:父进程ID 

  C:进程占用CPU的百分比,CPU用于计算执行优先级的因子,数值越大,表明进程是CPU密集型运算,执行优先级会降低,数值越小,表明进程是I/O密集型运算,执行优先级会提高。

  STIME:进程启动到现在的时间 

  TTY:该进程在那个终端上运行,若与终端无关,则显示? 若为pts/0等,则表示由网络连接主机进程

  CMD:命令的名称和参数

3)查看某个进程:如java

  ps -ef | grep java

 

三、终止进程 killkillall

1、基本语法:

  kill [选项] 进程号 :通过进程号杀死进程

  killall 进程名称 :通过进程名称杀死进程,也支持通配符,这在系统因负载过大而变得很慢时很有用。

2、常用选项:

  -9 :表示强制进程立即停止

3、案例:

  3.1、踢掉某个非法登录用户

     

      3.2、终止远程登录服务sshd,在适当时候再次重启 sshd 服务

  

四、查看进程树 pstree

1、语法:

 pstree [选项]  :可以更加直观地来看进程信息

2、常用选项:

  -p:显示进程的PID

  -u:显示进程的所属用户

3、案例:

  3.1 以树状的形式显示进程的pid

      

  3.2 以树状的形式显示进程的用户id

   

 

 

  

 

posted @ 2018-11-03 11:21  一江春水向东流^_^  阅读(254)  评论(0编辑  收藏  举报