top
通過top命令查看進程信息
通過adb shell top -h
查看其使用方法
yumodeMacBook-Pro:car yumo$ adb shell top -h
Usage: top [ -m max_procs ] [ -n iterations ] [ -d delay ] [ -s sort_column ] [ -t ] [ -h ]
-m num Maximum number of processes to display.
-n num Updates to show before exiting.
-d num Seconds to wait between updates.
-s col Column to sort by (cpu,vss,rss,thr).
-t Show threads instead of processes.
-h Display this help screen.
下面是對其參數說明
參數 | 解釋 | 實例 |
---|---|---|
-m | max_procs最多顯示多少個進程 | -m 1 顯示1個進程 |
-n | iterations 刷新次數 | -n 10 只輸出10次 |
-d | delay 刷新的間隔時間,單位是秒 默認是5秒 | -d 10 每隔10秒刷新一次 |
-s | 輸出的數據按照那一列排序 | -s cpu 標識按照CPU排序。 |
-t | 顯示線程信息,而不是進程。 | |
-h | 顯示幫助文檔。 |
例子
- 查詢所有進程的信息
比如使用下面的命令查詢佔cpu最高的5個進程,並且每隔10秒刷新且只刷新一次.
adb shell top -m 5 -d 10 -n 1 -s cpu
這是輸出的結果
yumodeMacBook-Pro:car yumo$ adb shell top -m 5 -d 10 -n 1 -s cpu
User 0%, System 0%, IOW 0%, IRQ 0%
User 75 + Nice 13 + Sys 137 + Idle -2510292 + IOW 2749 + IRQ 0 + SIRQ 1 = -2507317
PID PR CPU% S #THR VSS RSS PCY UID Name
903 0 0% S 132 2792548K 149260K fg system system_server
14208 0 0% S 107 2847592K 214448K fg u0_a40 com.yulong.android.launcher3
21848 0 0% S 107 1725728K 102864K fg u0_a2 com.qihoo360.mobilesafe:GuardService
14066 0 0% S 1 0K 0K fg root kworker/0:0
7922 0 0% S 5 17260K 464K fg shell /sbin/adbd
- 指定進程名字
adb shell top | grep <進程名字>
top命令的輸出信息的解釋
yumodeMacBook-Pro:car yumo$ adb shell top -m 5 -n 1
//總的統計
User 37%, System 25%, IOW 0%, IRQ 0%
User 231 + Nice 2 + Sys 157 + Idle 222 + IOW 3 + IRQ 0 + SIRQ 0 = 615
//每個進程
PID PR CPU% S #THR VSS RSS PCY UID Name
18170 0 34% S 155 1906448K 246152K fg u0_a369 com.icongtai.zebra.car
310 1 8% S 31 651920K 12884K fg system /system/bin/surfaceflinger
21024 1 4% S 1 0K 0K fg root kworker/u17:1
22231 1 3% S 1 0K 0K fg root kworker/u17:2
7922 0 1% S 5 17260K 728K fg shell /sbin/adbd
系統的總的統計信息說明
- User : 用戶進程的使用率
- System : 系統進程的使用率
- Nice : 優先值爲負的進程所佔用的CPU時間
- IOW : IO wait的等待時間
- IRQ : 硬中斷時間
- SIRQ : 軟中斷的含義
- Idle : 除IOW以外的系統閒置時間
每個進程的描述說明
- PID : 進程ID
- USER(UID) : 進程所有者的ID
- PR : 進程優先級
- CPU% : CPU佔用率。
- S : 進程狀態 D=不可中斷的睡眠狀態 R=運行 S=睡眠 T=跟蹤/停止 Z=殭屍進程
- #THR : 程序當前所用的線程數
- VSS : Virtual Set Size 虛擬內存
- RSS : Resident Set Size 實際使用的物理內存
- PCY : 線程調度策略
- Name : 進程名字