Android .rc执行顺序:
on early-init
on init
on late-init
on early-fs
on fs
on post-fs
on late-fs
class_start early_hal
on post-fs-data
load_persist_props_action
zygote-start
firmware_mounts_complete
on early-boot
on boot
class_start hal
class_start core
on trigger_xxxx
class_start main
class_start late_start
on trigger_restart_framework
class_start_post_data hal
class_start_post_data core
class_start main
class_start late_start
on trigger_shutdown_framework
class_reset late_start
class_reset main
class_reset_post_data core
class_reset_post_data hal
一、init.rc 文件中相关启动顺序
系统正常开机时
- on early-init
- on init
- on early-fs
- on fs
- on post-fs
- on post-fs-data //data 分区已挂载
- on early-boot
- on boot
恢复出厂设置启动顺序
on property:vold.decrypt=trigger_shutdown_framework
on property:vold.decrypt=trigger_restart_min_framework // 启动最小系统
on property:vold.decrypt=trigger_reset_main // 输入安全密码时
on property:vold.decrypt=trigger_post_fs_data // data 挂载
on property:vold.decrypt=trigger_restart_framework // 系统正常启动
二、init 文件路径
系统 init rc 文件比较多,在根目录和 vendor/etc/init/hw 目录下都有。根目录下的 rc 文件权限更高些,当需要 mkdir 创建 /data 目录下文件夹或者是 setprop sys.* 之类属性值。最好都是在根目录下的 rc 文件中执行。
三、init.rc 语法
参考如下链接:
refs: https://blog.csdn.net/tq501501/article/details/118248167 https://blog.csdn.net/feigebangni/article/details/50300063 标签:fs,start,init,rc,Android,data,class From: https://www.cnblogs.com/bluestorm/p/18401450