android系统(10)--top 命令

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: 显示的最多进程数,做优化时一般只关心CPU占用率最高的几个进程,那么只需要top -m 3或top -m 5就好了,以免top命令的输出太多

-n:显示n次top的结果后命令就会退出

-d:更新的时间间隔,默认是每隔3s更新下状态,top -d 0时会持续地输出,不过很占CPU。

-s:选择根据某项(cpu,vss,rss,thr)来排序

-t: 显示线程而非进程

-h:显示帮助信息


优化中需要了解各个CPU利用率,以评估程序的多线程并行性。但Android系统的top缺少了统计各个CPU利用率的功能,我还在寻找是否有其他的方法

    PID       PR     CPU%      S       #THR           VSS        RSS       PCY           UID      Name

 1314         0            0%      R               1       1000K       392K       fg               root       top
     68          0            0%      D               1              0K           0K        fg               root       COMIP Battery s
   399          0            0%      S               8       9696K      860K        fg                root      /system/bin/rild


PID:      进程在系统中的ID

CPU% - 当前瞬时所以使用CPU占用率

#THR - 程序当前所用的线程数

UID - 运行当前进程的用户id

Name - 程序名称org.xmpp.app

VSS - Virtual Set Size 虚拟耗用内存(包含共享库占用的内存)
RSS - Resident Set Size 实际使用物理内存(包含共享库占用的内存)
PSS - Proportional Set Size 实际使用的物理内存(比例分配共享库占用的内存)
USS - Unique Set Size 进程独自占用的物理内存(不包含共享库占用的内存)

一般来说内存占用大小有如下规律:VSS >= RSS >= PSS >= USS
  就不把执行效果放上来了,总之结果表述如下:
 
  1. User 35%, System 13%, IOW 0%, IRQ 0% // CPU占用率 
  2. User 109 + Nice 0 + Sys 40 + Idle 156 + IOW 0 + IRQ 0 + SIRQ 1 = 306 // CPU使用情况 
  3.  
  4. PID CPU% S #THR VSS RSS PCY UID Name // 进程属性 
  5. xx  xx% x   xx  xx  xx  xx  xx   xx 
  6.  
  7. CPU占用率: 
  8. User    用户进程 
  9. System  系统进程 
  10. IOW IO等待时间 
  11. IRQ 硬中断时间 
  12.  
  13. CPU使用情况(指一个最小时间片内所占时间,单位jiffies。或者指所占进程数): 
  14. User    处于用户态的运行时间,不包含优先值为负进程 
  15. Nice    优先值为负的进程所占用的CPU时间 
  16. Sys 处于核心态的运行时间 
  17. Idle    除IO等待时间以外的其它等待时间 
  18. IOW IO等待时间 
  19. IRQ 硬中断时间 
  20. SIRQ    软中断时间 
  21.  
  22. 进程属性: 
  23. PID 进程在系统中的ID 
  24. CPU%    当前瞬时所以使用CPU占用率 
  25. S   进程的状态,其中S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值是负数。 
  26. #THR    程序当前所用的线程数 
  27. VSS Virtual Set Size 虚拟耗用内存(包含共享库占用的内存) 
  28. RSS Resident Set Size 实际使用物理内存(包含共享库占用的内存) 
  29. PCY OOXX,不知道什么东东 
  30. UID 运行当前进程的用户id 
  31. Name    程序名称android.process.media 
  32.  
  33. // ps:内存占用大小有如下规律:VSS >= RSS >= PSS >= USS 
  34. // PSS  Proportional Set Size 实际使用的物理内存(比例分配共享库占用的内存) 
  35. // USS  Unique Set Size 进程独自占用的物理内存(不包含共享库占用的内存)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值