了解UNIX中的最高命令


39

top -cUNIX框上运行命令时,得到以下输出:

top - 03:09:34 up 5 days,  6:14,  1 user,  load average: 0.00, 0.00, 0.00
Tasks: 175 total,   1 running, 174 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.2%us,  0.0%sy,  1.0%ni, 98.3%id,  0.2%wa,  0.0%hi,  0.0%si,  0.3%st
Mem:   8089600k total,  7953908k used,   135692k free,   271956k buffers
Swap: 10288440k total,  1155552k used,  9132888k free,  1934536k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                                                           
28552 ora       18   0 2131m 571m 3456 S  2.0  7.2  72:51.19 <some_path>
    1 root      15   0 10368  576  544 S  0.0  0.0   0:00.13 init [3]
    2 root      RT  -5     0    0    0 S  0.0  0.0   0:00.85 [migration/0]
    3 root      34  19     0    0    0 S  0.0  0.0   0:00.02 [ksoftirqd/0] 

如何根据此输出分析系统?Mem和Swap有什么区别?我是UNIX的新手,并尝试过此命令的手册页,但我不明白如何分析此数据。



Mem表示RAM内存,Swap表示交换分区或Swapfile。交换意味着如果您的RAM已满,它将把一些未使用的进程移到Swap分区,这时您的RAM会有所释放,如果以后的RAM需要该进程,那么它将把该进程从Swap分区移回到RAM。
最高

2
我真的很喜欢htop,它的功能大致相同,top但更好。
Paul Hiemstra 2013年

Answers:


77

top手册页中提供了所有这些信息,您可以通过运行手册页进行阅读man top。这是一个细分:

在此处输入图片说明

  • CPU(s)行显示:

    基于自上次刷新以来的时间间隔的CPU状态百分比。在下面显示两个标签的地方,首先显示最新内核版本的那些标签。
    我们,用户 :运行非独立用户进程的 时间
    sy,系统:运行内核进程的时间
    ni,好 :运行完好的用户进程的时间
    wa,IO-wait:等待I / O完成的时间
    hi:服务硬件中断的时间
    si:服务软件花费的时间中断
    st:虚拟机管理程序从此vm窃取的时间

  • MemSwap行显示:

    此部分由两行组成,根据当前安装的物理内存量,这些行可以表示以吉字节(KiB),兆字节(MiB)或吉字节(GiB)表示的值。

    第1行反映了物理内存,分类为:总,已使用,可用,缓冲区

    第2行反映了虚拟内存,分类为:总计,已使用,可用,已缓存

    物理内存是您的RAM,是提供随机访问内存的物理硬件。交换是虚拟内存,可以是硬盘驱动器上的文件或分区,本质上用作额外的RAM。但是它不是独立的RAM芯片,它位于您的硬盘驱动器上。

  • 最后一部分提供有关当前正在运行的进程的信息。它由以下几列组成:

    1. PID- 进程ID:这是用于标识进程的唯一编号。
    2. 用户:启动进程的人的用户名。
    3. PR - 优先级:该进程的优先级。具有较高优先级的进程将受到内核的青睐,并且比具有较低优先级的进程拥有更多的CPU时间。奇怪的是,该值越低,实际优先级越高;反之,* nix的最高优先级为-20,最低优先级为20。
    4. NI不错的价值:nice是一种设置流程优先级的方法。有关更多详细信息,请参见此处
    5. VIRT- 虚拟内存大小(KiB):进程使用的虚拟内存总量。
    6. RES- 驻留内存大小(KiB):任务已使用的未交换物理内存。
    7. SHR- 共享内存大小(KiB):任务可用的共享内存量,通常并非全部驻留。它只是反映了可能与其他进程共享的内存。
    8. S- 进程状态:任务的状态,可以是以下之一:

      • 'D'=不间断的睡眠
      • 'R'=跑步
      • 'S'=睡觉
      • 'T'=跟踪或停止
      • 'Z'=僵尸
    9. %CPU -CPU使用率:该进程正在使用的CPU的百分比。默认情况下,将其top显示为单个CPU的百分比。在多核系统上,百分比可以大于100%。例如,如果3个内核的使用率为60%,top则将显示180%的CPU使用率。有关更多信息,请参见此处您可以通过点击切换此行为Shifti,同时top运行,以显示使用可用的CPU的整体百分比。
    10. %MEM- 内存使用率(RES):任务当前使用的可用物理内存(RAM)份额。
    11. TIME + -CPU时间,以百分之一:自任务开始以来已使用的CPU总时间。
    12. COMMAND-命令名或命令行:要查看启动该过程的完整命令行,请从顶部开始-c:标志top -c

1
  • 内存是指您的RAM。
  • 交换是系统用作您的内存扩展的磁盘分区(或文件)。可以将最近未使用的数据移动(交换)到磁盘上以释放RAM。如果系统再次需要它,它将交换回来。有关详细信息,请参见http://en.wikipedia.org/wiki/Paging
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.