SR-IOV 设备的 PF 驱动程序用于管理具有 SR-IOV 功能的设备的物理功能 (Physical Function, PF)。SR-IOV 规范中定义了支持 SR-IOV 功能的 PCI 功能。PF 包含 SR-IOV 功能结构,用于管理 SR-IOV 功能。PF 是全功能的 PCIe 功能,可以像其他任何 PCIe 设备一样进行发现、管理和处理。PF 拥有完全配置资源,可以用于配置或控制 PCIe 设备。PF 驱动程序具有以下特征:
仅在根域中可见
可能有也可能没有数据移动功能。PF 驱动程序即使在 SR-IOV 模式下也应该正常工作。
通过 Oracle Solaris IOV 框架提供的 API 控制 SR-IOV 功能的启用和禁用。
要为给定的 PF 配置的 VF 数量是由系统管理员决定的。此数值在 Sparc OVM 平台上的计算机描述符 (Machine Descriptor, MD) 中定义,或者在裸机环境中的配置文件中定义。
PF 驱动程序在连接阶段通过借助 DDI 接口调用 Oracle Solaris IOV 框架来启用 VF。如果 PF 驱动程序在连接过程中未启用 VF,只要驱动程序回调标志指示支持具有 IOV 功能的驱动程序,Oracle Solaris IOV 框架在连接后将立即尝试配置 VF。
PF 可以通过特定于设备的机制分别启用和禁用每个关联的 VF。