查找 PCI 配置

查找 PCI 配置

这一页, 图 6.1 显示了 PCI 配置示例,具有两条总线。

使用Linux(Ubuntu),是否可以获得实际主板的PCI配置?我的意思是:确定有多少条 PCI 总线,查找是否有 PCI-express 总线和桥接器,这样就可以画出类似于图 6.1 的图。

lspci给出了 PCI 设备的列表,但似乎没有明确显示连接和总线结构。

答案1

dmidecodelshw共同提供一个合理的图景。dmidecode,在正确配置的系统上(IE一个具有正确填充的 DMI 表),将列出物理插槽及其特性。例如,在我的系统上,我看到诸如

Handle 0x001C, DMI type 9, 17 bytes
System Slot Information
        Designation: SLOT7 PCI-E 2.0 X 1
        Type: x1 PCI Express
        Current Usage: In Use
        Length: Short
        ID: 0
        Characteristics:
                3.3 V is provided
                Opening is shared
                PME signal is supported
        Bus Address: 0000:07:00.0

Handle 0x0021, DMI type 9, 17 bytes
System Slot Information
        Designation: SLOT1 PCI 33MHz
        Type: 32-bit PCI
        Current Usage: In Use
        Length: Short
        ID: 5
        Characteristics:
                3.3 V is provided
                Opening is shared
                PME signal is supported
        Bus Address: 0000:09:00.0

这些名称可能非常详细;在这个特定的板上,物理插槽和电气功能被正确识别(例如 PCI-E 3.0 X8 (IN X16))。

lshw表示桥连接,其信息可以dmidecode通过总线地址与 进行匹配。这使得主板托管的桥与适配器托管的桥区分开来。 (例如,我的一个系统在 C226 主板上有两个 PCI 插槽,在主板上使用 PCI 桥;它还有一个 ATTO SCSI PCI Express HBA,它在卡本身的另一个 PCI 桥后面使用两个 PCI 托管芯片的lshw输出并不容易区分这两种情况,但与dmidecode的输出结合起来很明显。)

相关内容