自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(144)
  • 资源 (4)
  • 收藏
  • 关注

原创 UEFI开发探索79- YIE001PCIe开发板(12 贪吃蛇)

(请保留-> 作者: 罗冰 https://blog.csdn.net/luobing4365)YIE001PCIe开发板之贪吃蛇1 代码整理2 编译及测试上一篇开发的贪吃蛇,除了使用了启动服务所提供的键盘服务函数和延时函数外,主要使用了GraphicsOutput Protocol。这使得代码无需进行修改,能很容易地移植到Option ROM的框架代码中。本篇比较短,主要是介绍如何将UEFI应用Snake移植到YIE001的OpROM框架中。移植的步骤如下。1 代码整理上一篇的示

2021-02-15 17:33:21 403

原创 UEFI开发探索78- YIE001PCIe开发板(11 贪吃蛇)

YIE001PCIe开发板之贪吃蛇1 贪吃蛇框架设计2 代码实现2.1 数据结构、全局变量和宏定义2.2 绘制地图和初始化贪吃蛇2.3 撞墙或自咬2.4 随机食物2.5 贪吃蛇的移动2.6 游戏运行与控制3 测试是时候实现个有趣的项目了,我选择在UEFI下实现贪吃蛇的游戏。在Option ROM上直接实现,会很难调试。因此,我首先实现了贪吃蛇的UEFI应用。调试成功后,再将其移植到YIE001上。1 贪吃蛇框架设计考虑到代码最终是要移植到YIE001上,我尽量减少所用到的Protocol。主要

2021-02-14 12:19:11 635

原创 UEFI开发探索77- YIE001PCIe开发板(10 拨动开关及显示)

(请保留-> 作者: 罗冰 https://blog.csdn.net/luobing4365)YIE001PCIe开发板之拨动开关1 获取拨动开关状态2 显示开关状态3 测试YIE001上有两个拨动开关,可通过对应的寄存器位得知它们的状态,以实现交互控制。这篇尝试将按键获取,以及图形显示的编码。1 获取拨动开关状态UEFI开发探索第75篇中,列出了YIE001开发板的硬件资源。板子上提供了两个拨动开关,分别对应CH366的GPI1和GPI2。对照CH366的芯片手册,定义其相关的宏

2021-02-13 12:09:56 427

原创 UEFI开发探索76- YIE001PCIe开发板(09 界面和键盘控制)

(请保留-> 作者: 罗冰 https://blog.csdn.net/luobing4365)YIE001PCIe开发板之界面和键盘控制1 图形支持和汉字支持2 界面及键盘控制编程3 测试在开发板YIE001上进行开发,实际上和之前博客中开发UEFI应用,并没有本质的区别。所要注意的,是在Option ROM被BIOS加载之时,所用的UEFI机制以及Protocol是否能正常使用。一般来说, GraphicsOutput Protocol和ConOut Protocol是可以正常使用的

2021-02-13 09:42:32 598

原创 UEFI开发探索75- YIE001PCIe开发板(08 跑马灯实验)

(请保留-> 作者: 罗冰 https://blog.csdn.net/luobing4365)YIE001PCIe开发板之跑马灯实验1 控制LED灯的函数2 实现跑马灯3 编译及测试3.1 编译3.2 刷写YIE001的固件(1) 修改ROM文件(2) 刷写Flash ROM(3)测试在等待开发板YIE002焊接的日子里,回到YIE001上继续编程。本篇准备完成跑马灯的实验,让YIE001上的4个LED灯跑起来。在开篇中,已经大致了解了YIE001上的硬件资源,为方便后续的编程,把这些

2021-02-07 22:01:02 794 1

原创 UEFI开发探索74- YIE002USB开发板(03 Windows编程)

(请保留-> 作者: 罗冰 https://blog.csdn.net/luobing4365)YIE002USB开发板之Windows编程1 添加库文件2 枚举HID设备2.1 SetupAPI函数2.2 枚举HID设备的流程图2.3 枚举HID设备的代码3 与HID设备通信3.1 ReadFile()和WriteFile()方式3.2 输入报告和输出报告的方式3.3 功能报告方式在上篇学习了访问HID设备的Windows API之后,本篇开始着手进行Windows上位机的编程。所编写的程

2021-02-02 17:54:39 504

原创 CSDN-Markdown编写博客

Mardown与博客编辑前言1、帮助文档和基本快捷键2、细节问题2.1 文字大小和颜色2.2 图像调整2.3 目录总结前言最近编写的UEFI开发探索系列,代码越来越多。之前都是直接使用CSDN的富文本编辑方式,直接从自建的博客网站上,把内容拷贝到CSDN上。这种方式简单快速,最多需要调整下字体和图像就可以发布了。不过从体验上来看,Mardown的编辑方式,更符合阅读习惯。因此,我花了一点时间,尝试着用Mardown编写了第一篇博客,效果还是不错(UEFI开发探索73)。后续篇幅较长的文章,都会采用

2021-01-25 13:11:09 344

原创 UEFI开发探索73- YIE002USB开发板(02 Windows编程)

(请保留-> 作者: 罗冰 https://blog.csdn.net/luobing4365)文章目录1 HID(人机接口设备)介绍2 Windows上位机程序UsbHID3 Windows系统的HID API3.1 CreateFile()、ReadFile()和WriteFile()3.2 HidD _ GetInputReport()和HidD _ SetOutputReport()3.3 HidD _ SetFeature()和HidD _ GetFeature()1 HID(人机

2021-01-24 22:52:20 791

原创 UEFI开发探索72- YIE002USB开发板(01 开篇)

(请保留-> 作者: 罗冰 https://blog.csdn.net/luobing4365)最近把USB的各个方面都研究了一遍,也在UEFI下实现了USB设备的访问。趁着这热乎劲,我计划把USB HID通信的知识,集合到一个新的开发板中进行介绍,也即我目前正在考虑设计的YIE002。虽然YIE002的开发板还在规划中,我使用其他的开发板,已经打通了USB的通道了。只等着YIE002开发打样回来,把嵌固件代码移植过去就行了。因为涉及到三个平台的开发(Windows、UEFI以及嵌入式..

2021-01-21 21:42:44 754

原创 UEFI开发探索71- YIE001PCIe开发板(07 OptionROM框架)

(请保留-> 作者: 罗冰 https://blog.csdn.net/luobing4365)正在编辑新书《UEFI编程实践》(暂定名),现在介绍的内容,都整理到了第8章中了。写书还是比较费神的,博客中可以随意行文,书稿则完全不能这么做。为了做到准确,有时为了确定一个数据,需要花费整个上午查找资料。期待今年上半年能够出版吧。关于Option ROM,在第34、35和36篇中,已经描述过其历史和原理了。现在有了开发板,就可以在上面直接进行开发了。1开发Option ROM代码...

2021-01-17 17:52:10 1213 5

原创 UEFI开发探索70- YIE001PCIe开发板(06 UEFI驱动)

(请保留-> 作者: 罗冰 https://blog.csdn.net/luobing4365)前两篇中,我们了解了UEFI驱动模型的基本架构。 在此基础上,本篇将以一个有趣的UEFI驱动GopRotate,配合自己编写的测试用UEFI应用TestGopRotate,演示UEFI驱动的运行和测试过程。1 UEFI驱动GopRotate此示例由apop2提供,源码仓库为https://github.com/apop2/GopRotate。工程GopRotate包含5个源文件:Compon..

2021-01-17 13:27:40 634

原创 UEFI开发探索69- YIE001PCIe开发板(05 UEFI驱动)

(请保留-> 作者: 罗冰 https://blog.csdn.net/luobing4365)上一篇中,驱动BlankDrv完成了核心的EFI_DRIVER_BINDING_PROTOCOL,以及获取驱动名Protocol的处理后,整个UEFI驱动框架还有两项工作等待完成:安装UEFI驱动所提供的Protocol; 驱动加载后是常驻内存的,应该提供UEFI驱动的卸载函数,以支持将驱动系统中移除的功能。1 完成驱动框架安装Protocol可以使用InstallMultiplePro..

2021-01-16 21:45:44 763

原创 UEFI开发探索68- YIE001PCIe开发板(04 UEFI驱动)

(请保留-> 作者: 罗冰 https://blog.csdn.net/luobing4365)插个新告知:YIE001的开发板,思路已经比较清晰了-使用PCIE芯片,编写Option ROM,在此基础上控制硬件,做一些有趣的实验。由于主要是用业余时间,估计在这两个月内就能把要做的实验完成。因此,有了新的想法-做一个USB的开发板YIE002,实现从UEFI访问、Windows/Linux访问的全通道USB HID设备。当然,可以用它来收集温度、产生随机数等。准备做成U盘大小,方便直接插在..

2021-01-15 13:12:00 741

原创 UEFI开发探索67- YIE001PCIe开发板(03 UEFI驱动)

(请保留-> 作者: 罗冰 https://blog.csdn.net/luobing4365)上一篇做好了服务型UEFI驱动的示例工程,本篇准备编写测试用的UEFI应用,演示如何使用驱动提供的Protocol。另外,对于如何加载驱动进行测试,也会详细讲述。1编写测试驱动的UEFI应用完成了服务型驱动和相应示例Protocol的构建后,我们准备编写访问示例Protocol的UEFI应用。本节准备的示例工程TestServiceDrv,在文末提供了下载地址。编写测试示例Protoc...

2021-01-14 19:33:29 778

原创 关于命令分派

在这么多年的工作中,我一直信奉一条原则:现场、快速地沟通。特别是作为成长于经济快速增长时代的80后、90后,面对相对老派的管理方式,诸如命令式、武断式的,天然都会有一些抗拒。我们这一代人,都是听着微软、谷歌、华为、百度等企业的神话长大的,或多或少都会向往相对平等的公司氛围。对于“老板一定是对的”这种思想,很难发自内心地去认同。这是好事,也是坏事,好事的成分居多。特别是随着00后进入团队,这种思想方式更为突出。最近遇到一些管理上的事情,让我对命令分派有了一些思考。只是纯粹的保持一线人员决策

2021-01-13 23:42:03 409 3

原创 UEFI开发探索66- YIE001PCIe开发板(02 UEFI驱动)

(请保留-> 作者: 罗冰 https://blog.csdn.net/luobing4365)在之前的篇章中,或多或少地介绍了一些UEFI驱动的内容。我们要在YIE001上实现的PCIE Option ROM,实际上就是一种UEFI驱动。这点与Legacy BIOS的Option ROM完全不同,在系列博客的第34篇中,可以知道Legacy Option ROM完全是并行于BIOS的。当然,这样描述Legacy Option ROM也不准确,Legacy BIOS与Legacy Opti..

2021-01-13 22:42:03 1568

原创 UEFI开发探索57-如使用最新的EDK2搭建编译环境

(请保留-> 作者: 罗冰 https://blog.csdn.net/luobing4365)最近浏览github上edk2的发布代码,注意到一个问题,现在发布的方式有点不一样了。之前过一段时间,就会发布一个完整的打包源代码,比如2018年3月发布的UDK2018,我一直都用这个开发的。不过,我没有找到UDK2019,更别说UDK2020了。为什么我关注这个呢?主要是因为这种打好包的源码,整理得比较好,也比较稳定,并且还提供完整的API文档。另外,如果直接git EDK2的主线,编程时会..

2021-01-11 20:43:36 1666 7

原创 UEFI开发探索65- YIE001PCIe开发板(01开篇)

(请保留-> 作者: 罗冰 https://blog.csdn.net/luobing4365)有段时间没有更新博客了,主要是大部分时间都用在公司项目上,以及整理书稿了。在整理书稿的过程中,到了讲述PCIe协议这章的时候,总觉得只是介绍协议和UEFI代码,未免有点太枯燥了。因此,我把之前写好的章节全部推翻,把介绍PCI协议的内容,改为实现一个实际的UEFI Option ROM了。也就是说,我准备制作一个带Flash ROM的PCIE开发板,把UEFI Oprom代码灌入,设备插在计算机上,..

2021-01-05 13:33:47 1611 2

原创 UEFI开发探索64- VS2015调试UEFI代码(续27、53篇)

(请保留-> 作者: 罗冰 https://blog.csdn.net/luobing4365)在27篇、53篇中,已经很详细地描述了如何建立调试环境。最近有些朋友问我,总是无法在VS2015下编译通过,所得到的信息也很奇怪,没法进行调试。鉴于此,我觉得有必要再深入些,谈谈如何使用VS2015来调试UEFI代码。我一般是遵循如下的原则来建立UEFI的VS调试环境的:保证直接使用edksetup.bat和build工具,代码可以编译通过。VS有它自己的一套检测机制,并不适合UEFI工..

2020-10-11 11:16:22 1233

原创 查看Linux下库的信息

最近在研究USB key的使用,涉及到各种CPU架构的支持。厂家提供的资料,相当的粗糙,有X86的、Arm64的和MIPS的。库名都一样,压根搞不清对应关系。在朋友的指点下,查了下Linux下对文件信息的解析方法。我觉得还是比较简单实用的,在此把操作过程记录下来。查看文件信息,可以使用file和objdump命令,后一个命令的功能相对丰富些,两者可配合使用。1 objdump命令其主要功能如下:可以使用objdump查看库文件的组成:robin@robin-virtual-mac

2020-07-25 12:52:49 2930

原创 UEFI开发探索63 – C与C++、汇编的调用约定

(请保留-> 作者: 罗冰 https://blog.csdn.net/luobing4365)在编写代码的时候,如果发现函数不如自己预期的运作,我的第一个反应并不是添加调试代码,或者使用调试工具。我反而更习惯于去读函数的汇编代码,查看逻辑上是否有漏洞,这都是以前开发oprom/bios汇编代码时留下的习惯。这个习惯我认为很好,有助于让我专注在代码本身。不过,由此带来了一些问题,C与汇编的函数约定,参数入栈顺序、堆栈平衡等,很难记忆。我实际上更习惯于16位时代的汇编语言,现在32/64位的..

2020-07-10 10:07:39 958

原创 UEFI开发探索62-环境搭建4(总结EDK2各种版本)

(请保留-> 作者: 罗冰 https://blog.csdn.net/luobing4365)开发UEFI代码的时候,起码有近三分之一的时间,在研究各种编译环境的搭建。从Windows到Linux,x86架构到Arm架构,甚至各种不同版本的EDK2,有时候着实让人无语。之前的代码都在github上下载,速度慢得出奇,搭建好的环境一般也不想乱动。今年3月份,疫情期间,在家鼓捣着把github上与uefi相关的库,全部都导到了gitee上了。解决了下载速度的问题,总算可以不受限制地搭建开发环..

2020-07-07 15:25:18 4673 6

原创 UEFI开发探索61-VFR文件和其他资源文件2(NVRAM上存储数据)

(请保留-> 作者: 罗冰 https://blog.csdn.net/luobing4365)NVRAM全称为Non-Volatile Ram(非易失性内存) ,Legacy BIOS下这块是使用CMOS来实现的,UEFI下则可以直接在ROM中分出一部分来实现。(问题来了,在UEFI下CMOS到底怎么用的呢? 有机会再研究一下)UEFI下,对NVRAM的使用如图1所示。图 1 配置参数存储于NVRAM在上一篇博客代码的基础上,进行部分修改,将用户的选择存储于NVRAM,修改步..

2020-07-04 21:15:52 2690

原创 UEFI开发探索60-VFR文件和其他资源文件1(在BIOS setup上增加项)

@[toc](请保留-> 作者: 罗冰 https://blog.csdn.net/luobing4365)如何使用VFR文件,是我这一段时间比较感兴趣的课题。包括VFR文件在内,UNI文件、IDF文件,都属于资源文件。UNI文件的使用,在之前Hii的例子中,已经讨论过了。而如何使用VFR文件,一直没有涉及到。接下来的几篇博客,将以修改BIOS Setup(当然,还是以OvmfPkg编译的镜像来做BIOS文件)为例,演示如何使用VFR文件和相关的资源文件。图1 OVMF镜像的B..

2020-06-27 18:53:49 5606 11

原创 UEFI开发探索59-UDK Debugger Tool调试Firmware

(请保留-> 作者: 罗冰 https://blog.csdn.net/luobing4365)这篇博客使用的是Windbg+UDK Debugger Tool调试代码,在Windows10下操作,具体搭建方法可以查看以前的博客。在最近的开发中,因为碰到不少问题,对UEFI的调试方法更为深入了。在第39篇博客中留下的问题(7 小尾巴),也有了解答,后续看什么时候再把解答补上。虽然在日常开发中,很少直接用到固件,但在学习中,需要跟踪UEFI每个阶段的工作,直接使用OvmfPkg编译后的F..

2020-06-23 22:29:43 1621 2

原创 UEFI开发探索58-UTF-8编码问题

(请保留-> 作者: 罗冰 https://blog.csdn.net/luobing4365)这篇要记录的知识,实际上不限于UEFI编程,在其他编程上也一样会遇到。只是因为最近这段时间,沉迷于国产机器开发的项目,频繁地调试UEFI代码,遇到了这些问题,我觉得应该有普遍性,姑且记录下来。在日常的编程中,特别是处理字符串以及显示汉字的时候,会被各种编码搞得糊里糊涂。毕竟编码是给计算机程序看的,记忆起来还是比较费事,即使当时搞清楚了,过一段时间不用,好像又会混淆。1历史计算机从美国发...

2020-05-23 11:51:27 1290

原创 UEFI开发探索57-如使用最新的EDK2搭建编译环境

(请保留-> 作者: 罗冰 https://blog.csdn.net/luobing4365)最近浏览github上edk2的发布代码,注意到一个问题,现在发布的方式有点不一样了。之前过一段时间,就会发布一个完整的打包源代码,比如2018年3月发布的UDK2018,我一直都用这个开发的。不过,我没有找到UDK2019,更别说UDK2020了。为什么我关注这个呢?主要是因为这种打好包的源码,整理得比较好,也比较稳定,并且还提供完整的API文档。另外,如果直接git EDK2的主线,编程时会..

2020-05-15 22:44:10 3426

原创 UEFI开发探索56-使用WSL编译Arm架构的UEFI镜像

(请保留-> 作者: 罗冰 https://blog.csdn.net/luobing4365)这篇本想讨论USB的,学习过程中不小心迷上了WSL,又正好想在树莓派上折腾点UEFI的软件,顺理成章地就用WSL搭建了Arm架构的编译环境。从结论来说,还不错,省得打开虚拟机了,编译速度也很快,有空把X86架构的编译环境也在WSL上搭建起来。1搭建WSL个人比较喜欢用Ubuntu18.04,很多软件都在上面写的。搭建方法就不具体描述了,可以参考我的另外一篇博客:https://bl...

2020-05-14 10:06:51 1988

原创 安装WSL(Ubuntu18.04)和开发环境

(请保留-> 作者: 罗冰 https://blog.csdn.net/luobing4365)这几天考虑把UEFI的开发环境,移到WSL下,省去在虚拟机中开发的麻烦。当然,至于如何使用模拟器调试UEFI代码,那是另外一个问题,找时间看看是否能解决,至不济可以使用VirtualBox或者Qemu配合调试。WSL我已经用了一段时间,主要用来熟悉vim和python的用法,使用也不频...

2020-04-25 17:02:56 11368 2

原创 使用gitee下载github项目

(请保留-> 作者: 罗冰 https://blog.csdn.net/luobing4365)这段时间在写UEFI的代码,总需要从github上下载东西。众所周知的原因,github下载非常的慢,有时甚至只有8Kb/s。在这个外网速度动辄百兆的时代,这种下载速度也是比较感人了。也试过修改hosts,修改DNS,没什么作用。最近实在忍受不了了,我用gitee把需要下载的项目,从g...

2020-04-21 14:58:47 13631

原创 酒后众生态

都是席间听来的故事,笑笑无妨。1 朋友A身材高大,孔武有力,一向对自己臂力颇有自信。平时倒是很儒雅,也不怎么贪杯。一日,外地客户来访,A负责招待,一不小心喝多了。酒酣耳热,一群人嚷着去KTV唱歌。去的是A常去的地方,KTV老板也很熟,很热情地招呼。A兴致勃勃,要给新认识的朋友演示演示臂力有多强。大家怎么都拦不住,KTV房梁不高,A伸手就抓住,把自己提起来了,开始表演引体向上。十个引...

2020-04-15 09:53:53 411

原创 有趣的黑客帝国效果

我想把博客的文章,同步在知乎上发表,今天上午就折腾这件事情了。知乎上有个背景展示的功能,可以把自己喜欢的图贴上去,也算是一种个性展示。放什么好呢?平常的window10,启动桌面的时候,会自动替换一些很壮观的图案。包括星球、雪山、深林等,都很漂亮,也很适合作为背景。不过,这种太平常了,也体现不出技术博客的特质。而且,这些图片应该是微软花钱买的,不知道会不会有版权问题。对了,黑客...

2020-04-11 12:37:30 574

原创 UEFI开发探索55 – UEFI与网络5(IPv6)

(请保留-> 作者: 罗冰 https://blog.csdn.net/luobing4365)本篇开始编写IPV6的代码。因为一直使用的网络调试助手不支持IPV6的通信,只好花了点时间,自己把相关的IPV6的代码(windows和linux下)实现了一遍。1搭建IPV6的通信环境由于现在基本上还在使用IPV4的网络,特别是家庭中,很少使用支持IPV6的路由器。所以,如果需...

2020-04-10 22:33:21 1760 1

原创 UEFI开发探索54 – UEFI与网络4(IPv4)

(请保留-> 作者: 罗冰)本篇主要讨论怎么使用StdLib的库函数编写TCP4的代码。上一篇中直接使用UEFI提供的TCP4 Protocol编写代码,比较复杂,需要自己重新构建所有代码。我们还是希望能够直接使用标准的Socket库来编程,这样可以直接复用以前编写的Socket代码,减少编程的工作量。1 BSD Socket接口StdLib中提供的是标准BSD Socket...

2020-04-10 15:52:53 2927 11

原创 UEFI开发探索53 – VS2015调试UEFI代码(续第27篇)

(请保留-> 作者: 罗冰)在开发网络代码的时候,光用Print打印信息不足以满足开发要求,必须源代码级别的跟踪。我所测试的环境,大部分是在TianCore的模拟环境下。因此,如何在这个环境中,实现源码级跟踪,成为了很迫切的需求。当然,我可以在Linux下开发,使用Qemu+gdb的方式来调试。不过,每次都要编译好,然后拷贝到镜像文件中,再启动调试,略嫌麻烦。我还是希望能在Windo...

2020-04-05 21:08:44 1470 4

原创 UEFI开发探索52 – UEFI与网络3(UEFI TCP4)

(请保留-> 作者: 罗冰)搭建好网络测试环境之后,可以着手进行网络编程了。UEFI下提供了相应的Protocol,可以进行TCP和UDP的编程,而且针对IPv4和IPv6都提供了相应的支持。另外,也可以通过StdLib中封装好的Socket接口进行编程。如果所有的编程方式都实现一遍,博客的篇幅就太长了。我原计划是用5篇左右的博客,把网络编程探索完的,因此,我准备用UEFI Pr...

2020-04-03 16:01:36 1670 10

原创 UEFI开发探索51 – UEFI下的打印函数

(请保留-> 作者: 罗冰)原计划的50篇博客,终于完成了。可惜的是,现有的篇幅无法把最初设想的内容全部覆盖。因此,开发探索系列还会继续写下去,既然原定目标50篇已经达成,新的目标篇数就不设定了。只针对我感兴趣的各方面的内容,继续探索。在日常的开发中,总会用到各种打印(print)函数。UEFI下的打印函数,其格式有点奇怪,和Windows及Linux下的print函数不大相同。而且...

2020-04-01 15:30:56 4844 2

原创 UEFI开发探索50 – UEFI与网络2

(请保留-> 作者: 罗冰)3在VirtualBox中使用网络在UEFI开发探索系列博客的第48篇中,我介绍了如何在VirtualBox中搭建UEFI Shell。本节就在这篇博客的基础上,让VirtualBox下的UEFI Shell有访问网络的功能。1)安装网络驱动和网络协议驱动我使用的是VirtualBox6.1.4,其虚拟网卡为Intel Pro/1000MT D...

2020-03-26 21:12:47 2614

原创 UEFI开发探索49 – UEFI与网络1

(请保留-> 作者: 罗冰)UEFI提供了非常完整的TCP/IP网络协议栈,开发人员甚至可以在UEFI上开发自己的Web服务器。其网络协议栈如图1所示:图1 UEFI的网络协议栈1) 数据链路层:ARP(Address Resolution Protocol):地址转换协议,将IP地址转换为物理的MAC地址;MNP(Managed Network Protocol):提...

2020-03-22 21:47:04 4409 12

原创 UEFI开发探索48 – 搭建UEFI Shell环境(启动盘及VirtualBox下UEFI Shell)

(请保留-> 作者: 罗冰)做UEFI的实验,32位的程序可以使用TianoCore的模拟环境进行测试。64位的程序,可以使用启动盘在实际的机器上测试,也可以使用虚拟机来测试。制作启动盘很简单,不过,我之前保存的启动文件丢失了,正好重新做一遍,把过程记录下来。1制作UEFI BIOS下的启动盘启动文件可以通过编译ShellPkg来得到。打开VS命令行,进入EDK的目录,执行...

2020-03-20 22:11:21 5136

底层开发/LegacyBIOS开发/OptionROM开发 资源

英特尔、Phoenix和康柏公司在1996年联合发布了BIOS引导规约(BIOS Boot Specification),简称BBS(图2)。尽管十几年已经过去了,但是这个规约中的大多数内容至今仍被使用着。 对于底层开发人员来说,BIOS规范、BIOS中断都必须比较清楚。将相关的几个手册汇编在一起,提供给大家使用

2019-09-03

中国TCM的标准(PDF)

这是最近国家发布的TCM的标准,现在很热门的保密话题,看看吧

2009-10-09

微软的秘密(PDF)

讲述了微软项目管理的一些实例和理念。咱中国怎么就出不了这样的公司呢,先学着开始吧

2009-10-09

汉字提取程序

可以提取汉字的程序,主要针对hz16汉字库

2008-04-02

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除