top命令-查看各个进程系统资源占用情况 系统管理员 2022-03-17 02:54 590阅读 0赞 top 命令实时显示进程的状态。默认状态显示的是**cpu密集型**的进程,并且**每5秒钟更新一次。你可以通过PID**的数字大小,age (newest first), time (cumulative time),resident memory usage(常驻内存使用)以及进程从启动后占用cpu的时间。 top - 20:59:18 up 4 days, 4:47, 1 user, load average: 0.00, 0.00, 0.00 Tasks: 65 total, 2 running, 63 sleeping, 0 stopped, 0 zombie Cpu(s): 0.2%us, 0.1%sy, 0.0%ni, 99.6%id, 0.1%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 500472k total, 282756k used, 217716k free, 82496k buffers Swap: 0k total, 0k used, 0k free, 61052k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 975 root 20 0 756m 10m 8008 S 0.2 2.1 9:12.19 AliYunDun 991 root 20 0 768m 9320 7164 S 0.2 1.9 5:19.35 AliHids 842 root 20 0 463m 2588 1888 S 0.1 0.5 2:43.88 AliYunDunUpdate 1 root 20 0 19232 1512 1224 S 0.0 0.3 0:00.65 init 2 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kthreadd 3 root RT 0 0 0 0 S 0.0 0.0 0:00.00 migration/0 4 root 20 0 0 0 0 S 0.0 0.0 0:00.71 ksoftirqd/0 5 root RT 0 0 0 0 S 0.0 0.0 0:00.00 migration/0 6 root RT 0 0 0 0 S 0.0 0.0 0:00.55 watchdog/0 7 root 20 0 0 0 0 S 0.0 0.0 0:12.40 events/0 8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 cgroup 9 root 20 0 0 0 0 S 0.0 0.0 0:00.00 khelper 10 root 20 0 0 0 0 S 0.0 0.0 0:00.00 netns 11 root 20 0 0 0 0 S 0.0 0.0 0:00.00 async/mgr 12 root 20 0 0 0 0 S 0.0 0.0 0:00.00 pm 13 root 20 0 0 0 0 S 0.0 0.0 0:00.00 xenwatch 14 root 20 0 0 0 0 S 0.0 0.0 0:00.00 xenbus 15 root 20 0 0 0 0 S 0.0 0.0 0:01.22 sync_supers 16 root 20 0 0 0 0 S 0.0 0.0 0:01.14 bdi-default 17 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kintegrityd/0 18 root 20 0 0 0 0 S 0.0 0.0 0:00.18 kblockd/0 19 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kacpid 20 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kacpi_notify 21 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kacpi_hotplug 如果你想提高某个进程的优先级,可以通过`renice`命令,如果有摸个进程占用太多的cpu资源,可以通过`kill`命令。 * top 显示出现的每个列的含义分别为: > **PID:** 进程描述符 > **USER:** 进程的拥有者 > **PRI:**进程的优先级 > **NI:** nice level > **SIZE:** 进程拥有的内存(包括code segment + data segment + stack segment) > **RSS:** 物理内存使用 > **VIRT**(virtul memory usage): 进程需要的虚拟内存大小 > **RES**(resident memory usage): 常驻内存 > **SHARE**: 和其他进程共享的物理内存空间 > **STAT:进程的状态,有 S=sleeping,R=running,T=stopped or traced,D=interruptible sleep(不可中断的睡眠状态**),Z=zombie。 > **%CPU**: CPU使用率 > **%MEM**: 物理内存的使用 > **TIME:** 进程占用的总共cpu时间 > **COMMAND:**进程的命令 ## 常用的命令 ## (1) **t**: 用于是否显示总的统计数据,也就是下面这两行 Tasks: 65 total, 2 running, 63 sleeping, 0 stopped, 0 zombie Cpu(s): 0.2%us, 0.1%sy, 0.0%ni, 99.6%id, 0.1%wa, 0.0%hi, 0.0%si, 0.0%st (2)**m**:用户是否显示内存的信息,也就是下面这两行 Mem: 500472k total, 282756k used, 217716k free, 82496k buffers Swap: 0k total, 0k used, 0k free, 61052k cached (3)**A**: 根据单窗口切换成多窗口,可以看到四个不同的窗口,可以通过a或者w来切换多个窗口。 四个窗口的名字分别为:**Def,Job,Mem,Usr** (4)**f:**进入一个动态配置top的screen中,可以根据自己的喜好配置top (5)**o:**对top的现有配置排序(order) (6)**r:**使用renice命令 (7)**k:**使用kill命令 ## top的命令行使用方式 ## (1) 批量处理模式 $ top -b 加上`-b`后,top显示的时候,将每一次显示的结果都打印出来,不会将上一次的结果给冲掉。 (2) 显示某个进程的信息 $ top -p pid 如果是多个进程,只要如下: $ top -p pid1,pid2,pid3 (3) 显示某个用户的进程信息 $ top -u username (4) 显示线程的信息,而不是进程的信息 $ top -H (5) 设置刷屏的时间(单位为s) $ top -d ntime
还没有评论,来说两句吧...