Solaris 上 TOP 命令的 STATE 列是什么?

Solaris 上 TOP 命令的 STATE 列是什么?

我正在新的 UNIX 服务器上运行一个非常大的内存密集型程序,并试图完全理解“top”命令的输出。这是我现在看到的(仅显示第一个过程):

load averages:  1.51,  1.48,  1.45;               up 59+12:23:36                              08:57:47
194 processes: 191 sleeping, 1 zombie, 2 on cpu
CPU states: 99.5% idle,  0.4% user,  0.1% kernel,  0.0% iowait,  0.0% swap
Kernel: 2045 ctxsw, 73 trap, 2891 intr, 1797 syscall, 23 flt, 48 pgout
Memory: 256G phys mem, 214G free mem, 22G total swap, 22G free swap

   PID USERNAME LWP PRI NICE  SIZE   RES STATE    TIME    CPU COMMAND
 15382 bd9439    22   1    4 7799M 7787M cpu/147  21.9H  0.39% sas

“cpu”后面的“STATE”列中的数字(在本例中为 147)有何含义?页面man只说:

 STATE
      Current state (typically one of "sleep", "run",  "idl",
      "zomb", or "stop").

这是运行 Solaris 10 的新 Oracle T4-4 服务器,尚未投入“生产”,这意味着这是目前唯一正在运行的服务器。

Solaris 10 和顶级版本 3.7:

bd9439@bsprd697 $ uname -a
SunOS bsprd697 5.10 Generic_148888-01 sun4v sparc sun4v
bd9439@bsprd697 $ top --version
top: version 3.7

答案1

状态= 进程的状态(取自prstat命令手册页):

  • cpuN - 进程正在 CPU N 上运行。

  • sleep - 睡眠:进程正在等待事件完成。

  • wait -等待:进程正在等待 CPU 使用率降至 CPU-caps 强制限制。请参阅resource_controls(5) 中CPU 上限的描述。

  • run - 可运行:运行队列中的进程。

  • 僵尸 - 僵尸状态:进程终止且父进程不等待。

  • 停止 - 进程停止。

答案2

该数字指的是进程正在运行的逻辑 CPU 的 ID#。

参考

相关内容