RJS*_*h92 4 bios memory computer-architecture rom installation
BIOS 扩展(选项 ROM)如何工作?我知道已安装的设备可能有自己的 BIOS,可以为系统添加功能,但我不确定它们是如何设置的。
我一直在阅读以下地址范围 0x0C0000 到 0x0F0000 被使用,但我不明白这是用来做什么的。就好像 ROM 存储在这些地址一样,但我不知道它是如何工作的。如果您安装了 2 个设备,它们都预期在 0x0C0000 上怎么办?
然后BIOS跳转到option ROM并从那里开始运行,我的下一个问题是当ROM写入中断向量表并挂钩一个指向自身的中断时,它指向什么地址?
例如,在 VGA 卡上,它会将 INT 10h 连接到什么地址?
还是整个选项 ROM 被映射到 0x0C0000 到 0x0F0000 之间的区域,而 IVT 将指向此范围内的某个地方?
我知道这是关于不再使用的旧技术(例如使用中断),但我对它们的工作方式很感兴趣。
如果有人可以帮助回答上述问题或仅提供简要概述,将不胜感激,
谢谢
在 IBM PC 时代,使用 ISA 总线,每个设备只需使用不同的地址。通常,他们有硬件跳线或 DIP 开关,您可以配置它来更改地址以避免冲突。随着 PCI 总线的出现,系统 bios 会自动配置硬件地址,以便为每个设备分配一个唯一的地址。
如果 oprom 钩住一个中断,它会指向 oprom 所在的分配地址中的一个地址。在 VGA bios 的情况下,通常在 0xC0000 块内。使用 msdos 调试器,您可以检查中断向量表以查看入口点,并开始反汇编那里的指令以查看它们做了什么。
| 归档时间: |
|
| 查看次数: |
5497 次 |
| 最近记录: |