🏺

瓶子的跋涉

=YuHeShui=

置顶文章

UEFI概述

UEFI概述

BIOS阶段划分 SEC: Security(安全) : 处理平台重事件,创造一个临时的内存区(此时内存还未初始化),在系统中作为一个可信的root,传递信息到PEI PEI : pre-efi initialization(预EFI初始化):初始化一些永久的内存HOBS(hand-off BLoc…
more...
C++泛化程序设计

C++泛化程序设计

泛型程序设计 编程不依赖于具体数据类型的程序 将算法从特定的数据结构中抽象出来,成为通用的C++的模块为泛型程序设计奠定关键基础 概念 在C++ STL库中用\"概念"来界定具备一定功能的数据类型 将“可以比大小的所有数据类型\(有比较运算符)“这一概念记为Comparable 将”具有共有的复制构…
more...

分类

最新文章

Qt实现WinIO

Qt实现WinIO

WinIO头文件 函数 初始化 本函数初始化WioIO函数库。 必须在调用所有其他函数之前调用本函数。 关闭WinIO 在内存中清除WinIO库,必须在中止函数之前或者不需要WinIO库时调用 读 从一个输入或输出端口读取一个字节/字/双字数据 写 将一个字节/字/双字的数据写入输入或输出接口 物理…
more...
寄存器调试工具RU&RW的使用

寄存器调试工具RU&RW的使用

RU工具入口 RU是AMI James Wang ,其中包括IA32 X64版本的Ru.EFI和一个 Windows 版本的 Rw.EXE。 U盘格式需要是Fat32格式 将 Ru文件 当道U盘根目录 将对应的 shell文件 放到efi/boot/目录下 点击Delete进入 BIOS ,密码 统…
more...
BIOS工程模块UEFI

BIOS工程模块UEFI

包:是一组模块及平台描述文件(.dsc文件),包声明文件(.dec文件)组成的集合。 模块(可执行文件,即.efi文件)像插件一样可以动态地加载到UEFI内核中。 每个成功模块由元数据文件(.inf)和源文件(有些情况包含.efi文件)组成。.inf类似与Linux下得Makefile,.dsc文件…
more...
EDK2入口函数

EDK2入口函数

一个简单的UEFI程序,至少包含两个部分 C程序源文件 : 用来实现具体功能,在复杂程序中源文件可能包含:C/C++源代码,.asm汇编文件(.s汇编文件,uin资源文件(字符串资源文件)和.vfr资源文件) INF元数据文件用来编译代码 入口函数返回值类型EFISTATUS 在UEFI中基本所有的…
more...
C指针与操作寄存器方法

C指针与操作寄存器方法

在UEFI中主要使用函数指针来进行复制与交互,使用结构体复制的形式进行隐私函数实现与函数指针赋值,在系统传感器信息以及硬件资源设备进行获取时,通过操作寄存器的形式进行获取是一个理想的方案,如何使用寄存器来操作应将的常用使用方法,异或,取反,位域等操作。
more...
EDK2安装与双系统

EDK2安装与双系统

下载ubuntu系统 在清华大学镜像站 点击获取下载链接(IOS) 选择你要下载的Linux系统 设置U盘 下载Rufus 启动文件之后,选择自己的U盘,并选择自己下载好的ubuntu系统 点击开始 选择推荐,点击Ok 将会清理U盘数据,点击确认 等待完成 压缩磁盘文件 点击win键 输入磁盘管理,…
more...
BIOS与系统启动

BIOS与系统启动

知识储备 C语言 C++ 汇编 Linux 汇编部分补充 数据描述符 AX累加器:用到最多最频繁,AX,AH和AL在乘,除法等操作中有专门的用途。 BX基址寄存器: 用于存放偏移地址 CX为计数寄存器:在循环操作中做计数器用,用于控制循环程序的执行次数 DX数据寄存器:在乘,除法及I/O端口操作时专…
more...
STL强化

STL强化

面向对象三大特征 封装是指将数据和行为组合成一个整体,对外部隐藏内部的实现细节,只提供必要的接口。封装可以保护数据的安全性,降低代码的复杂度,提高代码的可维护性。C++通过private,protected,public关键字来控制成员变量和成员函数的访问权限 继承是指子类可以继承父类的属性和方法,…
more...
做题追溯02

做题追溯02

深拷贝和浅拷贝 浅拷贝就是将源对象的值拷贝给当前对象,两者指向的还是同一地址,对一个对象的修改可能会影响到另一个对象。 深拷贝是 一种对象拷贝,它会创建一个新的对象,并将原始对象中的所有数据成员复制到新的对象中,包括多态分配内存。原始对象和新的对象是完全独立的,对一个对象的修改不会影响另一个对象。…
more...
做题追溯

做题追溯

typedef typedef并不是简单的宏替代。 定义一种类型的别名 定义struct结构体别名 用typedef来定义与平台无关的类型 为复杂的声明定义一个简单的别名,表示的是一个指向函数的指针 用typedef可以定义各种类型别名,但不能定义变量 使用typedef便于程序的通用 用typed…
more...