(4)top详解 (每周一个linux命令系列)

(4)top详解 (每周一个linux命令系列)

linux命令 lscpu详解

引言:今天的命令是用来看cpu信息的lscpu

top

我们先看man top

top - display Linux processes

翻译:显示linux进程信息

具体的描述如下:

The top program provides a dynamic real-time view of a running sys‐ tem. It can display system summary information as well as a list of processes or threads currently being managed by the Linux kernel. The types of system summary information shown and the types, order and size of information displayed for processes are all user config‐ urable and that configuration can be made persistent across restarts. The program provides a limited interactive interface for process manipulation as well as a much more extensive interface for personal configuration -- encompassing every aspect of its operation. And while top is referred to throughout this document, you are free to name the program anything you wish. That new name, possibly an alias, will then be reflected on top's display and used when reading and writing a configuration file.

翻译如下:
top命令提供一个运行中系统的动态实时视图,它可以显示系统摘要信息以及由linux内核管理的的进程或线程的列表。系统概要信息的类型被显示出来,类型、顺序为进程显示的信息大小都是用户配置的。可以通过重新启动使配置持久化。

该程序为进程操作提供有限的交互式界面。并为个人配置提供了更广泛的接口 - 涵盖了其操作的各个方面。 虽然本文档中提到了top,但你可以随意命名该程序。 该新名称(可能是别名)将反映在top的显示界面上,并在读取和写入配置文件时使用。

我们再来看一下命令执行结果

top - 17:00:43 up 12 days, 1:13, 3 users, load average: 6.27, 3.04, 2.31 Tasks: 444 total, 3 running, 441 sleeping, 0 stopped, 0 zombie %Cpu(s): 19.0 us, 4.7 sy, 0.0 ni, 75.1 id, 1.1 wa, 0.0 hi, 0.2 si, 0.0 KiB Mem : 16131568 total, 926512 free, 8862288 used, 6342768 buff/cache KiB Swap: 8191996 total, 8191900 free, 96 used. 5994096 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 5297 nobody 20 0 283588 20388 5372 R 9.3 0.1 9:25.75 php-fpm 23312 nobody 20 0 372584 21660 6272 S 9.3 0.1 14:31.92 php-fpm 23325 nobody 20 0 353288 13676 4916 R 9.3 0.1 14:55.50 php-fpm ......

可以看到,top命令同时返回了一些uptime命令中返回的系统信息,这里不再赘述。
第二行是系统作业数量(Tasks)

- total 进程总数 - running 正在运行的进程数 - sleeping 休眠的进程数 - stopped 停止的进程数 - zombie 僵尸进程数 (没有被子进程先于父进程结束却没有被回收,不占用内存等资源,但在进程表中有记录)

第三行是cpu使用情况(%Cpu(s))

- us, user: 运行未调整优先级的用户进程的CPU百分比 - sy,system: 运行内核进程的CPU百分比 - ni,niced: 运行已调整优先级的用户进程的CPU百分比 - id 空闲cpu百分比 - wa,IO wait: 用于等待IO完成的CPU时间 - hi 硬件中断(Hardware IRQ)占用CPU的百分比 - si 软件中断(Software Interrupts)占用CPU的百分比 - st,Steal time 如果当前处于一个hypervisor下的vm,被vm偷走(Steal)的时间,虚拟 CPU 等待实际 CPU 的时间的百分比。

接下来的命令有点像是我们之前发的free

Mem: - total 物理内存总量 - used 使用中的物理内存总量 - free 空闲内存总量 - buffers 用作内核缓存的内存量 Swap: - total 交换区总量 - used 使用中的交换区总量 - free 空闲交换区总量 - cached 缓冲的交换区总量。

在说交互和列含义之前,先大概说一下,top命令的交互并不是通过以前 ‘ 命令 <选项> ’的形式 而是在出现top视图后,按键盘上的键进行操作。

交互和选项 选项

top [-] [d] [p] [q] [c] [S] [s] [i] [n] [u]
使用说明

-d delay 指定每两次屏幕信息刷新之间的时间间隔。交互命令s交互命令来改变之。 -p 通过指定监控进程ID来仅仅监控某个进程的状态。 -q 该选项将使top没有任何延迟的进行刷新。如果调用程序有超级用户权限,那么top将以尽可能高的优先级运行。 -c 显示整个命令行而不只是显示命令名 -S 指定累计模式 和交互命令中的S同 -s 使top命令在安全模式中运行。这将去除交互命令所带来的潜在危险。 -i 使top不显示任何闲置或者僵死进程。 -n <次数>:循环显示的次数。 -u <用户名>:指定用户名; 交互命令 h或?:显示帮助画面,给出一些简短的命令总结说明; k:终止一个进程 按键后会提示:PID to signal/kill [default pid = xxx] 让你输入pid; i:忽略闲置和僵死进程,这是一个开关式命令; q:退出程序; r:重新安排一个进程的优先级别 也会有提示:PID to renice [default pid = xxx] 输入pid后提示:Renice PID 28851 to value;输入正数降低优先级,负数增加优先级 S:切换到累计模式; s:改变两次刷新之间的延迟时间(单位为s),如果有小数,就换算成ms。输入0值则系统将不断刷新,默认值是3s; f/F:从当前显示中添加或者删除列属性,进入后有操作说明; o/O:改变显示项目的顺序; l:切换显示平均负载和启动时间信息; m:切换显示内存信息; t:切换显示进程和CPU状态信息; c:切换显示命令名称和完整命令; M:根据驻留内存大小进行排序; P:根据CPU使用百分比大小进行排序; T:根据时间/累计时间进行排序; w:将当前设置写入~/.toprc文件中。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zysxzg.html