设为首页 加入收藏

TOP

Android init 进程 init.rc init.*.rc
2014-11-24 08:34:44 来源: 作者: 【 】 浏览:0
Tags:Android init 进程 init.rc init. .rc

2.init 进程执行流程:


注册与子进程相关的SIGCHLD信号处理器,


创建并挂载启动所需的文件目录,


解析init.rc 文件,


初始化qemu设备,设置模拟器环境,


解析init.*.rc 文件,


创建进程中已经定义好的设备节点文件,生成静态设备节点,


初始化属性服务,


显示logo 在LCD屏幕上,只支持rle565格式的图片,


设置系统初始值,


执行与action_list 相关的init区块的命令,


启动属性服务,


创建套接字,因为子进程若要修改属性值必须向Init申请,故生成“dev/socket/property_service" 套接字,以接收申请,


执行与action_list 相关的init区块的命令,


设置事件处理循环的监听事件,


循环处理事件,


2. init.rc 是init进程启动后执行的启动脚本,定义android系统通用的环境设置及与记录进程相关设置,Init.*.rc 是定义android 在不同平台下的特定进程和环境设置,与Init.rc类似。init.rc 主要包括以On开头的 action list和以service开头的service list, action list 创建所需目录,指定特定文件的权限,service list 记录初始化程序需要启动的程序。



on init 部分:设置环境变量,挂载文件系统,


主要设置根文件系统目录,以及编译时所需的库目录, android 采用NAND FLASH 所以挂载文件系统格式为yaffs2 , 主要挂载 /system /data 两个目录,


/system/bin 存放shell 命令集, app- 基本应用, framework- java lib, lib- bionic lib , /data 及其子目录存放user data.



on boot 部分:设置应用程序终止条件以及驱动目录和文件权限等,


在应用程序终止条件中为各应用指定了OOM 的调整值,值越大,终止优先级越高


service部分 记录 init 进程启动的进程,


一般是一次性程序或运行在后台的deamon 进程


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Ubuntu+VMware上运行Android+Java.. 下一篇复制二叉树(非递归实现)

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·如何理解c语言指针和 (2025-12-27 01:19:11)
·为什么C标准库没有链 (2025-12-27 01:19:08)
·玩转C语言和数据结构 (2025-12-27 01:19:05)
·MySQL 基础入门视频 (2025-12-26 23:20:22)
·小白入门:MySQL超详 (2025-12-26 23:20:19)