Android系統adb命令檢視CPU與記憶體使用率
阿新 • • 發佈:2019-01-21
1. 開啟終端,進入上述目錄,如下圖所示: 2. 輸入adb shell,開啟adb命令列,如下圖所示: 3. 檢視cpu使用情況: 輸入命令:top -m 10 -s cpu(-m顯示最大數量,-s 按指定行排序),如下圖所示:
- 引數含義:
- PID : progress identification,應用程式ID
- S : 程序的狀態,其中S表示休眠,R表示正在執行,Z表示僵死狀態,N表示該程序優先值是負數
- #THR : 程式當前所用的執行緒數
- VSS : Virtual Set Size虛擬耗用記憶體(包含共享庫佔用的記憶體)
- RSS : Resident Set Size實際使用實體記憶體(包含共享庫佔用的記憶體)
- PCY : 前臺(fg)和後臺(bg)程序
- UID : User Identification,使用者身份ID
- Name : 應用程式名稱
- 引數含義:
- dalvik : dalvik使用的記憶體
- native : native堆上的記憶體,指C\C++堆的記憶體(android 3.0以後bitmap就是放在這兒)
- other : 除了dalvik和native的記憶體,包含C\C++非堆記憶體······
- Pss : 該記憶體指將共享記憶體按比例分配到使用了共享記憶體的程序
- heap alloc : 已使用的記憶體
- heap free : 空閒的記憶體
- share dirty : 共享,但有不能被換頁出去的記憶體
- private dirty : 非共享,又不能被換頁出去的記憶體(比如linux系統中為了提高分配記憶體速度而緩衝的小物件,即使你的程序已經退出,該記憶體也不會被釋放)
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. // 重新整理間隔時間(預設5秒)
-s col Column to sort by (cpu,vss,rss,thr). // 按哪列排序
-t Show threads instead of processes. // 顯示執行緒資訊而不是程序
-h Display this help screen. // 顯示幫助文件
- User 15%, System 12%, IOW 0%, IRQ 0% // CPU佔用率
- User 468 + Nice 125 + Sys 481 + Idle 2783 + IOW 1 + IRQ 0 + SIRQ 2 = 3860 // CPU使用情況
- PID PR CPU% S #THR VSS RSS PCY UID Name // 程序屬性
- 284 1 16% S 61 473068K 41488K fg media /system/bin/mediaserver
- CPU佔用率:
- User 使用者程序
- System 系統程序
- IOW IO等待時間
- IRQ 硬中斷時間
- CPU使用情況(指一個最小時間片內所佔時間,單位jiffies。或者指所佔程序數):
- User 處於使用者態的執行時間,不包含優先值為負程序
- Nice 優先值為負的程序所佔用的CPU時間
- Sys 處於核心態的執行時間
- Idle 除IO等待時間以外的其它等待時間
- IOW IO等待時間
- IRQ 硬中斷時間
- SIRQ 軟中斷時間
- 程序屬性:
- PID 程序在系統中的ID
- CPU% 當前瞬時所以使用CPU佔用率
- S 程序的狀態,其中S表示休眠,R表示正在執行,Z表示僵死狀態,N表示該程序優先值是負數。
- #THR 程式當前所用的執行緒數
- VSS Virtual Set Size 虛擬耗用記憶體(包含共享庫佔用的記憶體)
- RSS Resident Set Size 實際使用實體記憶體(包含共享庫佔用的記憶體)
- PCY OOXX,不知道什麼東東
- UID 運行當前程序的使用者id
- Name 程式名稱android.process.media
- // ps:記憶體佔用大小有如下規律:VSS >= RSS >= PSS >= USS
- // PSS Proportional Set Size 實際使用的實體記憶體(比例分配共享庫佔用的記憶體)
- // USS Unique Set Size 程序獨自佔用的實體記憶體(不包含共享庫佔用的記憶體)