1. 程式人生 > >Linux 系統CPU (top )

Linux 系統CPU (top )

   top命令是Linux下常用的效能分析工具,能夠實時顯示系統中各個程序的資源佔用狀況。top有兩種互動模式的選項:

命令列選項和執行時選項。多核CPU命令: mpstat -P ALL  和  sar -P ALL

一、檢視top版本資訊如下:

[[email protected] ~]# top -vh 
  procps-ng version 3.3.10
Usage:
  top -hv | -bcHiOSs -d secs -n max -u|U user -p pid(s) -o field -w [cols]

二、top命令列選項:

 top  [ -d delay ] [  -n iter ] [ -i ]  [ -b ]

  • -d delay  : 統計資訊更新的時間間隔;
  • -n interations: 退出前迭代的次數。
  • p : 通過指定監控程序ID來僅僅監控某個程序的狀態。 例如:top -p 1563 
  • -i  : 是否顯示空閒程序;
  • -b : 批量模式執行;
[[email protected] ~]# top -p 1563 -n 1
top - 17:08:14 up 17:21,  1 user,  load average: 0.00, 0.01, 0.05
Tasks:   1 total,   0 running,   1 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.1 sy,  0.0 ni, 99.9 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  7995716 total,  7035892 free,   194700 used,   765124 buff/cache
KiB Swap:  5242876 total,  5242876 free,        0 used.  7537008 avail Mem 

   PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND        
  1563 etcd      20   0 10.753g  41964  26224 S   0.0  0.5  16:33.87 etcd  

三、執行時選項

[[email protected] ~]# top 
top - 17:10:29 up 17:23,  1 user,  load average: 0.00, 0.01, 0.05
Tasks: 403 total,   1 running, 402 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.1 sy,  0.0 ni, 99.9 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  7995716 total,  7035784 free,   195060 used,   764872 buff/cache
KiB Swap:  5242876 total,  5242876 free,        0 used.  7536900 avail Mem 

   PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND        
     1 root      20   0  191836   6988   2572 S   0.0  0.1   0:35.15 systemd        
     2 root      20   0       0      0      0 S   0.0  0.0   0:00.14 kthreadd       
     3 root      20   0       0      0      0 S   0.0  0.0   0:00.06 ksoftirqd/0    
     5 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 kworker/0:0H   
     7 root      rt   0       0      0      0 S   0.0  0.0   0:00.21 migration/0    
    
top - 17:10:29 up 17:23,  1 user,  load average: 0.00, 0.01, 0.05

    依次對應:系統當前時間 up 系統到目前為止i執行的時間, 當前登陸系統的使用者數量, load average 三個數字分別表示距離現在一分鐘,五分鐘,十五分鐘的負載情況。 這行資訊與命令uptime顯示的資訊相同 
注意:load average資料是每隔5秒鐘檢查一次活躍的程序數,然後按特定演算法計算出的數值。如果這個數除以邏輯CPU的數量,結果高於5的時候就表明系統在超負荷運轉了。

Tasks: 403 total,   1 running, 402 sleeping,   0 stopped,   0 zombie

tasks表示任務(程序),403 total則表示現在有403 個程序,其中處於執行中的有2個,402 個在休眠(掛起),stopped狀態即停止的程序數為0,zombie狀態即殭屍的程序數為0個。
 

%Cpu(s):  0.0 us,  0.1 sy,  0.0 ni, 99.9 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
  • us : user 使用者空間佔用cpu的百分比 
  • sy : system 核心空間佔用cpu的百分比 
  • ni : niced 改變過優先順序的程序佔用cpu的百分比 
  • id : 空閒cpu百分比 
  • wa : IO wait IO等待佔用cpu的百分比 
  • hi : Hardware IRQ 硬中斷 佔用cpu的百分比 
  • si : software 軟中斷 佔用cpu的百分比 
  • st : 被hypervisor偷去的時間
KiB Mem :  7995716 total,  7035784 free,   195060 used,   764872 buff/cache

    實體記憶體總量(8G),空閒記憶體總量(7.1G),使用中的記憶體總量(1.9G),緩衝記憶體量 ,使用中的記憶體總量(used)指的是現在系統核心控制的記憶體數,空閒記憶體總量(free)是核心還未納入其管控範圍的數量。納入核心管理的記憶體不見得都在使用中,還包括過去使用過的現在可以被重複利用的記憶體,核心並不把這些可被重新使用的記憶體交還到free中去,因此在linux上free記憶體會越來越少,但不用為此擔心 
 

KiB Swap:  5242876 total,  5242876 free,        0 used.  7536900 avail Mem 


依次對應:交換區總量(5.2G),空閒交換區總量(5.2G),使用的交換區總量(0G),可用交換取總量

對於記憶體監控,在top裡我們要時刻監控swap交換分割槽的used,如果這個數值在不斷的變化,說明核心在不斷進行記憶體和swap的資料交換,這是真正的記憶體不夠用了。
 

PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND 
  • PID :     程序id 
  • USER : 程序所有者 
  • PR:       程序優先順序 
  • NI :       nice值。負值表示高優先順序,正值表示低優先順序 
  • VIRT:    程序使用的虛擬記憶體總量,單位kb。VIRT=SWAP+RES 
  • RES  :     程序使用的、未被換出的實體記憶體大小,單位kb。RES=CODE+DATA 
  • SHR   :    共享記憶體大小,單位kb 
  • S  :           程序狀態。D=不可中斷的睡眠狀態 R=執行 S=睡眠 T=跟蹤/停止 Z=殭屍程序 
  • %CPU  :  上次更新到現在的CPU時間佔用百分比 
  • %MEM  :  程序使用的實體記憶體百分比 
  • TIME+   :  程序使用的CPU時間總計,單位1/100秒 
  • COMMAND  :  程序名稱(命令名/命令列)

備註: 查詢更多按 "h" 幫助 

相關推薦

Linux 系統CPU top

   top命令是Linux下常用的效能分析工具,能夠實時顯示系統中各個程序的資源佔用狀況。top有兩種互動模式的選項: 命令列選項和執行時選項。多核CPU命令: mpstat -P ALL  和  sar -P ALL 一、檢視top版本資訊如下: [[email&#

Linux系統管理

linux redhat 服務器 系統管理 點擊下載:Linux系統管理(一)本文出自 “飛奔的魚兒” 博客,請務必保留此出處http://feiyuer.blog.51cto.com/6967044/1931977Linux系統管理(一)

Linux系統管理網絡服務

網絡服務 linux redhat 紅帽 點擊下載:Linux系統管理(二)(網絡服務)本文出自 “飛奔的魚兒” 博客,請務必保留此出處http://feiyuer.blog.51cto.com/6967044/1931978Linux系統管理(二)(網絡服務)

Linux系統管理Linux系統安裝與修復

linux系統安裝與修復一. Linux多種安裝方式與應用軟件安裝1. Linux的硬盤安裝方式(1) 復制Linux的ISO文件到硬盤某個分區(2) 用Linux安裝啟動盤啟動/DOS啟動盤啟動計算機註: DOS啟動盤中必須要存放加載Linux系統的工具及Linux內核和initrd映像文件,主要文件包括:

Linux系統管理Linux設備和內核管理

linux設備和內核管理一. 設備管理概述1.Linux設備的分類字符設備(c):以字符為單位,傳輸速率較低,無需緩沖區。塊設備(b):以數據塊為單位組織和傳輸數據,需要建立緩沖區網絡設備(s):一種通過SOCKET接口進行主機通信的設備2.設備文件(1)功能用於用戶訪問設備進行輸入和輸出操作(2)常見的設

Linux學習並不難》獲取Linux系統幫助2:使用man手冊頁

man 手冊 幫助 4.2 《Linux學習並不難》獲取Linux系統幫助(2):使用man手冊頁安裝好Linux系統後,首先要做的是學會如何在Linux系統下獲取幫助,man手冊頁是一種不錯的方法,man是一種顯示Unix/Linux在線手冊的命令。可以用來查看命令、函數或者是文件的幫助手冊,

一次性講明白Linux系統呼叫1

什麼是系統呼叫 Linux核心中設定了很多可以實現各種系統功能的子程式,這些子程式就叫系統呼叫。而系統呼叫和普通函式呼叫的區別主要是在系統呼叫是系統提供的,函式一般是函式庫或者自己提供的。 為什麼要用系統呼叫 其實很多我們平時用的C語言標準函式,在Linux

Linux系統介紹

第一部分:     1:linux基礎簡介         1:作業系統(Operating System)          &nb

Linux系統介紹

一.linux 作業系統概述     1.常見作業系統        - 服務端作業系統 : linux、unix、windows server         - 單機作業系統 :

linux系統管理1之 核心編譯選項檢視

三個方法 proc檔案系統 ubunut debain 紅帽等 proc檔案系統 /proc/config.gz This file shows you the compile-time configuration settings for the kernel (gzip compr

標號4:python(就業階段)——Linux系統命令3——《vim編輯器》

三、編輯器vim >vim是一個功能強大、高度可定製的文字編輯器 <1>vim有三種基本工作模式: 1、命令模式 |命令|功能| |:----|:-----| |移動游標:|h: 左移 j: 下移 k: 上移 l: 右移| |M|游標移動到中間行 | |G

標號3:python(就業階段)——Linux系統命令2——《遠端登入和遠端拷貝》

二、遠端登入和遠端拷貝 <1>ssh介紹 >(1)SSH(Secure Shell)是專為遠端登入會話和其他網路服務提供安全性的協議。常用於遠端登入,以及使用者之間進行資料拷貝。 (2)SSH 為建立在應用層和傳輸層基礎上的安全協議。 (3)利用SSH協議可以有效防止遠端管

標號2:python(就業階段)——Linux系統命令1——《高階Linux命令及命令選項的使用》

一、高階Linux命令及命令選項的使用 <1>重定向命令:> Linux允許將命令執行結果重定向到一個檔案,本應顯示在終端上的內容儲存到指定檔案中。 1、ls >> test.txt 輸出重定向則會追加到檔案的尾部。 2、ls > test.t

python(就業階段)——Linux系統命令2——《遠端登入和遠端拷貝》

二、遠端登入和遠端拷貝 <1>ssh介紹 (1)SSH(Secure Shell)是專為遠端登入會話和其他網路服務提供安全性的協議。常用於遠端登入,以及使用者之間進行資料拷貝。 (2)SSH 為建立在應用層和傳輸層基礎

linux系統程式設計--時間與錯誤處理

#inlcude<error.h> errno perror(); //列印錯誤 strerror //列印錯誤 #inlcude<time.h> //使用CLOCKS_PER_SEC //常量可以得到秒數 clock_t \\ typedef

linux系統程式設計--檔案操作

1.0    檔案描述符         每個程序啟動後會自動開啟三個檔案描述符 0、1、2             分別對應於巨集 STDIN_FIL

Linux系統LVM部署-擴容-縮容-快照-刪除

常用LVM命令總結: 注: 以下案例均採用的系統版本是Oracle linux 7.3 LVM案例: 部署案例: 第 1 步:讓新新增的兩塊硬碟裝置支援LVM 技術。 [[email protected] ~]# pvcreate /dev/sdb /dev/sdc Physical vo

linux系統Centos安裝Elasticsearch詳細教程

1.Elasticsearch簡介 ElasticSearch是一個基於Lucene的搜尋伺服器。什麼是Lucene? 就是一個jar包,裡面包含了封裝好的各種倒排索引,以及進行搜尋的程式碼,包括各種演算法。我們就用java開發的時候,引入lucene jar,

嵌入式 Linux系統程式設計——檔案IO

嵌入式 Linux系統程式設計(一)——檔案IO一、檔案IO概念        linux檔案IO操作有兩套大類的操作方式:不帶快取的檔案IO操作,帶快取的檔案IO操作。不帶快取的屬於直接呼叫系統呼叫(

linux系統RTMPdumplibRTMP 通過RTMP 釋出H264資料

    關於RTMPdump的使用介紹,很多的都是在Windows平臺的應用,雷神有做一個系列的分析,但是雷神的也主要是以Windows平臺為主。本文主要的工作是將雷神《最簡單的基於librtmp的示例:釋出H.264(H.264通過RTMP釋出)》中的工程移植到linux系