2

我想知道当新设备连接到 PCI 总线时,谁首先填充了 PCI 的特定设备的配置空间。我知道 bios 和操作系统都可以配置 PCI 空间,但是谁将设备的信息提供给它们两者。

4

1 回答 1

3

PCI 配置空间的只读字段,标识设备及其功能,是设备内置的,不是由软件填充的。

一些字段,例如 BAR,由 BIOS 配置,作为其设置系统地址映射的职责的一部分。其余字段由操作系统或设备驱动程序编程。(如果设备可用于引导系统,BIOS 也可能有该设备的驱动程序。)

这三个软件组件(BIOS、操作系统和驱动程序)的决定基于其设计者内置到软件中和/或系统安装程序或用户配置的规则和策略。例如,BIOS 设置菜单通常具有控制 BAR 区域放置位置的设置。在 Windows 中,用于配置设备的信息可能来自注册表。

于 2017-12-04T01:14:29.537 回答