ps进程命令

概述

adb shell终端,输入 ps,可查看手机当前所有的进程状态,其中ps的英文全称是Process Status。 ps命令对于分析系统异常情况时都是必备的技能,需要通过这个简单命令来查看系统真实的状态。

命令参数

  • -t 显示进程里的所有子线程
  • -c 显示进程耗费的CPU时间
  • -p 显示进程优先级、nice值、调度策略
  • -P 显示进程,通常是bg(后台进程)或fg(前台进程)
  • -x 显示进程耗费的用户时间和系统时间,格式:(u:0, s:0),单位:秒(s)。

上面的参数可根据需要自由组合,比如查看进程 内的所有子进程和子线程: `ps -t | grep `;

查看所有普通应用程序,由于目前android是单用户的,所以用户普通进程的user都是以u0开头的,google有意把android发展成支持多用户的,以后应该会有u1, u2_等等的用户名,另外普通app的uid是从10000开始:

 `ps | grep ^u0`;

输出结果含义

例如,在我手机输出如下命令:(20671是某个进程pid)

ps -P -p -x -c  | grep -E "NAME| 20671 "

输出结果:

《ps进程命令》

结果分析:

字段含义
USER进程的当前用户system
PID进程ID20671
PPID父进程ID497
VSIZE进程虚拟地址空间大小2085804B
RSS进程正在使用物理内存大小60892B
CPUCPU消耗1
PRIO进程优化级20
NICENice值0
RTPRI实时进程优先级0
SCHED调度策略SCHED_OTHER(默认策略)
PCY进程状态bg
WCHAN内核地址ffffffff
PC当前程序指针b17d3d30
休眠状态S
NAME进程名com.android.settings
用户态和内核态时间(单位s)u:130, s:12

注: WCHAN值为0代表进程处于运行态;否则代表内核地址(休眠态)。

更多关于进程的调度与优先级的说明,见进程与线程

    原文作者:Gityuan
    原文地址: http://gityuan.com/2015/10/11/ps-command/
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞