WEB开发网
开发学院手机开发Android 开发 Android 启动流程: Init.c 阅读笔记 阅读

Android 启动流程: Init.c 阅读笔记

 2010-09-10 00:55:00 来源:WEB开发网   
核心提示:不能干预到他们,- /system/build.prop- /system/default.prop- /data/local.prop- 在读取默认的property 后读取presistent propertie ,Android 启动流程: Init.c 阅读笔记(2),在/data/property 中- 为s
不能干预到他们。

- /system/build.prop

- /system/default.prop

- /data/local.prop

- 在读取默认的property 后读取presistent propertie ,在/data/property 中

- 为sigchld handler 创建信号机制

- 确认所有初始化工作完成

- device_fd(device init 完成)

- property_set_fd(property server start 完成)

- signal_recv_fd ( 信号机制建立)

- 执行所有触发标识为early-boot 的action

- 执行所有触发标识为boot 的action

- 基于当前property 状态,执行所有触发标识为property 的action

- 注册轮询事件:

- device_fd

- property_set_fd

-signal_recv_fd

- 如果有keychord ,则注册keychord_fd

- 如果支持BOOTCHART, 则初始化BOOTCHART

- 进入主进程循环:

- 重置轮询事件的接受状态,revents 为0

- 查询action 队列

- 重启需要重启的进程

- 轮询注册的事件

- 如果signal_recv_fd 的revents 为POLLIN ,则得到一个信号,获取并处理

- 如果device_fd 的revents 为POLLIN, 调用handle_device_fd

- 如果property_fd 的revents 为POLLIN, 调用handle_property_set_fd

- 如果keychord_fd 的revents 为POLLIN, 调用handle_keychord

上一页  1 2 

Tags:Android 启动 流程

编辑录入:coldstar [复制链接] [打 印]
赞助商链接