浏览代码init.c
并尝试找出两件事:
硬件特定的 init.%hardware%.rc 在哪里读取?
服务在哪里启动 - 意思是 zygote、/system/bin/servicemanager 等
一个 init.%hardware%.rc 的例子将不胜感激。
浏览代码init.c
并尝试找出两件事:
硬件特定的 init.%hardware%.rc 在哪里读取?
服务在哪里启动 - 意思是 zygote、/system/bin/servicemanager 等
一个 init.%hardware%.rc 的例子将不胜感激。
好的,这两个问题都在 init.rc 中得到了解答。
硬件特定init.%hardware%.rc
阅读http://androidxref.com/4.3_r2.1/xref/system/core/rootdir/init.rc#8,我们在其中看到该行
import /init.${ro.hardware}.rc
现在,ro.hardware
从命令行(main、process_kernel_cmdline和最后export_kernel_boot_props)读取。命令行在哪里,嗯...
服务已启动:在 main 中触发了启动操作,其中包含以下行
class_start core
class_start main
启动所有核心和主要服务。从Android 系统服务在哪里开始?
注意:我指的是 KitKat - YMMV