通过ps命令查看进程的状态,看到如下输出:

USER      PID   PPID  VSIZE  RSS   WCHAN              PC       S  NAME
u0_a91    3140  356   2220664 85240 SyS_epoll_ 7f97b29798 S com.qiku.cardmanager

各字段的意义:

1 . USER:进程uid
2 . PID:进程pid
3 . PPID:父进程pid。所有app进程的父进程都是zygote, 所以zygote进程pid肯定是356:

root      356   1     2144280 65116 poll_sched 7f97b296d8 S zygote64

zygote的ppid为1,说明zygote父进程是init进程:

root      1     0     12852  1768  SyS_epoll_ 00004ae004 S /init

4 . VSIZE : 进程虚拟地址空间的大小。man ps中对VSIZE的解释:

virtual memory size of the process in KiB (1024-byte units). Device mappings are currently excluded; this is subject to change.

5.RSS:进程所占的物理内存大小。man ps中对RSS的解释:

resident set size, the non-swapped physical memory that a task has used (in kiloBytes).

6.PC:program counter,程序计数器。

7.Name:进程名

8.S 进程状态,常见的状态如下:

R 正在运行或在运行队列上等待调度
S 正在睡眠,该睡眠可被中断,如可以被信号唤醒
D 正在睡眠,该睡眠不可被中断,不接收信号
Z zombie僵尸进程。进程死后没有被其父进程回收

9 . WCHAN :当前线程在哪个内核函数上睡眠。man ps 对该字段的解释如下:

name of the kernel function in which the process is sleeping, a “-” if the process is running, or a “*” if the process is multi-threaded and ps is not displaying threads.

SyS_epoll_ 说明进程的主线程正在消息队列上等待,比如我们分析Android ANR问题时,经常遇到如下日志,说明主线程正在内核的epoll上睡眠,也就是说主线程正在消息循环上等待,因为消息循环就是通过epoll实现的。

在另一篇文章中消息介绍Android消息循环的实现。

Android中ps命令各字段的含义通过ps命令查看进程的状态,看到如下输出:USER PID PPID VSIZE RSS WCHAN PC S NAMEu0_a91 3140 356 2220664 85240 SyS_epoll_ 7f97b29798 S com.qiku.cardmanager各字段的意义... private TextView mContactNone; public void showRequestFailInviteRecord(){ String mRefresh = 系统开小差,请尝试刷新一下; //创建 SpannableString 对象 SpannableString mStyledText = new SpannableString(mRefresh); //对字符串 系统开小差,请尝试刷新一下 进行处理 使用Top命令查找,当zombie前的数量不为0时,即系统内存在相应数量的僵尸进程。 2. 定位僵尸进程 ps -A -o stat,ppid,pid,cmd | grep -e '^[Zz]' 使用命令ps -A -ostat,ppid,pid,cmd |grep -e '^[Zz]'定位僵尸进程以及该僵尸进程的父进程 僵尸进程ID:3457,父进程ID:3425 僵尸进程ID:3533,父进程ID:3511 3. 使用Kill -HUP 僵尸进程ID来杀死僵尸进程,往往.
本节内容主要是讲解ActivityManager的使用,通过ActivityManager我们可以获得系统里正在运行的activities,包括 进程(Process)等、应用程序/包、服务(Service)、任务(Task)信息。 计划如下: 第一部分:获取系统可用内存以及所有的正在运行的进程信息 ; VSIZE:进程的虚拟内存大小 RSS:进程分配到的物理内存大小 WCHAN进程正在睡眠的内核函数名称,干函数的名称是从/root/system.map文件获得的。 NAME:进程名 转载于:...
Apollo 7.0 的 message Feature 包含了车辆状态信息的详细数据。它的各个字段含义如下: - `header`:消息的公共头部信息,包括消息的时间戳、发送者的信息等。 - `pose`:车辆的姿态信息,包括车辆的位置、方向、速度等。 - `linear_velocity`:车辆的线性速度信息,包括车辆在 x、y 和 z 方向上的速度。 - `angular_velocity`:车辆的角速度信息,包括车辆在 x、y 和 z 方向上的角速度。 - `acceleration`:车辆的加速度信息,包括车辆在 x、y 和 z 方向上的加速度。 - `angular_acceleration`:车辆的角加速度信息,包括车辆在 x、y 和 z 方向上的角加速度。 - `vehicle_status`:车辆的状态信息,包括车辆的灯光状态、档位信息等。 - `driving_mode`:车辆的驾驶模式信息,包括自动驾驶模式、手动驾驶模式等。 - `control_command`:车辆的控制命令信息,包括车辆的加速度、方向盘转角等。 希望这些信息能帮到您。