top命令詳解


美人如斯,文章如斯!

一.用途

  顯示linux進程信息

二.視圖參數含義

top視圖分為兩部分:操作系統資源概況信息和進程信息。首先分析資源概況中各個參數的含義,再來分析下進程信息中各個參數含義。

資源概況
  1. 操作系統時間、登錄用戶、負載情況-top
  • 10:33:25: 操作系統當前時間
  • up xx days, HH:MM: 操作系統從開機以后運行的時間,運行多少天多少時多少分
  • users: 當前系統有三個用戶登錄在線
  • load average: 1s, 5s, 15s系統平均負載
  1. 運行的任務概覽-Tasks
  • total: 系統當前的進程數
  • running: 當前正在運行的進程數
  • sleeping 當前睡眠中的進程數
  1. CPU概覽: %Cpu(s) 表示CPU使用百分比,按照時間占用計算,單位s
  • us: 用戶空間占用CPU時間百分比,如果是多核,這個數值表示占用的平均百分比,可以按1進行多核統計和平均統計切換
  • sy: 內核空間占用CPU時間百分比,如果是多核,同上
  • ni 用戶進程空間內改變過優先級的進程占用CPU時間百分比
  • id: 空閑時間占用CPU百分比
  • wa: 等待輸入輸出的CPU時間百分比
  • hi: CPU服務於硬件中斷的CPU時間百分比
  • si: CPU服務於軟件中斷的CPU時間百分比
    注:時間占用百分比=該種類型操作消耗CPU時間/top刷新間隔時間。top 3s刷新一次,用戶空間進程在這3s內使用了CPU 1.5s,那么us等於50%=1.5s/3s
  1. 內存概覽:單位KiB
  • total: 內存總量
  • free: 剩余的內存數量
  • used: 內存使用數量
  • buff/cache: 用於緩沖的內存數量
  1. 交換區概覽:單位KiB
  • total: 交換區總量
  • free: 空閑的交換區數量
  • used: 使用的交換區數量
進程概況

進程概況的統計從多維度參數進行展示的,其中最重要的參數:

  • PID 進程ID,唯一標識
  • USER 進程所屬用戶
  • %CPU 自上一次top刷新該進程占用CPU的時間百分比
  • %MEM 進程消耗內存百分比
  • TIME+ 自進程開始以來,消耗CPU時間,單位1/100秒
三.top中交互

交互命令:在執行top命令的視圖中,執行特定命令與結果視圖進行交互

  1. 全局
  • Enter/space: 刷新視圖
  • h: 幫助信息,查詢各個交互式命令的含義
  • 0: 是否展示在進程區域中的0值,比如%CPU是0的將全部隱藏
  • A: 在全屏模式和多窗口選擇模式之間切換
  • d: 設置刷新的時間間隔
  • E: 切換內存和交換區單位
  • H: 開啟/關閉線程模式,以線程的方式展示
  • k: kill掉指定進程或者線程
  • Z: 改變顏色配置
  • q: 退出
  1. 概要區域
  • 1: 顯示CPU平均狀態/分開顯示各個邏輯CPU狀態

  • m: 切換顯示內存統計的數據

  1. 進程區域
  • x: 切換高亮行的排序位置

  • z: 切換顏色

  • b: 塊狀標記高亮行

  • c: 切換顯示命令/程序名和參數

  • f: 顯示field管理

  • u: 按照指定用戶顯示進程

  • i: 顯示所有進程或者活躍的進程

  • n: 設置顯示的進程數

四.top命令參數
  • -h | -v: 顯示幫助或者版本信息】
  • ** -c:** 命令行列顯示程序名以及參數
  • -d: 啟動時設置刷新時間間隔
  • -H: 設置線程模式
  • -i: 只顯示活躍進程
  • -n: 顯示指定數量的進程
  • -p: 顯示指定PID的進程
  • -u: 顯示指定用戶的進程
五.常用場景

當服務器中某個JAVA服務進程內存或者CPU資源消耗非常嚴重時,可以使用:
top -H -p pid 查看其所有活躍的線程資源消耗情況


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM