此页内容

进程相关

Memory

610字约2分钟

2024-04-29

查看进程

ps命令

# `-e` 显示全部进程, `-f` 显示进程完整信息
ps -ef

# 一般配合 管道符 `|` 以及 `grep` 命令使用
ps -ef | grep java

运行此命令后,会出现以下几列信息:

  1. UID: 用户ID,即运行该进程的用户。
  2. PID: 进程ID,唯一标识一个进程。
  3. PPID: 父进程ID,标识创建该进程的进程。
  4. C: CPU使用率,表示该进程最近使用的CPU时间百分比。
  5. STIME: 进程启动时的开始时间。
  6. TTY: 进程关联的终端类型。如果与终端无关,则显示 ?。
  7. TIME: 进程使用的总CPU时间。
  8. CMD: 启动进程的命令行。

top命令

top

运行此命令后,会出现以下几列信息,且会每隔几秒刷新一次:

  1. PID:进程标识符(Process ID),是系统为每个进程分配的唯一数字标识。
  2. USER:运行该进程的用户名。
  3. PR:优先级(Priority),进程的调度优先级。数值越小,优先级越高。
  4. NI:nice 值,一个用于调整进程优先级的数值。正值表示较低的优先级,负值表示较高的优先级。
  5. VIRT:虚拟内存大小,进程使用的总虚拟内存量,包括已使用的和未使用的。
  6. RES:常驻集大小(Resident Set Size),进程当前使用的、未被交换出的物理内存大小。
  7. SHR:共享内存大小,表示进程与其他进程共享的物理内存量。
  8. S:进程状态(Status)。常见的状态有:
    • R(running 或 runnable):正在运行或在运行队列中等待运行。
    • S(sleeping):休眠状态,等待某个条件成立。
    • Z(zombie):僵尸状态,进程已结束但父进程尚未回收其资源。
    • T(stopped or traced):停止状态,通常由于接收到信号而被停止。
    • D(disk sleep):不可中断的睡眠状态,通常是在进行 I/O 操作时。
  9. %CPU:上次更新到现在的 CPU 时间占用百分比。
  10. %MEM:进程使用的物理内存百分比。
  11. TIME+:CPU 时间,进程总共占用的 CPU 时间,单位通常是分钟:秒。
  12. COMMAND:启动进程的命令行名称或命令行。

关闭进程

# 正常关闭
kill <PID>

# 强制关闭
kill -9 <PID>