您的位置:首页 > 移动开发 > Android开发

Android系统内存优化之一(进程理解)

2011-05-17 10:12 309 查看
获得进程列表

(本文原创转载请注明出处:http://blog.csdn.net/rickleaf




基础知识

PID 进程ID

PPID 父进程ID

分析

(1)

初始化进程:



我们先看

init



kthread

的两个进程,

Linux

启动的时候加载第一个进程是

init

他的

PID



1

,因为是由

kernel

创建的所以

PPID



0

,在

Linux

启动以后内核把自己抽象成进程

kthread

,他的

PID



2

也是有最初的

kernel

创建的因此他的

PPID

也是

0



系统的其他进程都是源于这两个进程,其他的内核进程源于

kthread

,其他的用户进程源于

init



(2)

内核进程



有了上一节的基础,我们就可以分析以上的这些进程的

PPID

都是

2

,那么我们可以下一个结论,这些进程都是内核进程。

(3)

用户基础进程



以上这些进程都是有

init

创建的,在

Android

系统中

init

这个可执行文件通过阅读配置脚本

init.rc

来创建这些进程。

(4)

Android
java


用户进程



以上这些进程
的父进程都是

zygote

,他是

dalvik

虚拟机的孵化器,因此这些进程都是

dalvik

虚拟机的实现体,或者说是

Android
Java

的用户进程。

(5)

Android



调试进程




因为我采用的调试终端是

adb
shell

,可以看到

adb
shell

创建了两个

sh

进程并且通过这两个进程创建了

logcat

和我们刚才查看进程列表的

ps

这个进程。

我们了解了进程列表的中的一些类型以后,我们就可以有针对性的分析一些我们比较关心的进程的内存使用情况了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: