服务器 频道

4.3 Linux进程管理命令详解(3)

  4.3  Linux进程管理命令详解(3)

  图4-8第二行代码中,USER表示启动进程用户。PID表示进程标志号。%CPU表示运行该进程占用CPU的时间与该进程总的运行时间的比例。%MEM表示该进程占用内存和总内存的比例。VSZ表示占用的虚拟内存大小,以KB为单位。RSS为进程占用的物理内存值,以KB为单位。TTY表示该进程建立时所对应的终端,"?"表示该进程不占用终端。STAT表示进程的运行状态,包括以下几种代码:D,不可中断的睡眠;R,就绪(在可运行队列中);S,睡眠;T,被跟踪或停止;Z,终止(僵死)的进程,Z不存在,但暂时无法消除;W,没有足够的内存分页可分配;<高优先序的进程;N,低优先序的进程;L,有内存分页分配并锁在内存体内(实时系统或I/O)。START为进程开始时间。TIME为执行的时间。COMMAND是对应的命令名。

    
  图4-8  ps-aux命令详解

  应用实例如下。

  在进行系统维护时,如果CPU负载突然增加,而又不知道是哪一个进程造成的情况。使用命令:

  #ps aux | sort +3n

  说明  因为%CPU选项在第三列,所以sort选3作为参数,+表示升序输出结果。

  8.pstree命令

  pstree命令列出当前的进程,以及它们的树状结构。

  格式:pstree [选项] [pid|user]

  主要选项如下。

  -a:显示执行程序的命令与完整参数。

  -c:取消同名程序,合并显示。

  -h:对输出结果进行处理,高亮显示正在执行的程序。

  -l:长格式显示。

  -n:以PID大小排序。

  -p:显示PID。

  -u:显示UID信息。

  -G:使用VT100终端编码显示。

  -U:使用UTF-8(Unicode)编码显示。

  说明:使用ps命令得到的数据精确,但数据庞大,这一点对掌握系统整体概况来说是不容易的。pstree正好可以弥补这个缺憾。它能将当前的执行程序以树状结构显示。pstree支持指定特定程序(PID)或使用者(USER)作为显示的起始。

  应用实例如下。

  进程启动的时候可能会产生自己的一个子进程。运行pstree命令就可以很容易地看到这些信息。以超级用户权限运行pstree:

  #init-+-apmd|-atd|-bdflush|-gconfd-2|-gdm-binary---gdm-binary-+-X|                         `-startkde-+-kwrapper|                                    `-ssh-agent|-gpm|-httpd---8*[httpd]……下略

  命令对程序名称相同的会自动合并,所有"|-httpd---8*[httpd]"即表示系统中有8个httpd进程产生的子进程。

  9.top命令显示进程

  top命令用来显示系统当前的进程状况。

  格式:top [选项]

  主要选项如下。

  d:指定更新的间隔,以秒计算。

  q:没有任何延迟的更新。如果使用者有超级用户,则top命令将会以最高的优先序执行。

  c:显示进程完整的路径与名称。

  S:累积模式,会将已完成或消失的子进程的CPU时间累积起来。

  s:安全模式。

  i:不显示任何闲置(Idle)或无用(Zombie)的进程。

  n:显示更新的次数,完成后将会退出top。

  说明:top命令和ps命令的基本作用是相同的,都显示系统当前的进程状况。但是top是一个动态显示过程,即可以通过用户按键来不断刷新当前状态。这里结合图4-9来说明它给出的信息。
    
  图4-9  top命令详解


  在图4-9中,第一行表示的项目依次为当前时间、系统启动时间、当前系统登录用户数目、平均负载。第二行显示的是所有启动的、目前运行的、挂起(Sleeping)的和无用(Zombie)的进程。第三行显示的是目前CPU的使用情况,包括系统占用的比例、用户使用比例、闲置(Idle)比例。第四行显示物理内存的使用情况,包括总的可以使用的内存、已用内存、空闲内存、缓冲区占用的内存。第五行显示交换分区的使用情况,包括总的交换分区、使用的、空闲的和用于高速缓存的交换分区。第六行显示的项目最多,下面列出了详细解释。

  PID(Process ID):进程标志号,是非零正整数。USER:进程所有者的用户名。PR:进程的优先级别。NI:进程的优先级别数值。VIRT:进程占用的虚拟内存值。RES:进程占用的物理内存值。SHR:进程使用的共享内存值。STAT:进程的状态,其中S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值是负数。%CPU:该进程占用的CPU使用率。%MEM:该进程占用的物理内存和总内存的百分比。TIME:该进程启动后占用的总的CPU时间。COMMAND:进程启动的启动命令名称,如果这一行显示不下,进程会有一个完整的命令行。top命令使用过程中,还可以使用一些交互的命令来完成其他参数的功能。这些命令是通过快捷键启动的。

  <空格>:立刻刷新。

  P:根据CPU使用大小进行排序。

  T:根据时间、累计时间排序。

  q:退出top命令。

  m:切换显示内存信息。

  t:切换显示进程和CPU状态信息。

  c:切换显示命令名称和完整命令行。

  M:根据使用内存大小进行排序。

  W:将当前设置写入~/.toprc文件中。这是写top配置文件的推荐方法。

  可以看到,top命令是一个功能十分强大的监控系统的工具,对于系统管理员而言尤其重要。但是,它的缺点是会消耗很多系统资源。

0
相关文章