从运维角度概述PCI总线和lspci输出内容

PCI总线

PCI(peripheral component interconnect,外围设备互联)总线由PCI Host Bridge(PCI主桥)或者PCI Bus Bridge(PCI桥)管理,用来连接各类PCI设备,如声卡、网卡和PCI桥等。在一个处理器系统中,可以通过PCI桥扩展PCI总线,形成PCI总线树型结构,如下图:Bus0上的Device2是一个PCI桥,由该桥拓展出Bus1。
在处理器系统中有几个HOST主桥,就有几棵PCI总线树,而每一棵PCI总线树都与一个PCI Domain(PCI总线域)对应,下图中就是一个总线域。
每个PCI设备都有一个vendor ID(供应商号)和device ID(设备号)
注意这里出现了几个名词:Host Bridge, PCI Bridge, PIC Domainverdor ID, device ID
在这里插入图片描述

lspci输出含义解析

lspci用来显示所有的PCI总线和连接在PCI总线上的设备,在一台linux设备上敲一敲lspci,通常得到类似如下信息

[root@k8s-master ~]# lspci
00:00.0 Host bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (rev 01)
00:01.0 PCI bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge (rev 01)
00:07.0 ISA bridge: Intel Corporation 82371AB/EB/MB PIIX4 ISA (rev 08)
00:07.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01)
00:07.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 08)
00:07.7 System peripheral: VMware Virtual Machine Communication Interface (rev 10)
00:0f.0 VGA compatible controller: VMware SVGA II Adapter
00:10.0 SCSI storage controller: Broadcom / LSI 53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI (rev 01)
00:11.0 PCI bridge: VMware PCI bridge (rev 02)
00:15.0 PCI bridge: VMware PCI Express Root Port (rev 01)
00:15.1 PCI bridge: VMware PCI Express Root Port (rev 01)
00:15.2 PCI bridge: VMware PCI Express Root Port (rev 01)
00:15.3 PCI bridge: VMware PCI Express Root Port (rev 01)
00:15.4 PCI bridge: VMware PCI Express Root Port (rev 01)
00:15.5 PCI bridge: VMware PCI Express Root Port (rev 01)
00:15.6 PCI bridge: VMware PCI Express Root Port (rev 01)
00:15.7 PCI bridge: VMware PCI Express Root Port (rev 01)
00:16.0 PCI bridge: VMware PCI Express Root Port (rev 01)
00:16.1 PCI bridge: VMware PCI Express Root Port (rev 01)
00:16.2 PCI bridge: VMware PCI Express Root Port (rev 01)
00:16.3 PCI bridge: VMware PCI Express Root Port (rev 01)
00:16.4 PCI bridge: VMware PCI Express Root Port (rev 01)
00:16.5 PCI bridge: VMware PCI Express Root Port (rev 01)
00:16.6 PCI bridge: VMware PCI Express Root Port (rev 01)
00:16.7 PCI bridge: VMware PCI Express Root Port (rev 01)
00:17.0 PCI bridge: VMware PCI Express Root Port (rev 01)
00:17.1 PCI bridge: VMware PCI Express Root Port (rev 01)
00:17.2 PCI bridge: VMware PCI Express Root Port (rev 01)
00:17.3 PCI bridge: VMware PCI Express Root Port (rev 01)
00:17.4 PCI bridge: VMware PCI Express Root Port (rev 01)
00:17.5 PCI bridge: VMware PCI Express Root Port (rev 01)
00:17.6 PCI bridge: VMware PCI Express Root Port (rev 01)
00:17.7 PCI bridge: VMware PCI Express Root Port (rev 01)
00:18.0 PCI bridge: VMware PCI Express Root Port (rev 01)
00:18.1 PCI bridge: VMware PCI Express Root Port (rev 01)
00:18.2 PCI bridge: VMware PCI Express Root Port (rev 01)
00:18.3 PCI bridge: VMware PCI Express Root Port (rev 01)
00:18.4 PCI bridge: VMware PCI Express Root Port (rev 01)
00:18.5 PCI bridge: VMware PCI Express Root Port (rev 01)
00:18.6 PCI bridge: VMware PCI Express Root Port (rev 01)
00:18.7 PCI bridge: VMware PCI Express Root Port (rev 01)
02:00.0 USB controller: VMware USB1.1 UHCI Controller
02:01.0 Ethernet controller: Intel Corporation 82545EM Gigabit Ethernet Controller (Copper) (rev 01)
02:02.0 Multimedia audio controller: Ensoniq ES1371/ES1373 / Creative Labs CT2518 (rev 02)
02:03.0 USB controller: VMware USB2 EHCI Controller

用其中最常见的以太网卡信息来剖析下各个参数的含义

02:01.0 Ethernet controller: Intel Corporation 82545EM Gigabit Ethernet Controller (Copper) (rev 01)
  • 02:01.0 – 首先一个PCI设备在PCI总线中的位置可以用domain: bus: slot: function来表示,分别代表总线域(0x0000-0xffff),总线号(0x00-0xff),槽位号(0x00-0x1f,一般一个槽位号就是指一个设备号),功能号(0-7, 一个pci 物理设备可以实现多个功能设备,且逻辑功能相互独立,其实就是硬件虚拟化),所以这里的02:01.0指(lspci默认省略总线域0000,可以加参数-D显示)总线域为0000,bus总线号为02,槽位号为01,功能号为0
    在这里插入图片描述

  • Ethernet controller – 指设备类型,设备类型包括Device classes,Device subclasses,Program interfaces(一般省略),通过加参数 -nn 可以看到Ethernet controller对应的设备类型号为0200,其中02指Device classes,00指Device subclasses,通过The PCI ID Repository在线网站也可以查看

[root@k8s-master ~]# lspci -nn -D -s 0000:02:01.0
0000:02:01.0 Ethernet controller [0200]: Intel Corporation 82545EM Gigabit Ethernet Controller (Copper) [8086:100f] (rev 01)
  • Intel Corporation 82545EM Gigabit Ethernet Controller (Copper) – 如上,对应了供应商号8086和设备号100f,通过device hunt在线网站也可以查看

最后来看看这个pci树是个啥样,其实很简单,就是一个总线域0000,两个bus总线00和02,00总线下有9个设备,02总线下有4个设备

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

田土豆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值