Microsoft Word - StepToUEFIV docx

Similar documents
2 EZ 模 式 默 认 情 况 下, 进 入 BIOS 设 置 程 序 时,EZ Mode ( EZ 模 式 ) 屏 幕 会 出 现 EZ 模 式 是 一 个 仪 表 盘, 包 含 系 统 当 前 状 态 的 多 个 读 数 您 可 以 检 查 系 统 最 重 要 的 信 息, 如 : CPU 速

如 果 此 設 備 對 無 線 電 或 電 視 接 收 造 成 有 害 干 擾 ( 此 干 擾 可 由 開 關 設 備 來 做 確 認 ), 用 戶 可 嘗 試 用 以 下 一 種 或 多 種 方 法 來 消 除 這 個 干 擾 : 重 新 調 整 與 確 定 接 收 天 線 方 向 增 大 此 設

P4Dual-915GL_BIOS_CN.p65

P4VM800_BIOS_CN.p65

775i65PE_BIOS_CN.p65

手册 doc

P4i45GL_GV-R50-CN.p65

相 关 知 识 1 计 算 机 工 作 原 理 1946 年 2 月, 世 界 上 第 一 台 电 子 计 算 机 ENIAC (Electronic Numerical Integrator And Computer, 电 子 数 字 积 分 计 算 机 ) 诞 生 于 美 国 宾 夕 法 尼 亚

静态分析 投放文件 行为分析 互斥量 (Mutexes) 执行的命令 创建的服务 启动的服务 进程 cmd.exe PID: 2520, 上一级进程 PID: 2556 cmd.exe PID: 2604, 上一级进程 PID: 2520 访问的文件 C:\Users\test\AppData\Lo

P4V88+_BIOS_CN.p65

T

教育部高等学校教学

Serial ATA ( Silicon Image SiI3114)...2 (1) SATA... 2 (2) B I O S S A T A... 3 (3) RAID BIOS RAID... 5 (4) S A T A... 8 (5) S A T A... 10

《计算机应用基础》学习材料(讲义)

帝国CMS下在PHP文件中调用数据库类执行SQL语句实例

T

驱动开发书籍介绍

目 录

六域链联盟 SDChain-Matrix 节点搭建指南 2018/07/26 Version : 1.0.0

RAID RAID 0 RAID 1 RAID 5 RAID * (-1)* (/ 2)* No Yes Yes Yes SATA A. B. BIOS SATA C. RAID BIOS RAID ( ) D. RAID/AHCI ( ) S ATA S S D ( ) (


典型自编教材

1. ( B ) IT (A) (B) (C) (D) 2. ( A ) (A) (B) (C) (D) 3. ( B ) (A) GPS (B) GIS (C) ETC (D) CAI 4. ( D ) (A) (B) (C) (D) 5. ( B ) (Stored Program) (A) H

RAID RAID 0 RAID 1 RAID 5 RAID * ( -1)* ( /2)* No Yes Yes Yes A. B. BIOS SATA C. RAID BIOS RAID ( ) D. SATA RAID/AHCI ( ) SATA M.2 SSD ( )

(Quad-Core Intel Xeon 2.0GHz) ()(SAS) (Quad-Core Intel Xeon 2.0GHz) (Windows )(Serial ATA) (Quad-Core Intel Xeon 2.0GHz) (Linux)(Serial ATA)

提纲. 1 实验准备. 2 从实模式进入保护模式. 3 小结 陈香兰 ( 中国科学技术大学计算机学院 ) 软件综合实验之操作系统 July 1, / 11

Microsoft Word - 移动硬盘 2.5T USB doc

NEXT SDT2.51 C:\ARM251 SDT2.51 ARM SDT 2.51 ARM PROJECT MANAGER SDT 2

untitled

Ch03_嵌入式作業系統建置_01

Microsoft Word - 正文.doc

+01-10_M5A_C1955.p65

显示屏集成式工业计算机用户手册

Microsoft Word - InoTouch Editor编程软件手册 doc

Microsoft Word - PS2_linux_guide_cn.doc

2015 度 第 2 期 批 量 集 中 询 价 采 购 项 目 包 组 A1 台 式 计 算 机 ( 配 置 一 ) 采 购 人 信 息 及 采 购 数 量 序 号 单 位 编 码 采 购 单 位 配 送 地 址 广 东 省 交 通 运 输 高 级 技

Microsoft Word - N757IAX_TC_2_01.doc

Ác Åé å Serial ATA ( Sil3132) S A T A (1) SATA (2) BIOS SATA (3)* RAID BIOS RAID (4) SATA (5) SATA (a) S A T A ( S A T A R A I D ) (b) (c) Windows XP

ebook140-8

大学计算机基础B.doc

第4章 系统设置

Application Note Format

表3:

untitled

Acronis True Image HD

<4D F736F F D20C7B6C8EBCABDCFB5CDB3C9E8BCC6CAA6BFBCCAD4B4F3B8D92E646F63>

untitled

Acronis True Image 2015

untitled

QSTG_Windows7_CHS.book

LSI U320 SCSI卡用户手册.doc

VoIP Make a Rtp Call VoIP Abstract... 2 VoIP RTP...3 Socket IP...9 Config Two Voice-hub

Microsoft Word - 在VMWare-5.5+RedHat-9下建立本机QTopia-2.1.1虚拟平台a.doc

USB解决方案.ppt

Windows RTEMS 1 Danilliu MMI TCP/IP QEMU i386 QEMU ARM POWERPC i386 IPC PC104 uc/os-ii uc/os MMI TCP/IP i386 PORT Linux ecos Linux ecos ecos eco

作 業 系 統 簡 介 光 有 電 腦 硬 體, 會 不 容 易 使 用 必 須 要 有 適 當 的 程 式, 才 方 便 操 作 硬 體 衍 生 作 業 系 統 需 求 : 提 供 方 便 使 用 者 執 行 程 式 平 台 有 效 使 用 各 種 電 腦 硬 體 資 源 Jingo C. Lia

Desktop Management Guide

T1028_Manual_KO_V3 0.pdf

P3V4X JumperFree TM

深圳市国际招标有限公司

Microsoft Word - 134招标文件.doc

AP128DG-H AP128DG-H 3 13 ATiRADEON TM Win 98/98SE, WinME Win XP Direct X

Acronis True Image 2014

Xilinx Alliance Program Certified GJVZsIPb3 IPb3pg(lwE & by2eh;[d)y IP ROM

Ioncube Php Encoder 8 3 Crack 4. llamaba octobre traslado General Search colony

自由軟體教學平台

Microsoft Word 題目卷+解答+解析.doc

Chapter 2

Preface

1-1 SH79F6431 A. 2( ) 9~15V ( 12V) U2 U3 3.3V SH79F B. 1(VCC/GND) SH79F6431 C. VDDIO SH79F6431 P4 P5 P0.6 P0.7 VDDIO VDDIO=5V D. 2 V 1.0

FPGA GJVZsIPb3 IPb3pg(lwE & by2eh;[d)y IP ROM

K7VT2_QIG_v3

1 Project New Project 1 2 Windows 1 3 N C test Windows uv2 KEIL uvision2 1 2 New Project Ateml AT89C AT89C51 3 KEIL Demo C C File

Converting image (bmp/jpg) file into binary format

海尔笔记本主板南京海尔HAIER笔记本维修点海尔T68 W66笔记本开机不显

Dell Vostro 14–3459 用户手册

一个开放源码的嵌入式仿真环境 ― SkyEye

Chapter #

言1.PDF

Ác Åé å Serial ATA ( nvidia nforce4 SLI) S A T A (1) SATA (2) BIOS SATA (3)* RAID BIOS RAID (4) SATA (5) SATA (a) S A T A ( S A T A R A I D ) (b) (c)

ARM Cortex-M3 (STM32F) STMicroelectronics ( ST) STM32F103 Core: ARM 32-bit Cortex -M3 CPU 72 MHz, 90 DMIPS with 1.25 DMIPS/MHz Single-cycle multiplica

C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1

V A. 1 Hyper-V R2 V C. A. Hyper-V B. Microsoft SCOM 20 V C. MAP D. Microsoft SCVMM 2008 V B. V D. 2. IT IT 2

ARM JTAG实时仿真器安装使用指南

自由軟體教學平台

环境保护部发布2012年世界环境日中国主题

378高雄市都市計畫說明書

untitled

Microsoft Word _TC_Lemel_new.doc

目 录 Leica ICC50 HD 引 言 9 基 本 特 点 10 基 本 特 点 ( 续 ) 11 Leica ICC50 HD: 概 述 12 拆 箱 14 准 备 开 始! 使 用 之 前 的 准 备 工 作 16 开 始 设 置! 使 用 计 算 机 进 行 连 接 和 成 像 操 作

自由軟體教學平台

公开招标采购文件范本

PIC16F F MPLAB 08 16F LED 15 LED

IT (1) IDE... 2 (2) BIOS IDE RAID... 3 (3) RAID BIOS RAID... 5 (4) R A I D (5) ID E RA ID... 15

Microsoft Word htm

G1-0406国务院教学设备

<4D F736F F D20B8EAB054B35DB3C6B1C4C1CAABD8C4B3AAED2D313031A67E3131A4EB31352EB8B9A7F3B7732E646F63>

SCTWhiteBoard V1

PTS7_Manual.PDF

Transcription:

http://www.lab-z.com/volcmd/ 关于前面提到的 VOL 命令的问题 http://www.lab-z.com/stu10/ 让程序 Pause 一下的方法 http://www.lab-z.com/how-to-use-eadk/ HowtouseEADK 介绍 EADK 的使用 http://www.lab-z.com/stu11/ 11. 让程序中断运行的方法 使用 ShellEnvironment2 设置 ESC 让程序退出执行 http://www.lab-z.com/stu12/ http://www.lab-z.com/stu13/ http://www.lab-z.com/stu14/ 12.EADK 中的 Time 函数 13.EADKstructtm 14.EADKclock() http://www.lab-z.com/stu15/ 15. 命令行参数 Again 尝试使用 clib http://www.lab-z.com/stu16/ 16.CLIB 下获得 SystemTable http://www.lab-z.com/regkey/ 17.Application 中注册一个快捷键 EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL 的 RegisterKeyNotify http://www.lab-z.com/clibhandle/ http://www.lab-z.com/print14/ http://www.lab-z.com/clrscr/ 链接 文章标题 说明 http://www.lab-z.com/step-to-uefi-shell- 1/ 1. 如何搭建一个 UEFI Shell 的编译坏境 http://www.lab-z.com/step-to-uefi-shell- 2/ 2. 如何编写一个 UEFI APP http://www.lab-z.com/stu3/ 3. 获得命令行参数的方法 http://www.lab-z.com/stu4/ 4. 清屏功能 http://www.lab-z.com/stu5/ 5. 获得 Shell 下内存分配状况 http://www.lab-z.com/rbdedk2c/ 重新编译 EDK2 工具的方法 (C 语言部分 ) http://www.lab-z.com/vs08edk/ 在 VS2008 中调试 EDKII 编译工具 http://www.lab-z.com/stu6/ 6.Shell 中使用 Float LibC 和 LibMath 的使用 http://www.lab-z.com/stu7/ 7. 加速 UEFI 模拟环境的启动 http://www.lab-z.com/stu8/ 8. 显示版本号 取得 EFISystemTable 中的版本信息 http://www.lab-z.com/intcmda/ 介绍几个 UEFIShell 下的命令 ( 上 ) Alias/attribute/cls/cp http://www.lab-z.com/intcmdb/ 介绍几个 UEFIShell 下的命令 ( 下 ) ECHO/MAP/SET/VOL/VER/TIME/TYPE http://www.lab-z.com/rdtsc/ 9. 使用 RDTSC 计算当前 CPU 频率 使用 RDTSC 指令 http://www.lab-z.com/shell-commandstall/ http://www.lab-z.com/stu20/ http://www.labz.com/22applicationentry/ http://www.lab-z.com/23conout/ 18.CLib 获得 ImageHandle 小问题 :UEFI 下,Print 怎样显示十进制的 64 位的无符号数呢? 19.ShellCommandStall 命令的分析 20. 再论 CLib 获得 ImageHandle 的问题 21. 清屏 22.Application 的入口分析 23.ConOut->OutputString 的换行问题 http://www.lab-z.com/printc/ http://www.lab-z.com/25whyunicode/ http://www.lab-z.com/rebootsystem/ http://www.lab-z.com/shell-getcurdir/ http://www.lab-z.com/getcurdir2/ http://www.lab-z.com/shellprintex/ http://www.lab-z.com/rsmbios/ http://www.lab-z.com/clibrand/ http://www.lab-z.com/getfileinfo/ http://www.lab-z.com/findfileall/ http://www.lab-z.com/findfile2/ http://www.lab-z.com/how2buildshell/ 24.Print 的换行问题 25. 命令行参数为什么是 Unicode 26.Shell 下 RebootSystem 27.ShellGetCurDir 28.ShellGetCurDir 补遗 29.ShellPrintEx(UEFI 下的 GotoXY) 30.UEFI 下 SMBIOS 的读取 31.CLIB:Rand 随机数生成 32.GetFileInfo 33.FindFile 枚举目录下所有文件 34.FindFile2 查找特定文件 35.HowtobuildShell.efi

http://www.lab-z.com/shellfsx/ 36. 枚举 Shell 下的全部盘符像 Map 功能一样 http://www.lab-z.com/37settime/ 37.SetTimer 设定定时器 ( 上 ) http://www.lab-z.com/38settimer2/ 38.SetTimer 设定定时器 ( 下 ) 39. 编写一个 GetCursorPosition 函数 c 语言的 WhereXY 40. 从 Shell 下向 Windows 传值 41.x64 的 FreqCalc 程序 42. 给 Shell 加一个时间显示功能 43. 取得当前目录的 EFI_DEVICE_PATH_PROTOCOL http://www.labz.com/getcursorposition/ http://www.lab-z.com/shellwin/ http://www.lab-z.com/x64freqcalc/ http://www.lab-z.com/shlltime1/ http://www.lab-z.com/getcurd/ http://www.labz.com/efiloadedimageprotocol/ 46.EFILOADEDIMAGEPROTOCOL 的使用 http://www.lab-z.com/elipc/ 47. 偏移正确吗? http://www.lab-z.com/48entrypoint/ http://www.lab-z.com/49str/ http://www.lab-z.com/simplemenu/ http://www.lab-z.com/51gfxuefi1/ 48. 被加载程序的 ENTRYPOINT 49. 内存驻留程序 50. 实现一个简单的菜单功能 51.EFI_Graphics_Output_Protocol 获得基本信息 http://www.lab-z.com/gfxclearsc/ 52.EFI_Graphics_Output_Protocol 清屏幕图形模式下擦除 http://www.lab-z.com/gfxcopy/ 53.EFI_Graphics_Output_Protocol 屏幕拷贝的测试 http://www.lab-z.com/esptest/ 54.EFI_SIMPLE_FILE_SYSTEM_PROTOCOL 写文件 http://www.lab-z.com/scrcap/ 55. 截屏的代码 http://www.lab-z.com/showbmp/ 56. 在屏幕上显示一幅 BMP http://www.lab-z.com/showall/ 57. 只在一个有显示? http://www.lab-z.com/calccrc32/ 57.5. 计算 CRC32 http://www.lab-z.com/uefimd5/ 58. 计算 MD5 http://www.lab-z.com/bmpinefi/ 59.BMP 放在 EFI 文件中 ( 上 ) http://www.lab-z.com/stugu/ 60.GUID 和 UUID http://www.lab-z.com/sha1/ 61.SHA-1 的实现 http://www.lab-z.com/nstring/ 62. 常用的字符串函数 ( 上 ) StrCpy/Strn/CpyStr/LenStr/SizeStr/CmpStrn/CmpStr/Cat/StrnCat http://www.lab-z.com/stu63/ 63. 常用的字符串函数 ( 下 ) StrStr/StrDecimalToUintn/StrDecimalToUint64/StrHexToUintn/StrHexToUint64/UnicodeStrToAsciiStr/AsciiStrToUnicodeStr http://www.lab-z.com/printr/ http://www.lab-z.com/shellwritefile/ 64.Print 直接输出错误信息 65.ShellWriteFile 的使用 http://www.lab-z.com/decompress/ 66.Decompress 的使用 http://www.lab-z.com/uefizlib/ 67.zLib( 上 ) http://www.lab-z.com/qemuovmf/ 68. 编译一个能在 QEMU 上跑的 BIOS http://www.lab-z.com/atmdapp67/ 69. 动态加载修改 Application http://www.lab-z.com/stuedid/ http://www.lab-z.com/getpidvid/ http://www.lab-z.com/mpscpu/ http://www.lab-z.com/sttips/ http://www.lab-z.com/stumouse/ http://www.lab-z.com/stuopn/ http://www.lab-z.com/stu74con/ http://www.lab-z.com/studsdt/ 70. 获取 EDID 信息 71. 获得 USB 设备的 PID 和 VID 72.MP_Service_Protocol 获得 CPU 信息虚拟机中自动 copy 到运行目录下 73. 获得鼠标信息 74. 通过 OpenVolume 访问 FSx 上的文件 75. 取得 ConfigurationTable 76.DumpACPIDSDT

http://www.lab-z.com/stu77stmv/ http://www.lab-z.com/stuserial/ 77. 改造 Stall 和 MV 78.SERIAL_IO_PROTOCOL http://www.lab-z.com/stu79/ http://www.lab-z.com/stu80hzgly/ http://www.lab-z.com/stutg/ 79. 取得字形 80. 取得汉字的字形 81. 测试文件生成器 http://www.lab-z.com/stu82/ 82.NT32Pkg 的 Debug Message 在 NT32 下直接对模拟器的 Console 输出一些信息 http://www.lab-z.com/blockio/ 83.BlockIo Protocol Block IO 的使用 http://www.lab-z.com/shellexecute/ 84.ShellExecute 的使用 在 Shell 下, 直接 StartImage 可能会遇到问题, 用 Shell 的这个功能就可以直接运行 EFI 代码 http://www.lab-z.com/stu85/ 85.StartImage CLib 解释为什么 Shell 下 StartImage 无法执行 CLIb 的程序 http://www.lab-z.com/stu86/ 86.StartImage 加载 CLib 程序的解决方法 Shell 下 StartImage 无法执行 CLIb 的程序的解决方法 http://www.lab-z.com/stu87/ 87.EFI_UNICODE_COLLATION_PROTOCOL http://www.lab-z.com/stu88/ 88. 一个转屏驱动一个开源代码, 可以在 Shell 下旋转屏幕内容 http://www.lab-z.com/stu89/ http://www.lab-z.com/stu90shc/ http://www.lab-z.com/stu91/ 89. 内存访问 90. 给 Shell 加入一个 command 91.Shell 下的串口测试软件 http://www.lab-z.com/stu92/ 92. 关于 ConOut 的奇怪实验实验替换 ConOut 函数 http://www.lab-z.com/stufdti/ 93.FTDI 串口驱动在 Shell 下可以使用 FTDI 的 USB 转串口 Cable 了 http://www.lab-z.com/stu94/ 94.Source Level Debug NT32 下实现源码级调试 http://www.lab-z.com/stuacap/ 95. 又一个截图软件 http://www.lab-z.com/stu96/ 96. Build 参数介绍 http://www.lab-z.com/stu97/ 97.Shell 下获得和设置环境变量 http://www.lab-z.com/stu98/ 98. Shell 加载 EFI 的分析 分析一个 EFI Application 如何在 Shell 下加载运行的 http://www.lab-z.com/stu99protocol/ 99. 使用 Protocol 的总结 http://www.lab-z.com/stu100/ 100. InstallProtocolInterface 安装一个自定义的 Protocol http://www.lab-z.com/stu101/ 101. Application 驻留内存 一种特别设计的可以驻留内存的 Application http://www.lab-z.com/stu102/ 102. Application 释放 Driver Application 中包含了一个 Driver, 在运行的时候释放出来并且加载 http://www.lab-z.com/stu103/ 103. Protocol 的私有数据 在 Protocol 中定义和使用私有数据 http://www.lab-z.com/stu104/ 104. emmc in the Shell 取得 emmc CID 的例子 http://www.lab-z.com/stubml/ Step to UEFI Tips : 介绍 BaseMemoryLib BaseMemoryLib.h 中的一些有用函数 http://www.lab-z.com/stu105dit/ 105.DiskinfoProtcol 用来取得系统上硬盘信息的 Protocol: EFI_DISK_INFO_PROTOCOL http://www.lab-z.com/stu106/ 106. 取得 AHCI SATA 的序列号 输出 AHCI HDD 的信息 http://www.lab-z.com/stu107us/ 107. 取得 USB DISK 的序列号 取得一个 USB DISK 的信息 http://www.lab-z.com/stu108/ 108. 引用 Protocol GUID 的方法 注意, 这不是标准方法 http://www.lab-z.com/stu109/ 109. 显示 Shell 下面的历史信息 获得 Shell 历史信息的方法 http://www.lab-z.com/stu110tab/ 110. 在 Shell 下面使用 Unicode 的制表符 http://www.lab-z.com/stu111shdd/ 111. Shell 下面的 HDD 菜单 使用菜单选择当前系统中的 HDD http://www.lab-z.com/fsntxvsfs/ 112. FSNTx 和 FSx 简单探究 http://www.lab-z.com/stu113/ 113. 获得简单的输入的方法 ShellPromptForResponse 的使用 http://www.lab-z.com/stu114/ 114. CHAR16 大小写转换 http://www.lab-z.com/stu115/ 115. zlib 的压缩功能 调用 zlab 来进行压缩的例子 http://www.lab-z.com/stu116resetout/ 116. CTRL+ALT+DEL 输出字符 http://www.lab-z.com/stu117/ 117. Shell 下的 CPUID 工具 CPUID 工具 http://www.lab-z.com/rdrand/ 118. 新指令 RDRand 用一条指令生成随机数 http://www.lab-z.com/stu119/ 119. OVMF 的 SourceLevelDebug 在 OVMF 下进行 Source Level 的 Debug 的方法 http://www.lab-z.com/stu120uk/ 120. UEFI 下控制 USB 键盘 LED Shell 下对 USB 键盘发送 Command, 控制上面的 LED

http://www.lab-z.com/dpdemo/ 121. 解析 DevicePath 的例子 krishnalee(sssky307) 为我们提供的例子 http://www.lab-z.com/stu22/ 122. System Table 哪里来的 探究 System Table 在代码中的起源 http://www.lab-z.com/stu123noopt/ 123. NOOPT 编译问题 对于编译目标 NOOPT 的研究 http://www.lab-z.com/stu124rtb/ 124. Ready_To_Boot Event UEFI 下 正经 的在启动之前运行代码的写法 http://www.labz.com/stu125cpubreakpoint/ 125. CPUBreakPoint 研究 让 CPU 跳转到调试的宏 http://www.lab-z.com/stu126rt/ 126. ReturnAddress 研究 ReturnAddress 宏的研究 http://www.lab-z.com/stu127rdr/ 127. RDRAND 再研究 http://www.lab-z.com/asm2mach/ 128. 汇编到机器码的转换 http://www.lab-z.com/utrad/ UEFI Tips: 介绍一个新功能 :RamDisk UDK 中新加入的内存虚拟盘功能 http://www.lab-z.com/stu129/ 129. EFI_CPU_ARCH_PROTOCOL http://www.lab-z.com/stu130nt32/ 130. NT32 模拟器的 Debug Message 输出 运行 NT32 模拟器时输出 Debug 信息 http://www.lab-z.com/stu131/ 131. gbs 的 Stall 探究 http://www.lab-z.com/stu132rd/ 132. RamDisk Application 例子 编写一个 Shell Application 来创建 RamDisk http://www.lab-z.com/stu133/ 133. 再试验 EFI_CPU_ARCH_PROTOCOL http://www.lab-z.com/stu134/ 134. 多一个时间中断 再系统中再注册一个定时发生的中断 http://www.lab-z.com/stu135/ 135.EFI_CPU_ARCH_PROTOCOL 注册 INTx 给系统添加一个 Interrupt 服务 http://www.lab-z.com/stu136/ 136. 哪里来的的 memset http://www.lab-z.com/stu137/ 137. 通过 BGRT 取得当前系统的 LOGO http://www.lab-z.com/stu138/ 138. Shell 下 BootOrder 的研究 Shell 下控制 BootOrder http://www.lab-z.com/stu139/ 139. 关于 Image DevicePath 的小实验 http://www.lab-z.com/stu40/ 140. ProtocolsPerHandle 的例子 http://www.lab-z.com/stu141r2s/ 141. Windows 重启变关机的实现 修改 ACPI Table 让 Windows 的重启操作变成关机操作 http://www.lab-z.com/stu142/ 142. UEFI 和 Arduino 的 HID 通讯 UEFI 和 Arduino 的结合 http://www.lab-z.com/stu143/ 143. Windows 下 BootOrder 研究 Windows 下控制 BootOrder http://www.lab-z.com/stu144/ 144. CryptoPkg 的使用 一个加密解密库的编译 http://www.lab-z.com/stu145sha256/ 145.Crypto 实现的 SHA256 http://www.lab-z.com/stu146/ 146.Grayoutif,Suppressif 和 Setup 联动的探索 http://www.lab-z.com/stu147bf/ 147. 先于 Windows 启动的 Application http://www.lab-z.com/stu148rt/ 148.UnicodeValueToString() 和 AsciiValueToString() 已经退休了 http://www.labz.com/stu149bignumber/ 149. 大数运算 http://www.lab-z.com/stugv/ 150.GetVariable 的追踪 如果你想实现 Windows 下修改 Setup 选项值, 可以看看这 4 篇文章 http://www.lab-z.com/svp/ 151.GetVariable 的追踪补遗 http://www.lab-z.com/stu152svw/ 152. 为什么 SetVariable 在 Windows 下不好用? http://www.lab-z.com/stugt/ 153. 用 GetFirmwareEnvironmentVariable 修改 Setup 选项 http://www.lab-z.com/disefi/ 154. 反编译一个 EFI http://www.lab-z.com/revmem/ 155. 系统保留内存探究 http://www.lab-z.com/stu156ep/ 156.UEFI 的表达式计算库 有用的表达式库 http://www.lab-z.com/formatmessage/ UEFI TIps: 格式化 GetLastError 结果的 FormatMessage http://www.lab-z.com/pcxdecoder/ 157.UEFI 下 PCX 的解码 解码 PCX 图片的方法 http://www.lab-z.com/uefipngdecoder/ 158.UEFI 下的 PNG 解码 解码 PNG 图片的方法 http://www.lab-z.com/sortuefi/ 159.UEFI 下的排序 http://www.lab-z.com/decodergif/ 160.UEFI 下的 GIF 解码 解码 GIF 图片的方法 http://www.lab-z.com/printa/ 161.Print 直接输出 ASCII 的 String 小技巧, 让 Print 直接输出 ASCII http://www.lab-z.com/stu162els/ 162.UEFI Shell 下的俄罗斯方块 很好的框架 http://www.lab-z.com/stu163rp/ 163. 替换已经存在 Protocol 中函数的实验 http://www.lab-z.com/stu164nt32open/ 164.NT32 环境下的 OpenFile 研究 介绍 OpenFile 最终是如何通过 Win32 API 来实现的 http://www.lab-z.com/stu165/ 165. 在 Application 中调用包裹的 Application( 上 ) 将一个二进制的 Application 转化为.h 的定义, 然后存放在另外一个 Application 中直接从内存加载执行

http://www.lab-z.com/stu166/ 166. 在 APPLICATION 中调用包裹的 APPLICATION( 下 ) http://www.lab-z.com/stu167/ 167.SHELL 下的二维码显示 移植了一个二维码的库, 能够实现 UEFI 下生成二维码 http://www.lab-z.com/stu168/ 168. SETUP 中替换字符串 某些情况下, Setup 中的字符串是来自另外的 Option, 这种情况下依然有机会对其进行修改 http://www.lab-z.com/stu169bmp/ 169. BMP 放在 EFI 文件中 ( 下 ) 如何将 BMP 作为资源文件放在 EFI Application 中 http://www.lab-z.com/stu170dbg/ 170. APPLICATION 中使用 DEBUG 宏 http://www.lab-z.com/stu171rsa1/ 171. UEFI 下的 RSA ( 上 ) RSA 的基本知识 http://www.lab-z.com/stursa2/ 172. UEFI 下的 RSA ( 下 ) UEFI 下实现 RSA 的操作 http://www.lab-z.com/stu173dumpacpi/ 173. UEFI SHELL 下的 ACPI DUMP 工具 http://www.lab-z.com/stu174snake/ 174. UEFI SHELL 下的贪吃蛇游戏 一个贪吃蛇游戏的实现 http://www.lab-z.com/stu175vbt/ 175. SHELL 下读取 VBT VBT 是 GOP 的配置文件, 通过这个工具可以读取当前系统中的 VBT http://www.lab-z.com/stumemset/ 176. MEMSET 的实现方法 http://www.lab-z.com/stu177ss/ 177. 修改 SETUP STRING ITEM 的 DEFAULT VALUE http://www.lab-z.com/stu178/ 178. UEFI 下面的 OPENSSL 签名 OPENSSL 签名验证的实现 http://www.lab-z.com/ecram/ 179. SHELL 下 EC RAM 读取工具 http://www.lab-z.com/gvbt/ 180. GETVBTDATA 取得 VBT 又一种读取 VBT 的方法 http://www.lab-z.com/stugt-2/ 181. GETTIME 研究 http://www.lab-z.com/stuchk/ 182. UEFI 下计算 CHECKSUM 的最简单方法 http://www.lab-z.com/stu183/ 183. SETJUMP() 和 LONGJUMP() http://www.lab-z.com/utps/ UEFI TIPS: PCIIO.READ 的问题 在使用 PCIIO.READ 的时候, 遇到了一个奇怪的问题, 为此进行了分析 http://www.lab-z.com/stu184mcr/ 184. 取得当前 MICROCODE VERSION http://www.lab-z.com/stu185printrax/ 185. 输出 RAX 值 将 RAX 寄存器输出到屏幕上 http://www.lab-z.com/stu186ntkey/ 186. NT32PKG 下面的按键 分析 NT32 模拟环境下按键信息的读取 http://www.lab-z.com/stu187asb/ 187. 一个奇怪的编译 BUG 一个编译期的奇怪错误提示 http://www.lab-z.com/stu188gdt/ 188. 保护模式下的 GDT http://www.lab-z.com/stu189rwmm0/ 189. READ&WRITE MMX0 MMX0 寄存器的读写 http://www.lab-z.com/stu190sri/ 190. SEGMENT REGISTERS IN 64 BITS MODE http://www.lab-z.com/stu191/ 191. GDT 中 1BIT 的差别 http://www.lab-z.com/stu192ini/ 192. UEFI SHELL 下实现 INI 文件的解析 移植了一个 INI 文件解析的库 http://www.lab-z.com/stu193idt/ 193. IDT 研究 在 SHELL 下显示当前系统 IDT http://www.lab-z.com/stu194efian/ 194. EFI 文件研究 (1) http://www.lab-z.com/stu195myret/ 195. 谁动了我的 RET 之前的研究中, 发现一个函数并没有使用 RET 返回, 针对这个问题作了一番研究 http://www.lab-z.com/stu196pasue/ 196. PAUSE 指令 介绍一个新的指令 :Delay http://www.lab-z.com/stu197stefi2/ 197. EFI 文件的研究 (2) EFI 文件加载在内存情况的研究 http://www.lab-z.com/stu198/ 198. SHELL 下中断和异常的处理代码 Shell 如何处理异常 http://www.lab-z.com/discac/ 199. 如何关闭 CACHE http://www.lab-z.com/stu200vc/ 200. EC 通过模拟 PS2 键盘的方式实现音量控制 http://www.lab-z.com/stu201aor/ 201. 直接取得函数返回地址 _AddressOfReturnAddress http://www.lab-z.com/stu202ioread/ 202. IOREAD 研究 http://www.lab-z.com/intru/ UEFI 下 RU.EFI 工具介绍 介绍 RU.EFI 的基本使用方法 http://www.lab-z.com/stu203cr0/ 203. CR0 概述 http://www.lab-z.com/memtest86/ MEMTEST86 EFI 版 UEFI 下测试内存的工具 http://www.lab-z.com/stu204nt32day/ 204.NT32 下动态查看 APPLICATION( 上 ) 用 NT32 模拟环境研究 EFI 文件的加载 http://www.lab-z.com/stu205/ 205.NT32 下动态查看 APPLICATION( 下 ) http://www.lab-z.com/stu20-2/ 206.EFI 文件研究 (3): 显示自定义字符串 在已有的 EFI 文件中插入显示自定义字符串的方法 http://www.lab-z.com/stu207/ 汇编语言编写 UEFI APPLICATION NASM 编写 UEFI Application http://www.lab-z.com/stu208wh/ 谁改动了我的文件头? http://www.lab-z.com/stu209subst/ 209. SUBST 命令 http://www.lab-z.com/wahw/ WINDBG 访问硬件

http://www.lab-z.com/wdbgacpi/ WINDBG 查看 ACPI TABLE 的操作 http://www.lab-z.com/stu210/ 210. 调用 CONOUT 的条件 ( 上 ) http://www.lab-z.com/stu211/ 211. 调用 CONOUT 的条件 ( 下 ) http://www.lab-z.com/stu212/ 212.WINPE 格式 :RDATA 节的作用 http://www.lab-z.com/stu213/ 213.EFI 的 WINPE 格式研究 分析了一下 EFI 文件的 Win PE 格式 http://www.lab-z.com/wdh/ Windows 下打开 HIPM 和 DIPM 的方法 http://www.lab-z.com/hdsave/ 关于几个硬盘省电技术的介绍 http://www.lab-z.com/windbgn/ WinDBG 调试 Notepad WinDbg 入门级别的例子 http://www.lab-z.com/qemua/ QEMU 的重新编译 ( 上 ) http://www.lab-z.com/msi/ Modern Standby 简介 ModernStandby 是 Intel 最近大力推广的系统省电功能 http://www.lab-z.com/phm/ PowerHouse Mountain 的安装 PHM 是调试 MS 的基本工具, 这里介绍了安装方法 ( 下载需要和 Intel 签署 NDA) http://www.lab-z.com/qemub/ QEMU 的重新编译 ( 下 ) http://www.lab-z.com/mspre/ ModernStandby 调试的准备 http://www.lab-z.com/winver/ 查看 Windows 版本命令 :WinVer http://www.lab-z.com/systeminfo/ SystemInfo 命令 http://www.lab-z.com/wpainst/ WPA 的安装 介绍 Windows Performance Analyzer 的安装 http://www.lab-z.com/spmc/ 查看 PMC Firmware 版本的工具 Shell 下查看当前 PMC 版本 http://www.lab-z.com/ps2led/ 214. Ps2 键盘的 LED 分析 http://www.lab-z.com/bsodsec/ Secure Boot 导致的蓝屏问题 http://www.lab-z.com/msresumetime/ 获得 ModernStandby ResumeTime 的方法 http://www.lab-z.com/audiopkg/ 215.AudioPkg 测试 让你的电脑能在 Shell 下播放音频发声 http://www.lab-z.com/winver-2/ Windows 版本对照表 http://www.lab-z.com/edk200202/ UEFI Tips: EDK2 Stable202002 新的 EDK2 202002 版本 http://www.lab-z.com/c2061err/ C2061 错误 写代码遇到了 C2061 错误 http://www.lab-z.com/nasmincerror/ Can't include "nasm.inc" error http://www.lab-z.com/winac/ Windows 下替换 ACPI Table 补遗 http://www.lab-z.com/wdtfins/ WDTF 安装器 http://www.lab-z.com/pcie2nvme/ M.2 NMVE PICE 转接卡 一些 M.2 NVME 硬盘可能会导致 MS 方面的问题, 这时候可以使用 NVME 转 PCIE 让其能在 PCIE Port 上工作起来便于测试 http://www.lab-z.com/installprot/ 216. InstallProtocolInterface 的简单研究 http://www.lab-z.com/gdi32lib/ EDK2 编译遇到无法 Link GDI32.LIB 的问题 http://www.lab-z.com/wdbgpep/ WinDBG 查看 PEP Table PEP Table 是支持 ModernStandby 的重要一环, 这里介绍如何使用 WinDBG 查看它 http://www.lab-z.com/wdbg/ WinDBG 分析键盘生成的 Dump 文件 http://www.lab-z.com/stu217/ 217.UEFI Shell 下读获取分区信息 http://www.lab-z.com/shellioapic/ 218.UEFI Shell 下读取 IoApic http://www.lab-z.com/winioapic/ 219.Windows 下的 IoApic http://www.lab-z.com/uefifromzero/ 推荐 从零开始的 UEFI 裸机编程 http://www.lab-z.com/edk202008/ EDK2 202008 来了 新的 EDK2 Release http://www.lab-z.com/msscp/ 220. 微软提供的 UEFI Shell 截图工具 这里介绍一个微软提供的 Shell 下的截图工具 http://www.lab-z.com/fasm/ 221.FASM 编译生成 EFI 用 FASM 汇编工具来生成 EFI 文件 http://www.lab-z.com/btg/ Boot Guard 简介 http://www.lab-z.com/bmplib/ 222.BmpSupportLib 新的 EDK2 Codebase 提供了一个 BMP 的显示 Lib http://www.lab-z.com/irdmrc/ Intel 平台减少 MRC Debug 信息的方法 MRC 是 Debug Message 的大户, 特别情况下如果需要减少数据量就可以从 MRC 下手 http://www.lab-z.com/stu233/ 223. 编写自己的 Shell 命令 ( 上 ) http://www.lab-z.com/step-to-uefi-224-224. 编写自己的 Shell 命令 ( 下 ) shell/ http://www.lab-z.com/memkno/ 关于 DDR4 内存的一些知识 从 FPGA 角度看 DDR4 http://www.lab-z.com/windbgnp/ http://www.lab-z.com/wmiccpuid/ WinDBG Remote 获得 Notepad 内容 WMIC ProcessorID 取得的 CPUID

http://www.lab-z.com/rmtnp/ Remote 修改 Notepad WinDBG 修改被调试机 Notepad 进程 http://www.lab-z.com/uefintfs/ UEFI 下的 NTFS 驱动 这个驱动能够帮助你在 Shell 下访问 NTFS 分区的数据 https://www.lab-z.com/vs15slv/ Vs2015 Source Level Debug WinHost https://www.lab-z.com/sizeofint/ sizeof(int)=? https://www.lab-z.com/qemuefi/ QEMU 下 SecureBoot 和 EFI 签名的测试 介绍如何在 QEMU 下打开 SecureBoot 以及使用签名出能够在 Shell 下运行的 EFI Application https://www.lab-z.com/winsbgscr/ WinDBG 读取 RTC 的 Script https://www.lab-z.com/csmechk/ 225.CSME 版本检查工具 介绍一个能够查看当前 IFWI 中 ME 版本的开源工具 https://www.lab-z.com/edk2romgen/ 226.EDK2 生成 ROM 最后的打包动作 ( 上 ) https://www.lab-z.com/2019libc/ 227.VS2019 EDK202008 下的 Libc 编译 https://www.lab-z.com/qemusetup/ 228.QEMU Setup 首页研究 研究如何在 QEMU 的 Setup 界面首页添加一行信息, 以及显示当前版本号是如何实现的 https://www.lab-z.com/qemumv/ 229. 继续研究修改 QEMU 显示的版本号 继续研究 OVMF Setup 界面中, 当前 BIOS 的版本号如何显示 https://www.lab-z.com/ovmffv/ 230.OVMF 一个 FV 的打包过程分析 https://www.lab-z.com/ovmfrom/ 231. 直接修改 ROM 中的版本号 直接使用工具来修改生成 ROM 中的 BIOS 版本号 https://www.lab-z.com/tpms/ 常见 X86 平台 TPM 相关缩写介绍 https://www.lab-z.com/zuartshell/ Kabylake PCH UART 测试工具 UEFI Shell 版 https://www.lab-z.com/nullmarc/ UEFI TIPS: 定义一个注释宏 https://www.lab-z.com/vcmacro/ VC 宏展开 https://www.lab-z.com/stu232/ UEFI Shell 下控制 USBNotifier USBNotifier 是一个 USB 设备, 上面有一个彩灯和蜂鸣器, 可以用来作为提醒器 这里介绍如何在 Shell 下控制这个设备 https://www.lab-z.com/acpicare/ Acpica 工具的重新编译方法 介绍如何重新编译 ACPICA 提供的工具 https://www.lab-z.com/vs2015poste/ VS2015 生成后事件 https://www.lab-z.com/ush/ UEFI Shell Helper 这是一个开源硬件工具, 方便你从 Windows 传输信息到运行着 UEFI Shell 的机器 https://www.lab-z.com/vpara/ 234. 不定参数函数的测试 https://www.lab-z.com/vcredefine/ VC 重复宏定义 Warning https://www.lab-z.com/espistu/ 再读 espi https://www.lab-z.com/ciscarisc/ CISC 和 RISC https://www.lab-z.com/ooo/ 乱序执行 (out-of-order execution) https://www.lab-z.com/regrename/ 寄存器重命名 (register renaming) https://www.lab-z.com/edk202108/ EDK2 202108 来了 介绍如何编译最新的 EDK2 202108 代码 https://www.lab-z.com/catterr3/ CATERR 介绍 https://www.lab-z.com/stu233sp/ 233. 屏幕分辨率研究 研究如何在 Shell 下调整屏幕分辨率 https://www.lab-z.com/coreins/ 从 Core 的设计来看 CPU 执行指令的流程 https://www.lab-z.com/stu235/ 235.UEFI Shell 下的变幻线 经典屏幕保护 : 变换线的 Shell 版本 https://www.lab-z.com/stu236fx/ 236.UEFI Shell 下浮点运算测试 https://www.lab-z.com/igfx/ 237. 从 QEMU 看显卡的初始化 以 QEMU 为例, 研究 UEFI 的显卡是如何进行初始化的