UnifiedBus API接口大全从URMA到UBS Engine的完整参考【免费下载链接】UnifiedBus-docsDocumentation Repository Dedicated to UnifiedBus项目地址: https://gitcode.com/openeuler/UnifiedBus-docs前往项目官网免费下载https://ar.openeuler.org/ar/UnifiedBus灵衢总线是openEuler生态中的关键技术组件提供高效的设备虚拟化与直通能力。本文将系统梳理从URMA设备到UBS Engine的核心接口配置与使用方法帮助开发者快速掌握UnifiedBus的技术细节。一、UB控制器核心配置接口1.1 控制器基础定义与约束UB控制器是管理设备连接的核心组件支持灵活的拓扑结构与多路径访问。关键约束包括单个VM最多支持1个UB控制器单个控制器最多支持256个port需确保HostOS和GuestOS均支持灵衢总线驱动1.2 XML配置接口详解完整配置示例controller typeub index0 modelubc ports num10/ alias nameua-ubc0/ source businstance guidcc08-a120-0-0-000000-0000000000000123/ /source address typeub eid0x1 guidcc08-a120-0-2-000000-0000000000000123/ /controller关键参数说明参数名说明取值是否必配controller.type控制器类型标识ub是controller.ports.num端口数量配置[1, 256]默认128否controller.source.businstance.guid主机总线实例标识需在物理UB clan域内唯一是二、URMA设备直通接口2.1 支持设备类型与前置条件当前仅支持Hi1650 UDie内集成的iDev URMA设备使用前需确认Host/Guest OS支持灵衢总线驱动开启Host OS内核IOMMU和UMMU功能虚拟机必须配置大页内存2.2 设备直通操作接口步骤1查询设备信息# 列出UB设备 lsub # 获取设备GUID cat /sys/bus/ub/devices/[设备编号]/guid步骤2创建BusInstancesetub -b create -g [控制器businstance guid] -e [管控面分配eid] -u [管控面分配upi]步骤3绑定设备与驱动# 解绑现有驱动 echo [设备编号] /sys/bus/ub/devices/[设备编号]/driver/unbind # 绑定vfio-ub驱动 echo vfio-ub /sys/bus/ub/devices/[设备编号]/driver_override echo [设备编号] /sys/bus/ub/drivers_probe2.3 直通设备XML配置接口hostdev modesubsystem typeub iommufd1 driver namevfio/ source address guidcc08-a002-0-2-000000-0000000000000001/ /source /hostdev三、UMMU内存管理接口3.1 UMMU功能与约束UMMU(UB内存管理单元)实现UB总线地址到物理地址的转换关键特性依赖iommufd机制与UB控制器数量一一对应使用UB直通设备时为必选组件3.2 UMMU配置接口iommufds1/iommufds devices iommu modelummu /iommu /devices四、GUID格式规范接口设备全局唯一标识遵循标准格式VendorId-DeviceId-Version-Type-Reserved-SequenceNumber字段名称比特位置说明Vendor ID127:112由UB协议管理组织分配Device ID111:96厂商定义的设备身份编码Sequence Number63:00部署环境中的唯一序列号五、常用管理工具接口5.1 设备查询工具lsub列出系统中的UB设备lsub -b查询BusInstance信息5.2 配置管理工具setubUB总线实例管理工具创建实例setub -b create -g [guid] -e [eid] -u [upi]绑定设备setub -b bind -d [device_guid] -g [businstance_guid]六、典型应用场景配置6.1 虚拟机UB设备直通完整流程配置UB控制器 → 2. 创建BusInstance → 3. 绑定URMA设备 → 4. 配置UMMU → 5. 启动虚拟机6.2 关键配置文件路径设备GUID/sys/bus/ub/devices/[设备编号]/guid总线实例/sys/bus/ub/instance驱动绑定/sys/bus/ub/drivers_probe通过以上接口开发者可以构建完整的UnifiedBus应用系统实现从设备发现、配置到直通使用的全流程管理。建议结合官方文档进一步深入学习各组件的高级特性与最佳实践。【免费下载链接】UnifiedBus-docsDocumentation Repository Dedicated to UnifiedBus项目地址: https://gitcode.com/openeuler/UnifiedBus-docs创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考