如何从linux shell访问BIOS ROM二进制文件

时间:2017-04-07 10:22:15

标签: linux shell bios firmware rom

我希望ROM中的二进制代码在linux中成为通用文件。那怎么做呢。 还有ROM访问的内存地址吗?

1 个答案:

答案 0 :(得分:1)

可以读取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

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

示例命令:

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