androidのadb命令终端实时打印cpu资源
有时候系统出现问题可能和当前的 CPU 等资源紧张有关系。
那么如何实时打印系统当前的 CPU 占用的情况呢?
输入命令:adb shell top -m 5
该命令会打印当前使用 CPU 前5位的进程相关的信息,每隔1s更新一次
User 3%, System 28%, IOW 0%, IRQ 0%
User 38 + Nice 6 + Sys 356 + Idle 863 + IOW 2 + IRQ 0 + SIRQ 0 = 1265
PID PR CPU% S #THR VSS RSS PCY UID Name
456 3 25% S 4 18328K 724K fg shell /system/bin/mdlogger
8450 0 1% R 1 10832K 1200K fg root top
27621 2 0% S 40 1012048K 46628K bg u0_a120 com.qihoo.appstore
3540 0 0% S 5 17032K 612K fg root /sbin/adbd
788 0 0% S 113 1164220K 93224K fg system system_server
- 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 程序名称androidia
- // ps:内存占用大小有如下规律:VSS >= RSS >= PSS >= USS
- // PSS Proportional Set Size 实际使用的物理内存(比例分配共享库占用的内存)
- // USS Unique Set Size 进程独自占用的物理内存(不包含共享库占用的内存)