Fastboot 有以下方便的功能(如果启动自定义镜像失败,设备下次会神奇地启动默认镜像,一切都会好起来的):
使用主机端内核映像引导
此命令允许您下载内核映像(和可选的根文件系统映像)并使用它们启动手机,而不是在启动闪存分区中使用内核和 rootfs。在开发内核或修改 rootfs 时非常有用。
fastboot boot <内核> [<ramdisk>]
有谁知道它在内部是如何工作的?内核是否被复制到一个特殊的引导分区在重新启动设备之前? (更新:正如答案指出的那样,没有重启,因为fastboot是启动过程中的一个步骤,这基本上使我的问题毫无意义。)我正在查看fastboot的源代码,但它似乎只包含发生的事情在主机端,而不是在设备上。
我的意思是,闪烁功能的工作原理非常简单,我可以通过将带有自定义内核的引导映像复制到boot
分区来模仿它,例如,通过:
dd if='<my_boot.img>' of='/dev/block/platform/msm_sdcc.1/by-name/boot'
顺便说一句:我问这个问题是因为我正在开发一个应用程序;我想“无风险”直接从设备启动自定义内核,它存储在例如 SD 卡上。