android - U-boot:双启动 + 虚拟内核 + 修改后的启动图像

标签 android linux kernel u-boot

我想将双引导功能集成到 u-boot 中。在 SPL 执行期间,u-boot.img 得到验证。如果它得到正确的身份验证,Android ICS 就会启动。如果没有,将启动一个虚拟内核,除了显示一条错误消息(可能是引导 Logo )之外什么都不做。

因此,我确实面临三个挑战:

  1. 我需要传递 u-boot.img 不同的参数,以根据身份验证过程启动不同的内核镜像。
  2. 我需要集成某种虚拟内核,它除了显示启动屏幕外什么都不做。
  3. 我需要用我自己的版本修改这个启动屏幕。

我知道如何执行最后一步,因为启动屏幕似乎是一个 zip 文件,需要替换它。但是,您能给我一些关于第一项和第二项任务的提示吗?

谢谢,

最佳答案

我想你的意思是验证内核。那是对的吗?如果您想这样做,U-Boot 具有该功能。您可以在一个脚本中执行所有这些操作,该脚本将启动经过身份验证的内核或显示启动画面。

对于启动画面,有几种方法可以做到。一种方法是根据版本使用 U-Boot 命令来显示存储在闪存或 SD 卡中的位图。另一种方法需要您将位图转换为头文件并重建 U-Boot 镜像。如果你告诉我你想在哪里存储图像以及你使用的是什么版本的 U-Boot,我可以给你指示。同样为了重建图像,您需要知道您使用的是哪个来源,以便您可以添加带有位图的标题。还有显示器的数据格式是什么(RGB 565 等)?

内核将存储在哪里,您将通过什么方法对其进行身份验证?

关于android - U-boot:双启动 + 虚拟内核 + 修改后的启动图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19210908/

相关文章:

android - ListView,在Android中使用颜色代码数组更改每一行

linux - 如何在没有./的情况下执行Linux控制台应用程序

android - 从移动浏览器分析页面加载时间的好方法

android - 从列表中删除项目后,展开项目的位置不会在 ExpandableListView 上刷新 - Android?

java - 在 java 中使用多个 WHERE 子句更新 sql 数据库

c - glibc/NPTL/Linux 稳健互斥锁中的竞争条件?

linux - echo -e 可以在脚本中使用吗

c - 在 Linux 中调试一个简单的字符驱动程序在 device_create() 上失败

c++ - 在 macOS 中处理 VBI 数据

android - libncurses5-dev :i386 and libncurses5-dev:x64?冲突如何解决