- 博客(7)
- 资源 (2)
- 收藏
- 关注
原创 UEFI ConnectController() 解读
ConnectController() Summary 为一个controller 连接一个或多个driver prototype typedef EFI_STATUS ConnectController ( IN EFI_HANDLE ControllerHandle, IN EFI_HANDLE *DriverImageHandle OPTI...
2015-01-19 22:11:33 4308 1
翻译 pci 配置空间详解之Base Addresses
为了使pci 设备有更强的功能,更方便的使用方法,pci 可以在在址空间去重定向pci devices.在system 开机的时候,与具体设备无关的软件必须去检测到这是一个什么设备,构建一个一致(consistent)的地址映射,还要检测这个设备有没有扩展rom. 下面的章节将会包括这些内容。1. Address MapsPower-up 软件(应该就是bios) 将系统
2015-01-15 19:45:09 3838
翻译 reset后的第一条指令
问题提出: 开机后第一条指令是在实模式,real address mode. 可是第一条指令是在FFFFFFF0处抓到的。那么问题来了,实模式可访问的地址窨是1M 。FFFFFFF0 是远远大于1M的,那Intel 是怎么做到的呢?首先把ia 32 architectures software developer manual翻开到 9.1.4The first instructi
2015-01-11 22:15:05 1723
原创 uefi bios代码中如何找到函数的实现?
写在最前,摘自 K&R The only legal operations on a structure are copying it or assigning to it as a unit, taking its address with & (读作ampersand), and accessing its members, 翻译成中文是这样的,对于一个结构体而言,唯一合
2015-01-04 20:25:36 4743
原创 for(;;)的解释
通常死循环会这样写for(;;) 无限循环理论上讲,任何一个循环语句都可以达到死循环的目的,比如 (代码取自udk2014)/** Executes an infinite loop. Forces the CPU to execute an infinite loop. A debugger may be used to skip past the loop a
2015-01-01 18:52:47 1784
翻译 怎么确认一台电脑是big-endian 还是little-endian?
假设我们使用的是一台32位机器。如果是little endian, 那么x在内存中是之样排列的 高内存 ----> +----+----+----+----+ |0x01|0x00|0x00|0x00| +----+----+----+----+ A | &x所以 (char*)(*x) == 1 如果是big endi
2015-01-01 17:46:53 2699
原创 locate ppi 详解
废话少说,先上代码** Locate a given named PPI. @param PeiServices An indirect pointer to the EFI_PEI_SERVICES table published by the PEI Foundation. @param Guid Pointer to GUID
2015-01-01 17:15:42 2654
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人