EFI基本概念之UDK2015定制EDKTOOL

ami主板uefi_《UEFI内核导读》开源UDK UEFI BIOS开发实战 固件C字营·版权所有---------------------------------------------------------------------------------------------------------------------------------本文是《UEFI内核导读》其中一章,介绍基于开源UDK+FSP方案在Intel 10代酷睿Cometlake-U硬件平台上... 阅读详情

1 EDKTool作用

    EDKTool是EDK代码的编译所需要的工具。由这指定编译器及编译选项,编译平台,编译active平台及编译DEBUG或Release版本。

    EDKTool对X86及ARM的支持比较好,但对其它平台的支持不怎么好。鉴于EDK的包容性,即使没有对其它平台的支持,我们也要方便地构建其平台对应的工具。

 

2 EDKTool编译

BUILD SPEC上把EDKTool编译代码分成三个步骤:第一个步骤是预编译或者称元数据处理阶段;第二个步骤是编译步骤;第三个步骤是Image生成阶段。如果想在EDK代码还未支持的平台上做这几个步骤,首先要配置好EDKTOOL。

    首先看一下Basetool文件夹内容:


这Bin和BinWrappers是编译过后的工具,我们配置环境的时候可以将其路径加入系统环境中,这是代码编译时,就知道build,GenFw,GenFv等工具在哪找寻。Conf是配置文件,其中有编译规则,编译目标的选择及编译工具,供我们使用者来配置。Source文件是第一阶段和第三阶段所用工具的源文件。Tests文件可以帮我们改的代码做一下语法检查。userManuals是对各个工具使用方法的说明。

 

3 EDKTool修改内容

我们要为一个EDK不支持的CPU架构做EFI成BIOS,主要是修改Conf和Source两个文件夹的内容。

 

3.1 build.py

    这里要加入所要支持的CPU架构,要不然EDKTOOL不认识-a所带的参数。

 

3.2 FfsInfStatement.py

    和3.1一样,加入CPU架构。不过用途不一样,此处主要是为Inf的解析及生成Ffs时使用。

 

3.3 PeImage.h

    加入CPU的机器码,BIOS是PE32架构,都有PE头,这个机器码就是BIOS代码解析FFS的PE头使用的。

 

3.4 GenFw工具

    如果在Linux下面编译,需要将ELF转成PE结构的。

 

3.5 tools_def.template

    -t所需要的toolchain需要在此文件中设定。


EDK2环境搭建(一) 在前段时间,自己也在Windows下搭建过几次,但是都卡在一些奇怪的问题上,导致无法完成搭建,这两天自己又尝试搭了几次,终于在今天编译成功了,并且进去了qemu的Shell界面。如下图示。 阅读详情

相关推荐

EDK环境搭建&UEFI工程模块文件介绍

一、UEFI开发环境配置 UEFI开发环境目前支持Windows,Linux,支持的平台也有很多如Intel, AMD,ARM等。 下面主要是介绍如何在windows环境下进行EDK开发。 1.获取EDK源码 EDKII 源码的获取有很多途径 (1)GitHub - tianocore/edk2: EDK II (建议用这个) (2)p/edk2/code - Revision 29574: /trunk/edk2 基本上以最新的为主,但是也要看一下最新的EDK sourcecode是否有什么

m0_57118410的博客 3800

udk开发-稀里糊涂

在此情况下,DXE Runtime Driver必须创建一个signal类型的Event,当SetVirtualAddressMap() 被OS调用的时候,该Event将被通知。​ DXE Runtime Driver创建的signal类型的Event所用到的通知函数不允许直接或者间接使用UEFI Boot Services、**UEFI Console Services **或者 UEFI Protocol Services。所有的Set或者Get的值在boot time memory关闭后将会丢失。

技术联盟 2836

udk2017-EDK2设备驱动模型

在BDS阶段要把所有的Device值都初始化好,启动加载的Driver,让相应的Driver对Device进行管理。比如说我们系统中要实现一个AC97音频驱动,那么可能会有两个UEFI Driver,一个是PCI驱动(Bus Driver),一个是AC97音频驱动(Device Driver)提供音频操作的函数,那么我们可以认为PCI驱动(Bus Driver)是AC97音频驱动(Device Driver)的Controller控制器,而AC97音频驱动的实现依赖PCI驱动。

技术联盟 616

【转载】【UEFI学习】edk2中各个包介绍

edk2下各个包解释

王小多的博客 1068

EDK2-vUDK2018编译

开发环境搭建 1. 安装VS2013 2.下载工具Python2.7 IASL NASM解压默认都放到C盘根目录 Python2.7 : https://www.python.org/downloads/release/python-2716/. IASL: https://acpica.org/downloads/binary-tools NASM: https://www.nasm.us/ 在用户变量里面添加PYTHON_HOME=C:\Python27的环境变量 (注意NASM_...

tianpu2320959696的博客 2175

EDK 10.1 实验教程:UEFI开发入门与实践指南

本文还有配套的精品资源,点击获取 简介:EDK(Extreme Development Kit)是英特尔提供的开源固件开发工具包,专注于UEFI(统一可扩展固件接口)的构建与开发。本实验教程针对EDK 10.1版本,详尽介绍了UEFI基础、EDK架构、开发环境配置、基本模块编写、驱动程序开发、构建与调试、固件体积优化、引导加载器开发、固件更新机制以及UEFI表项和协议等多个...

weixin_42323064的博客 1472

EDK2 UDK2018的环境搭建

参考:https://github.com/tianocore/edk2/releases UDK2018:https://github.com/tianocore/edk2 新人上路,在参考了网上的大多安装及环境搭建教程后仍未成功搭建EDK2的环境后,最终重装电脑后搭建成功,写下这篇博客希望能帮助到有需要的人。 1.下载VS。在UDK2018中我所使用的VS2017是受支持的,因此没必要去...

qq_39155263的博客 7243

UDK2018搭建开发环境- BIOS开发一站式工具库

UDK2018搭建开发环境:BIOS开发工具库 1. edk2-BaseTools-win32-master.zip 2. edk2-vUDK2018.zip 3. nasm-2.15.05-installer-x64.exe 4. openssl-1.1.0g-win32.zip 5. openssl-OpenSSL_1_1_0g.zip 6. python-2.7.16.amd64.msi

Windows7下UEFI开发EDK2环境搭建(VS2013+UDK2015+IASL+patch+Openssl)

行文目录一、安装开发工具二、安装链接和安装过程2.1、VS20132.2、UDK20152.3、IASL2.4、patch2.5、Openssl三、配置EDK2开发环境四、编译UEFI模拟器 一、安装开发工具 C语言编译器___VS2013 EDK2环境_____UDK2015 IASL编译器____iasl-win-20210331 patch补丁______patch-2.5.9-7-setup Openssl工具包__openssl-1.0.2d 二、安装链接和安装过程 2.1

种树最好的时间是10年前,其次是现在!!! 4272

开源 AHB不对称半桥反激电路设计(六)死区时间,谐振腔电流,谐振电感函数表达式

电流跌落可以使副边电流峰值和有效值降低,减小损耗,但如果开关管 S2 导通期间,谐振电流谐等于励磁电流,即副边电流A 点降至 0,会在原边变压器内形成环流,产生损耗,同时也不利于副边同步整流管驱动的正常工作,为了保证开关管 S2 导通期。在开关管 S1 和开关管 S2 均关断的死区时间内,谐振电流给原边开关管结电容和副边整流管结电容充放电,因此会引起开关 S1 关断瞬间电流跌落与开关 S2 关断瞬间电流震荡现象,受寄生参数影响原边谐振电流波形和副边电流波形如图。降到最低,变压器以最高效率向副边传递能量。

【Simon】的博客 1229

单细胞测序避坑指南:为什么你的免疫组库数据总出问题?5‘转录组7个关键细节

本文深度解析了5'端单细胞测序技术在免疫组库研究中的应用与常见问题。文章从5'端建库的分子机制入手,重点剖析了其在捕获TCR/BCR序列上的独特优势,并系统梳理了从样本处理、文库构建到数据质控全流程中7个最易出错的细节,为研究者提供了一份实用的避坑指南,旨在帮助提升免疫组库数据的质量和可靠性。

weixin_29208327的博客 482

UDK安装和编译UEFI程序

1.安装UDK2 安装前需要准备好的下载的东西。全部放在C盘根目录下,比较好操作。 另外需要python安装环境。VS2013环境。VS2013注意要在默认安装目录下。 在conf目录下target.txt设置生成的模拟器的两个参数,第一个目标处理器改为X64或者IA32,第二个是TOOL_CHAIN工具链改为现在使用的编译器。 模拟器改为MdeModulePkg/MdeModulePkg....

摔不死的笨鸟的博客 3217

阿里云天池大数据长期赛:金融风控-贷款违约预测(含代码)

本次比赛让自己在大数据的处理流程上有了更明确的认知,从数据清洗、特征工程、数据建模,每一个过程都能学到很多经验和知识,值得去历练。

weixin_46685991的博客 1万+

怎么自己配EFI

如何自己配EFI 好多人问怎么自己配EFI?? 怎么自动配EFI?? 有没有万能EFI?? 我这里介绍一个工具Auduefi 这个工具可以自己配EFI 首先解压双击运行 然后会出现正在检测的弹窗然后点确定 然后点工具—手动配置 选择自己的核显 然后配置config.plist 其实我感觉这东西就能配个config 其他东西特别好搞,比如驱动(kext)、dirver64UEFI 这些都比较容易...

Wans小木屋 2万+

51、基于深度卷积神经网络的自闭症分类研究

本研究提出了一种基于深度卷积神经网络的自闭症分类方法,通过融合VGGNet-19和ResNet-52模型的特征,并在决策层采用SVM分类器,实现了对自闭症谱系障碍(ASD)和典型发育(TD)个体的准确区分。研究使用ABIDE数据集,结合数据增强和特征拼接技术,取得了88.12%的分类准确率和0.88的ROC曲线下面积。结果表明,该方法在自闭症自动诊断中具有良好的性能,同时研究也探讨了其局限性,并展望了未来改进方向,如多模态数据融合、迁移学习和模型可解释性的提升。

grpc6streamer的博客 130

Attention优化|2w字原理&图解: 从Online-Softmax到FlashAttention V1/V2/V3

本文通过原理分析和图解的方式,通俗易懂地FlashAttention系列算法。FlashAttention V1/V2在LLM领域的应用已经非常广泛,相关的论文也反复读了几遍。FA1和FA2论文非常经典,都推荐读一下(不过FA2论文中公式错误不少本文大约1.8w字,包括以下内容:0x07 分布式训推使用FlashAttention0x09 FlashAttention中MQA/GQA以及Causal Mask处理。

具身机器人和通用AI 5232

【UEFI实战】EDK的编译流程说明

【UEFI实战】EDK的编译流程说明。

jiangwei0512的博客 1万+

电脑硬件:电脑主板上的接口介绍,看完你就懂了

它们主要用于连接老式的键盘和鼠标,虽然速度和兼容性不如USB接口,但在某些特定场合依然发挥着重要作用。PCIe接口是主板上的扩展能力象征,可以连接各种扩展卡,如显卡、声卡、网卡等。电脑主板作为电脑硬件组成关键的部分,今天给大家分享一下电脑主板上有哪些接口,具体每一个接口的特点、使用场景,有需要的朋友可以来了解一下!它们不仅能连接鼠标、键盘、U盘、打印机,还能连接各种外设,如移动硬盘、游戏手柄等。:虽然现在用得越来越少,但在一些特定场合,如工业控制、老旧设备上,仍然需要使用PS/2接口。

IT技术分享社区 2787

【UEFI实战】EDK编译和使用(更新版)

【UEFI实战】EDK编译和使用(更新版)。

jiangwei0512的博客 5437

SAP_MM_配额安排_PA认证总结

配额安排是企业进行供应商管理的一种方式。通过配额管理,企业可以与多家供应商保持业务往来,以保证某些紧缺原材料的正常供货。此外,企业也可以通过不同的配额比例,提高供应商优化服务、降低价格的积极性。

java_zhong1990的专栏 1021

单反相机物镜设计[DG-10]

REAR(要打在像面,操作数要找像面对应位置15):以透镜单位表示的真实光线径向坐标,波长由Wave定义,参见“Hx、Hy、Px和Py”。最小玻璃厚度最小不能小于semi-dia的1/10,要根据layout看有没有过厚过薄,反复调节。PROD:两个操作数的乘积(操作#1 X操作#2)。3x4就是57.3x0.41=23.5。拦光一般在第一面和最后一面操作,减少边缘无用光线。光阑面与镜面贴近,要调距离,同时设置光阑像差。后截距是指从镜头后表面到焦点的距离。CONS:弧度转为角度。镜头相互嵌入,有错误。

weixin_72050316的博客 600

uefiboot 文件_UEFI启动文件bootx64.efi的定制

本帖最后由 hilsonma 于 2019-7-21 05:36 编辑现在UEFI平台的启动,一般都是UEFI引导第一个FAT分区或FAT32分区的 \efi\boot\bootx64.efi ,再由bootx64.efi 启动操作系统。要想启动多系统,比如要启动PE,其中一个办法就是定制bootx64.efi 。下面分享一个定制bootx64.efi 的方法。首先,到Pauly的贴子 【XORB...

weixin_34824510的博客 1万+

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

VS2015 编译EDK2

VS2015 编译EDK2经过测试,如下方法为可行:(1)下载edk2代码,下载python2.7  + cx_Freeze-4.3.4.win-amd64-py2.7 + nasm + iaslcx_Freeze-4.3.4.win-amd64-py2.7iasl-win-20180531nasm-2.13.01-win32(2)环境变量PATH中加上nasm iasl的路径 加上python的...

lif12345的专栏 2980

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

使用VS2015编辑器 build edk2

1. 下载最新的EDK2包 https://github.com/tianocore 下载最新的EDK2 https://github.com/tianocore/edk2 下载win32 https://github.com/tianocore/edk2-BaseTools-win32 2. 执行Edk2Setup.bat,根据提示缺失\BaseTools\Bin\w

guoxiang3538的专栏 2515

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

编译EDK2工具链

结果:编译uefi过程出现上述异常,重新编译BaseTools后问题解决。Linux环境里EDK工具链位于BaseTools/BinWrappers/PosixLike/目录下。EDK2工具链包括build、GenFv、GenFw等工具。如果该目录下没有这些工具,就要编译BaseTools来获得这些工具。编译BaseTools,首先需要确保系统中已经安装了make、gcc等编译工具。

echo_heart_echo_soul的博客 895

黑苹果配置与EFI定制实战指南

在非苹果硬件上部署macOS系统时,配置工具是连接硬件与操作系统的关键桥梁。本文以OpCore Simplify为例,系统讲解如何通过现代工具链解决黑苹果配置中的核心技术难题,帮助进阶用户实现从硬件检测到EFI定制的全流程掌控。 ## 如何规避硬件兼容性陷阱?——检测清单与替代方案 当你的黑苹果系统卡在启动界面或功能异常时,80%的问题根源在于硬件兼容性。不同于普通PC,macOS对硬件有着严

gitblog_01105的博客 241
上一篇: 琐事MARK
下一篇: Efi Ext驱动支持
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值