top詳解

Linux命令工具 top詳解

top命令是Linux下常用的性能分析工具,能夠實時顯示系統中各個進程的資源佔用狀況,類似於Windows的任務管理器。top是一個動態顯示過程,即可以通過用戶按鍵來不斷刷新當前狀態.如果在前臺執行該命令,它將獨佔前臺,直到用戶終止該程序爲止.比較準確的說,top命令提供了實時的對系統處理器的狀態監視.它將顯示系統中CPU最“敏感”的任務列表.該命令可以按CPU使用.內存使用和執行時間對任務進行排序;而且該命令的很多特性都可以通過交互式命令或者在個人定製文件中進行設定。
常在linux系統下玩,這是必須掌握的命令之一;
下面詳細說說這個命令:

敲入top進入:

top - 09:14:56 up 264 days, 20:56,  1 user,  load average: 0.02, 0.04, 0.00
Tasks:  87 total,   1 running,  86 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.0%us,  0.2%sy,  0.0%ni, 99.7%id,  0.0%wa,  0.0%hi,  0.0%si,  0.2%st
Mem:    377672k total,   322332k used,    55340k free,    32592k buffers
Swap:   397308k total,    67192k used,   330116k free,    71900k cached
  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                        
    1 root      20   0  2856  656  388 S  0.0  0.2   0:49.40 init                                            
    2 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kthreadd                                        
    3 root      20   0     0    0    0 S  0.0  0.0   7:15.20 ksoftirqd/0                                     
    4 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 migration/0

第一行

09:14:56 : 系統當前時間
264 days, 20:56 : 系統開機到現在經過了多少時間
1 users : 當前2用戶在線
load average: 0.02, 0.04, 0.00: 系統1分鐘、5分鐘、15分鐘的CPU負載信息
第二行

Tasks:任務;
87 total:很好理解,就是當前有87個任務,也就是87個進程。
1 running:1個進程正在運行
86 sleeping:86個進程睡眠
0 stopped:停止的進程數
0 zombie:僵死的進程數
第三行

Cpu(s):表示這一行顯示CPU總體信息
0.0%us:用戶態進程佔用CPU時間百分比,不包含renice值爲負的任務佔用的CPU的時間。
0.7%sy:內核佔用CPU時間百分比
0.0%ni:改變過優先級的進程佔用CPU的百分比
99.3%id:空閒CPU時間百分比
0.0%wa:等待I/O的CPU時間百分比
0.0%hi:CPU硬中斷時間百分比
0.0%si:CPU軟中斷時間百分比
注:這裏顯示數據是所有cpu的平均值,如果想看每一個cpu的處理情況,按1即可;摺疊,再次按1;
第四行

Men:內存的意思
8175320kk total:物理內存總量
8058868k used:使用的物理內存量
116452k free:空閒的物理內存量
283084k buffers:用作內核緩存的物理內存量
第五行

Swap:交換空間
6881272k total:交換區總量
4010444k used:使用的交換區量
2870828k free:空閒的交換區量
4336992k cached:緩衝交換區總量
進程信息

再下面就是進程信息:
PID:進程的ID
USER:進程所有者
PR:進程的優先級別,越小越優先被執行
NInice:值
VIRT:進程佔用的虛擬內存
RES:進程佔用的物理內存
SHR:進程使用的共享內存
S:進程的狀態。S表示休眠,R表示正在運行,Z表示僵死狀態,N表示該進程優先值爲負數
%CPU:進程佔用CPU的使用率
%MEM:進程使用的物理內存和總內存的百分比
TIME+:該進程啓動後佔用的總的CPU時間,即佔用CPU使用時間的累加值。
COMMAND:進程啓動命令名稱
top命令交互操作指令

下面列出一些常用的 top命令操作指令

q:退出top命令
<Space>:立即刷新
s:設置刷新時間間隔
c:顯示命令完全模式
t::顯示或隱藏進程和CPU狀態信息
m:顯示或隱藏內存狀態信息
l:顯示或隱藏uptime信息
f:增加或減少進程顯示標誌
S:累計模式,會把已完成或退出的子進程佔用的CPU時間累計到父進程的MITE+
P:按%CPU使用率排行
T:按MITE+排行
M:按%MEM排行
u:指定顯示用戶進程
r:修改進程renice值
kkill:進程
i:只顯示正在運行的進程
W:保存對top的設置到文件~/.toprc,下次啓動將自動調用toprc文件的設置。
h:幫助命令。
q:退出

注:強調一下,使用頻率最高的是P、T、M,因爲通常使用top,我們就想看看是哪些進程最耗cpu資源、佔用的內存最多;
注:通過”shift + >”或”shift + <”可以向右或左改變排序列
如果只需要查看內存:可用free命令。只查看uptime信息(第一行),可用uptime命令;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章