Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我想知道是否可以在 efi 应用程序中分配“物理地址”超过 4GB 的内存缓冲区?
前任。PC 上安装了 6GB DRAM,efi 应用程序分配了 4KB 缓冲区,其物理内存地址为 0x100000000(=4GB)
可以吗?
在 32 位平台上这是不可能的,即使地址扩展技术允许安装超过 4GB 的空间。这是因为要求所有 RAM 映射 1:1 物理:虚拟地址。
在 64 位平台上,这应该可以正常工作,只要没有愚蠢的特定于平台的固件错误阻止它。
一些早期的 x64 UEFI“bioses”忘记了实际映射 RAM > 4GB - 导致访问冲突错误,但在除 BIOS 兼容模式 (CSM) 之外的任何内容中实际经过正确验证的任何内容上,这都可以正常工作。