top命令java
top命令會在當前終端全屏顯示系統運行信息,實時跟蹤系統資源的使用狀況,顯示內容包括CPU、內存佔用狀況,系統運行進程的列表和每個進程運行的狀態等信息,對於分析系統運行中的問題頗有幫助。緩存
[root@Vtest ~]# topbash
如下是top某一刻的輸出信息:服務器
# topasync
top - 15:47:30 up 27 days, 3:56, 1 user, load average: 0.00, 0.00, 0.00 Tasks: 81 total, 1 running, 80 sleeping, 0 stopped, 0 zombie Cpu(s): 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 1004412k total, 929024k used, 75388k free, 79500k buffers Swap: 2047992k total, 336196k used, 1711796k free, 480540k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 15485 root 20 0 2226m 112m 1500 S 0.3 11.4 32:56.54 java 96784 root 20 0 15024 1196 940 R 0.3 0.1 0:00.02 top 1 root 20 0 19356 680 464 S 0.0 0.1 0:01.09 init 2 root 20 0 0 0 0 S 0.0 0.0 0:00.09 kthreadd 3 root RT 0 0 0 0 S 0.0 0.0 0:00.00 migration/0 4 root 20 0 0 0 0 S 0.0 0.0 0:11.92 ksoftirqd/0 5 root RT 0 0 0 0 S 0.0 0.0 0:00.00 migration/0 6 root RT 0 0 0 0 S 0.0 0.0 0:05.10 watchdog/0 7 root 20 0 0 0 0 S 0.0 0.0 28:37.09 events/0 8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 cgroup 9 root 20 0 0 0 0 S 0.0 0.0 0:00.00 khelper 10 root 20 0 0 0 0 S 0.0 0.0 0:00.00 netns 11 root 20 0 0 0 0 S 0.0 0.0 0:00.00 async/mgr 12 root 20 0 0 0 0 S 0.0 0.0 0:00.00 pm 13 root 20 0 0 0 0 S 0.0 0.0 0:13.95 sync_supers 14 root 20 0 0 0 0 S 0.0 0.0 0:13.04 bdi-default 15 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kintegrityd/0 16 root 20 0 0 0 0 S 0.0 0.0 0:39.15 kblockd/0 17 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kacpid 18 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kacpi_notify 19 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kacpi_hotplug 20 root 20 0 0 0 0 S 0.0 0.0 0:00.00 ata_aux 21 root 20 0 0 0 0 S 0.0 0.0 0:00.00 ata_sff/0 22 root 20 0 0 0 0 S 0.0 0.0 0:00.00 ksuspend_usbd 23 root 20 0 0 0 0 S 0.0 0.0 0:00.00 khubd 24 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kseriod 25 root 20 0 0 0 0 S 0.0 0.0 0:00.00 md/0 26 root 20 0 0 0 0 S 0.0 0.0 0:00.00 md_misc/0 27 root 20 0 0 0 0 S 0.0 0.0 0:00.46 linkwatch 28 root 20 0 0 0 0 S 0.0 0.0 0:00.87 khungtaskd 29 root 20 0 0 0 0 S 0.0 0.0 0:14.85 kswapd0 30 root 25 5 0 0 0 S 0.0 0.0 0:00.00 ksmd 31 root 39 19 0 0 0 S 0.0 0.0 0:05.89 khugepaged 32 root 20 0 0 0 0 S 0.0 0.0 0:00.00 aio/0 33 root 20 0 0 0 0 S 0.0 0.0 0:00.00 crypto/0 38 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthrotld/0 39 root 20 0 0 0 0 S 0.0 0.0 0:00.00 pciehpd 41 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kpsmoused 42 root 20 0 0 0 0 S 0.0 0.0 0:00.00 usbhid_resumer 72 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kstriped 147 root 20 0 0 0 0 S 0.0 0.0 0:00.01 scsi_eh_0 148 root 20 0 0 0 0 S 0.0 0.0 0:00.00 scsi_eh_1 154 root 20 0 0 0 0 S 0.0 0.0 1:07.33 mpt_poll_0 155 root 20 0 0 0 0 S 0.0 0.0 0:00.00 mpt/0 156 root 20 0 0 0 0 S 0.0 0.0 0:00.00 scsi_eh_2 278 root 20 0 0 0 0 S 0.0 0.0 1:58.64 jbd2/sda3-8 279 root 20 0 0 0 0 S 0.0 0.0 0:00.00 ext4-dio-unwrit 364 root 16 -4 10808 208 204 S 0.0 0.0 0:00.53 udevd 549 root 20 0 0 0 0 S 0.0 0.0 1:08.08 vmmemctl 673 root 20 0 0 0 0 S 0.0 0.0 0:00.02 jbd2/sda1-8 674 root 20 0 0 0 0 S 0.0 0.0 0:00.00 ext4-dio-unwrit 748 root 20 0 0 0 0 S 0.0 0.0 0:00.28 kauditd 932 root 16 -4 93176 484 368 S 0.0 0.0 0:03.90 auditd 948 root 20 0 243m 1572 508 S 0.0 0.2 0:02.27 rsyslogd 990 rpc 20 0 18984 320 264 S 0.0 0.0 0:04.39 rpcbind 1008 rpcuser 20 0 23356 332 328 S 0.0 0.0 0:00.00 rpc.statd 1049 dbus 20 0 21404 552 412 S 0.0 0.1 0:00.46 dbus-daemon 1078 root 20 0 4080 272 268 S 0.0 0.0 0:00.00 acpid 1087 haldaemo 20 0 37932 1288 692 S 0.0 0.1 0:16.79 hald 1088 root 20 0 20328 340 336 S 0.0 0.0 0:00.00 hald-runner 1117 root 20 0 22448 300 296 S 0.0 0.0 0:00.00 hald-addon-inpu 1132 haldaemo 20 0 17936 300 296 S 0.0 0.0 0:00.00 hald-addon-acpi
1-5行爲第一部分: ide
第1行 | |
top | |
15:47:30 | 當前時間,默認每三秒更新一次。 |
up 27 days | 系統運行了多長時間,格式爲時:分 |
1 user | 當前登陸用戶數 |
load average: 0.00, 0.00, 0.00 | 系統負載,即任務隊列的平均長度。三個數值分別爲 1分鐘、5分鐘、15分鐘前到如今的平均值。 |
第2行 | |
Tasks | |
81 total | 系統總的進程數 |
1 running | 正在運行的進程數 |
80 sleeping | 休眠狀態的進程數 |
0 stopped | 中止的進程數 |
0 zombie | 殭屍進程數 |
第3行: | |
Cpu(s) | |
0.0%us | (user mode)用戶所佔用CPU百分比 |
0.0%sy | (system mode)內核所佔用CPU百分比 |
0.0%ni | (nice)用戶進程內改變過優先級的進程佔用CPU百分比 |
0.0%id | (idle task) 空閒CPU百分比 |
0.0%wa | (I/O waiting)等待輸入輸出的CPU時間百分比(I/O 產生的問題,會嚴重的影響您的服務器性能,由於I/O是消耗CPU的) |
0.0%hi | (servicing IRQs) |
0.0%si | (servicing soft IRQs) |
0.0%st | (steal (time given to other DomU instances)) |
第4行 | |
Mem | |
1004412k total | 物理內存總量 |
929024k used | 已使用的物理內存 |
75388k free | 未使用的物理內存 |
79500k buffers | 內核緩存佔用的物理內存 |
第5行 | |
Swap | |
2047992k total | 交換分區總容量 |
336196k used | 已使用的交換分區容量 |
1711796k free | 未使用的交換分區容量 |
480540k cached | 緩存的總容量,若是存在未使用的物理內存,則cached佔用的是物理內存,若是未使用的物理內存爲0,則cached將會佔用部分swap分區,那麼cached的容量是它佔用的物理內存部分加上佔用的swap分區的部分。 |
第6行爲第二部分:性能
此爲top的內部命令輸入部分,經常使用命令有:spa
s |
改變top命令的刷新頻率(默認是3秒),Change delay from 3.0 to:輸入相應的數字 |
l | 關閉或開啓第一行 top 信息 |
t | 關閉或開啓第二行 Tasks 和第三行 Cpus 信息 |
m | 關閉或開啓第一部分第四行 Mem 和 第五行 Swap 信息 |
N | 以 PID 的大小的順序排列表示進程列表 |
P | 以 CPU 佔用率大小的順序排列進程列表 |
M | 之內存佔用率大小的順序排列進程列表 |
R | 對排列進行反轉 |
u | 顯示指定用戶的進程,默認是所有用戶的進程 |
c | 顯示進程的全路徑,默認是隻有進程名 |
n | 或者 # 設置在進程列表所顯示進程的數量,但最可能是顯示滿屏 |
f |
調整top命令顯示列表項。如增長GROUP列或UID列等等。但在下次使用top命令,仍是原來成默認的。 |
k | 結束進程 |
r | 調整進程的優先級(Linux和AIX是從-20到19,HP-UX爲0到39),至於如何獲得的,能夠經過man nice來查看。 |
h | 顯示幫助 |
q | 退出 top |
其他部分爲進程信息:
orm
PID | 進程id。 | |
PPID | 父進程id。 | |
RUSER | 真實的進程全部者的用戶名。 | |
UID | 進程全部者的用戶id。 | |
USER | 進程全部者的用戶名。 | |
GROUP | 進程全部者的組名。 | |
TTY | 啓動進程的終端名,不是從終端啓動的進程則顯示爲 ? 號。 | |
PR | 優先級。 | |
NI | nice值。負值表示高優先級,正值表示低優先級(Linux和AIX是從-20到19,HP-UX爲0到39) | |
P |
最後使用的CPU,僅在多CPU環境下有意義。 | |
%CPU | 上次更新到如今的CPU時間佔用百分比。 | |
%MEM | 進程使用的物理內存百分比。 | |
TIME | 進程使用的CPU時間總計,單位秒。 | |
TIME+ | 進程使用的CPU時間總計,單位1/100秒。 | |
VIRT | 進程使用的虛擬內存總量,單位kb。VIRT=SWAP+RES | |
RES | 進程使用的、未被換出的物理內存大小,單位kb。RES=CODE+DATA | |
SHR | 共享內存大小,單位kb。 | |
DATA | 可執行代碼之外的部分(數據段+棧)佔用的物理內存大小,單位kb。 | |
SWAP | 進程使用的虛擬內存中,被換出的大小,單位kb。 | |
CODE | 可執行代碼佔用的物理內存大小,單位kb | |
nFLT | 頁面錯誤次數。 | |
nDRT | 最後一次寫入到如今,被修改過的頁面數。 | |
COMMAND | ||
WCHAN | ||
Flags | ||
S 進程狀態 |
D |
不可中斷的睡眠狀態(守護進程) |
R | 運行中 | |
S | 休眠中 | |
T | 跟蹤/中止 | |
Z | 殭屍進程 |
默認狀況下僅顯示比較重要的 PID、USER、PR、NI、VIRT、RES、SHR、S、%CPU、%MEM、TIME+、COMMAND 列。能夠經過咱們上面所說的內部的f命令,來調整列表選項。