(我看到我的一个实际上没有回答“simics使用的BIOS文件在哪里?”问题,所以我重新命名了上一个问题,并把这个问题提出来,使它在这里成为独立的。)
我可以看到默认的“targets\qsp-x86\First步骤s.simics”调用的BIOS代码,只需从一开始就逐步通过调试器。但是,如果我想看到完整的二进制文件,是否有一个特定的文件可以查看?
发布于 2021-09-08 00:02:05
在四处搜索时,我发现了以下文件夹:
C:\Users\yourusername\AppData\Local\Programs\Simics\simics-qsp-x86-6.0.44\targets\qsp-x86\images
该文件夹内有以下3个文件:
SIMICSX58IA32X64_1___bp_r.fd
SIMICSX58IA32X64-ahci.fd
闪光灯。箱子
SIMICSX58IA32X64_1___bp_r. fd和SIMICSX58IA32X64-ahci.fd在开始时都有UEFI文件头,在末尾有一个看似的BIOS入口点。闪光灯。bin似乎有一个闪存描述符的占位符,该占位符将在闪存的开头,但大部分是空的。因此,我相信英特尔基本上要么将这些连接在内存中,要么可能只是使用spi。因为它是一个虚拟的MCH/ICH,所以也允许使用“软带”配置。
发布于 2021-09-10 08:03:01
您可以在主板图像上检查"bios“属性:
simics> board.mb->bios
"%simics%/targets/qsp-x86/images/SIMICSX58IA32X64_1_0_0_bp_r.fd"您可以指定由bios_image脚本参数使用的BIOS映像到qsp-Clearlinux.simics脚本。
脚本的帮助信息:
$ ./simics -h targets/qsp-x86/qsp-clear-linux.simics
System:
bios_image - existing file or NIL
BIOS file.
Default value:
"%simics%/targets/qsp-x86/images/SIMICSX58IA32X64_1_0_0_bp_r.fd"您可以像这样使用自己的BIOS运行:
$ ./simics -e '$bios_image=my-bios.bin' targets/qsp-x86/qsp-clear-linux.simics发布于 2021-09-10 09:25:18
现在,BIOS与其他一些事情的处理并不完全一致。通常在Simics中,磁盘和类似的东西都是图像。您可以使用list-persistent-images列出它们,并使用lookup-file解析位置。
simics> list-persistent-images
┌─────────────────────┬────────────┬───────────────────────────────────────────────────────┐
│Image │Unsaved data│File(s) (read-only/read-write) │
├─────────────────────┼────────────┼───────────────────────────────────────────────────────┤
│board.disk0.hd_image │ no│%simics%/targets/qsp-x86/images/cl-b28910-v2.craff (ro)│
│board.disk1.hd_image │ no│ │
│board.mb.sb.spi_image│ yes│%simics%/targets/qsp-x86/images/spi-flash.bin (ro) │
└─────────────────────┴────────────┴───────────────────────────────────────────────────────┘
simics> lookup-file "%simics%/targets/qsp-x86/images/spi-flash.bin"
"/disk1/simics-6/simics-qsp-x86-6.0.47/targets/qsp-x86/images/spi-flash.bin"QSP中的BIOS只是直接加载到目标内存中执行。这是为了方便起见而作弊。
https://stackoverflow.com/questions/69095622
复制相似问题