zzw_threadz22 2021-06-27 11:06 采纳率: 0%
浏览 51

【PCIE基地址疑问】lspci 查看PCIE基地址信息中包含 [virtual] 是什么意义

linux中用lspci 命令查看到有的PCIE设备基地址信息中  [virtual] ,这是什么意义呢?

Memory at a4200000 (64-bit, non-prefetchable) [virtual] [size=4K]

实际对应bar0的配置空间中的值为0,而信息中bar0基地址为a4200000 [virtual]

查询得的具体详细信息如下:

$ sudo lspci -s 02:00.0 -vxx

02:00.0 Unassigned class [ff00]: Alcor Micro AU6625 PCI-E Flash card reader controller

       Subsystem: Hewlett-Packard Company AU6625 PCI-E Flash card reader controller

       Flags: bus master, fast devsel, latency 0, IRQ 16

       Memory at a4200000 (64-bit, non-prefetchable) [virtual] [size=4K]

       Capabilities: [40] Power Management version 3

       Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit+

       Capabilities: [80] Express Endpoint, MSI 00

       Capabilities: [100] Latency Tolerance Reporting

       Kernel driver in use: alcor_pci

       Kernel modules: alcor_pci

00: ea 1a 25 66 04 00 18 00 00 00 00 ff 00 00 00 00

10: 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

20: 00 00 00 00 00 00 00 00 00 00 00 00 3c 10 aa 83

30: 00 00 00 00 40 00 00 00 00 00 00 00 ff 01 00 00

  • 写回答

1条回答 默认 最新

  • 项目花园范德彪 2023-08-27 13:30
    关注

    当使用 lspci 命令查看 PCIe 设备的信息时,如果在基地址信息中看到 [virtual] 标识,意味着该 PCIe 设备是一个虚拟设备,例如虚拟网卡、虚拟磁盘控制器等。

    PCIe 设备的基地址信息会告诉系统该设备的物理地址范围,以及与该设备相关联的中断号和内存映射等信息。而虚拟设备没有真实的物理地址,其基地址信息更多的是指向虚拟内存地址和中断号等信息,这些信息最终会转换为真实物理地址和中断号。

    因此,当看到基地址信息中有 [virtual] 标识时,说明该设备是虚拟设备,其地址和中断等信息可能不是真实的物理地址和中断,而是被虚拟化管理软件(如虚拟机软件)转换的虚拟地址和中断号。这对于系统管理员和开发人员了解 PCIe 设备的真实地址和性能特征等信息非常有帮助。

    评论

报告相同问题?

悬赏问题

  • ¥15 django项目运行报编码错误
  • ¥15 请问这个是什么意思?
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services
  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏
  • ¥15 模糊pid与pid仿真结果几乎一样
  • ¥15 java的GUI的运用
  • ¥15 我想付费需要AKM公司DSP开发资料及相关开发。
  • ¥15 怎么配置广告联盟瀑布流
  • ¥15 Rstudio 保存代码闪退