ps和pstree
By admin
- One minute read - 87 wordsps和pstree是用于系统分析的基本命令。ps有3中不同风格的命令选项,UNIX风格、BSD风格和GNU风格。这里我们只介绍UNIX风格选项。
ps命令可以显示当前运行的进程列表。top命令也可以显示进程信息,但ps可以提供更加详细的内容。使用相应选项可以影响进程显示的数量。ps -A命令可以列出所有进程及其相应的进程ID(PID),当我们使用如pmap或renice等工具时会用到此PID。
当系统运行java应用时,ps -A产生的输出结果很容易填满整个显示区域,这导致很难得到所有运行中进程的完整视图。在这种情况下,pstree命令就派上用场了,它使用树状显示所有运行中的进程并合并所有的子进程(例如java线程),pstree命令有助于确认原始进程。还有另一个ps变种pgrep也非常有用。
例子2-4:ps输出示例
下面我们来了解一些常用的选项
-e :所有进程。等同于-A
-l :显示长格式
-F :附加全格式
-H :显示进程的层次结构
-L :显示线程,可能出现LWP和NLWP栏位
-m :在进程后显示线程
下面的命令演示输出进程的详细信息:
ps -elFL
例子2-5:输出进程详细信息示例
输出栏位说明:
F :进程标志 S :进程状态。S=sleeping,R=running,T=stopped/traced,D=interruptable sleep,Z=zombie。参见1.1.7“进程状态”中关于这些状态的介绍。 UID :进程所有者(可能是启动者)用户名 PID :进程ID PPID :父进程ID LWP :LWP(轻量级进程【light weight process】,也称作线程)ID C :处理器使用率百分比 NLWP :进程中lwp(线程)的数量。(别名thcount) PRI :进程的优先级。(参看1.1.4“进程优先级和Nice值”) NI :Nice值(whether the process tries to be nice by adjusting the priority by the number given; see below for details) ADDR :进程地址空间(不显示) SZ :进程所有内存(code+data+stack)总数,单位为KB。 WCHAN :内核功能名称,如果进程正在运行中 RSS :常驻集大小,任务所使用的非交换物理内存(KB) PSR :当前执行进程的处理器 STIME :开始时间 TTY :终端名称 TIME :进程所用的CPU时间总数(自从启动) CMD :启动任务的命令行(包括参数)
线程信息
你可以使用ps -L查看线程信息。例子2-6:使用ps -L查看线程信息