PCIe的配置空间
PCIe的配置空间(Configuration Space)和BAR空间(Base Address Register Space)是由BIOS进行配置和分配的,而不是由操作系统申请的。
在启动时,BIOS会扫描PCIe设备并为每个设备分配一个唯一的地址空间。这个地址空间包括了设备的配置空间和BAR空间。其中,配置空间用于存储设备的配置信息,如设备ID、厂商ID、中断号等。而BAR空间则用于映射设备的I/O端口和内存地址。
当操作系统启动后,它可以通过读取配置空间中的信息来了解设备的属性和功能。此外,操作系统还可以使用BAR空间来访问设备的I/O端口和内存地址,从而与设备进行通信。
需要注意的是,操作系统只能使用已经分配给它的地址空间。如果需要更多的地址空间,操作系统需要请求BIOS重新分配地址空间。