1. 程式人生 > 實用技巧 >Linux中的top檢視程序詳解

Linux中的top檢視程序詳解

  1. 預設輸出

    top命令的預設輸出如下:

    Linux top命令詳解

  2. 上半部分顯示了整體系統負載情況

    top一行:從左到右依次為當前系統時間,系統執行的時間,系統在之前1min、5min和15min內cpu的平均負載值

    Tasks一行:該行給出程序整體的統計資訊,包括統計週期內程序總數、執行狀態程序數、休眠狀態程序數、停止狀態程序數和僵死狀態程序數

    Cpu(s)一行:cpu整體統計資訊,包括使用者態下程序、系統態下程序佔用cpu時間比,nice值大於0的程序在使用者態下佔用cpu時間比,cpu處於idle狀態、wait狀態的時間比,以及處理硬中斷、軟中斷的時間比

    Mem一行:該行提供了記憶體統計資訊,包括實體記憶體總量、已用記憶體、空閒記憶體以及用作緩衝區的記憶體量

    Swap一行:虛存統計資訊,包括交換空間總量、已用交換區大小、空閒交換區大小以及用作快取的交換空間大小

  3. 下半部分顯示了各個程序的執行情況

    PID:程序pid

    USER:拉起程序的使用者

    PR:該列值加100為程序優先順序,若優先順序小於100,則該程序為實時(real-time)程序,否則為普通(normal)程序,實時程序的優先順序更高,更容易獲得cpu排程,以上輸出結果中,java程序優先順序為120,是普通程序,had程序優先順序為2,為實時程序,migration程序的優先順序RT對應於0,為最高優先順序

    NI:程序的nice優先順序值,該列中,實時程序的nice值為0,普通程序的nice值範圍為-20~19

    VIRT:程序所佔虛擬記憶體大小(預設單位kB)

    RES:程序所佔實體記憶體大小(預設單位kB)

    SHR:程序所佔共享記憶體大小(預設單位kB)

    S:程序的執行狀態

    %CPU:取樣週期內程序所佔cpu百分比

    %MEM:取樣週期內程序所佔記憶體百分比

    TIME+:程序使用的cpu時間總計

    COMMAND:拉起程序的命令

  4. 對輸出結果進行排序

    top輸出的下半部分有很多程序資訊列,我們可以根據這些列對程序輸出進行排序,預設情況下根據cpu使用率對程序排序。在top命令執行時,按”O”,可以看到排序項以及相應的按鍵:

    各項預設以從大到小排序,top執行中,按”R”可反向顯示輸出結果。

    Linux top命令詳解

  5. 顯示特定使用者相關程序

    在top執行時,按”u”快捷鍵,可以過濾出特定使用者拉起的程序:

    執行top命令時,使用”top -U www”可以起到相同效果。

    Linux top命令詳解

  6. 顯示特定程序

    執行top時,使用”-p”選項可以指定要顯示的程序:

    Linux top命令詳解

  7. 7顯示所有cpu核使用情況

    預設情況下,top上半部分資源負載資訊中,顯示的是cpu整體的使用情況:

    按數字”1”快捷鍵,可以開啟/關閉顯示各個cpu核的資訊:

    Linux top命令詳解

    Linux top命令詳解