按下电源到拉起bootloader不在我目前能研究的范围,所以从github找了份Pixel6的kernel源码看看https://github.com/GrapheneOS/kernel_gs ,看一下linux kernel拉起Android的init
kernel源码目录/init/main.c#kernel_init,先初始化环境信息,再通过run_init_process进行Android init拉起动作,默认尝试加载根目录下的ini文件。
至于/init不存在,验证参数初始函数init_setup给execute_command赋的路径,再不存在就尝试验证/sbin/init||/etc/init||/bin/init ||/bin/sh
上图可以看到,/init只是个软链接,最终指向了/system/bin/init