我希望将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/