我希望将ROM中的二进制代码制成Linux中的常规文件。那么怎么做。
还有ROM访问的内存地址?

最佳答案

可以读取ROM BIOS内容。


当您的代码不在Linux等保护模式下时
例如,当您处于引导模式时。那时ROM BIOS内容在内存中的0x000F0000地址处-看一下IBM PC系统体系结构的内存映射:http://wiki.osdev.org/Memory_Map_(x86)。因此,您可以直接从内存中复制所需的所有内容。


如果您仅需要ROM BIOS内容来学习,则可以使用BIOS转储实用程序-其中有很多。

您可以检查此实用程序biosd enter link description here ecode

还请flashrom选中此实用程序。如果您的系统受支持,则可以通过发出以下命令来读取BIOS内容

flashrom -r outputfile


另一个实用程序是dmidecode

dmidecode -t bios


无需dmidecode即可从C:0000到F:FFFF读取内存

示例命令:

dd if=/dev/mem bs=1k skip=768  count=256 2>/dev/null | strings -n 8

关于linux - 如何从Linux Shell访问BIOS ROM二进制文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43275677/

10-13 08:42