468| 0
|
SlimBootLoader编译环境的架设 |
[color=rgba(0, 0, 0, 0.9)]SlimBootLoader(缩写SBL) 是Intel 推出的轻量级BIOS架构(更通俗的说法它是一种比EDKII 更简单的架构)。本文简单介绍一下如何配置一个编译环境,最终生成一个QEMU 的BIOS。 [color=rgba(0, 0, 0, 0.9)]经过一段时间的研究使用,总结和常用的 EDK2 相比,有如下优点: [color=rgba(0, 0, 0, 0.9)]1.启动速度更快; [color=rgba(0, 0, 0, 0.9)]2.编译速度较快; [color=rgba(0, 0, 0, 0.9)]3.体积更小(但是因为ME无法缩小,所以打包后仍然需要 16MB SPI NOR用于存放整个IFWI); [color=rgba(0, 0, 0, 0.9)]4.配置简单,所有的配置基本上都是写在生成的二进制文件中,这样用户拿到手之后无需调整; [color=rgba(0, 0, 0, 0.9)]5.基于Intel FSP 开源,可控性较强。 [color=rgba(0, 0, 0, 0.9)]更通俗的解释:这个框架相当于IBV提供的codebase ,你可以根据需求进行修改。 [color=rgba(0, 0, 0, 0.9)]这次介绍如何搭建SBL 的编译开发环境,最终生成一个能够启动QEMU 模拟器的BIOS。 [color=rgba(0, 0, 0, 0.9)]本文根据【参考1】,实验和编写: [color=rgba(0, 0, 0, 0.9)]1.需要安装如下软件 a.VS2019 需要保证安装VCb.Python 3.8.10 需要安装到 c:\Python38 目录下,需要选择将路径加入系统变量c. Nasm 2.16.01 需要安装到 c:\nasm 目录下d. IASL 20190509 需要安装到 c:\asl 目录下e. OpenSSL 需要安装到c:\openssl 目录下f. Git 下面这个设置需要选择为“Checkout as-is, commit as-is” 其余默认即可[color=rgba(0, 0, 0, 0.9)] 2. 解压 slimboot-master 到 c:\buildbs 目录下名为 sbl 的目录下3. 打开 x86 Native Tools Command Prompt for VS20194. 生成一个 SBLKeya. 创建一个目录:Mkdir sblkeyb. 在这个目录下生成Key:Python BootLoaderCorePkg\Tools\Generatekeys.py -k sblkey[color=rgba(0, 0, 0, 0.9)] [color=rgba(0, 0, 0, 0.9)]这样会在sblkey目录下生成一堆 Key [color=rgba(0, 0, 0, 0.9)]5.接下来给Qemu 生成一个BIOS试试 [color=rgba(0, 0, 0, 0.9)]a.需要指定key目录: [color=rgba(0, 0, 0, 0.9)]set SBL_KEY_DIR=c:\buildbs\sbl\sblkey [color=rgba(0, 0, 0, 0.9)]b.使用Python BuildLoader.py build qemu [color=rgba(0, 0, 0, 0.9)] [color=rgba(0, 0, 0, 0.9)]c. 在这个过程中需要从Git下载一些代码,对于不方便联网的人可以直接将 Download.zip 解压到 c:\BuildBs 下面。第一次使用 git 会提示需要设置邮件地址,可以用 git config –global user.email “you@example.com” 设置一个不用的邮箱地址跳过这里 [color=rgba(0, 0, 0, 0.9)]6.最终的结果如下,表示编译成功 [color=rgba(0, 0, 0, 0.9)] [color=rgba(0, 0, 0, 0.9)]参考: [color=rgba(0, 0, 0, 0.9)]1.https://slimbootloader.github.io ... s/build-system.html [color=rgba(0, 0, 0, 0.9)]本文长期支持链接 https://www.lab-z.com/sblb/ |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed