《麒麟软件有限公司资深研发工程师张云飞:“嵌入式虚拟化技术探索及实践”.pdf》由会员分享,可在线阅读,更多相关《麒麟软件有限公司资深研发工程师张云飞:“嵌入式虚拟化技术探索及实践”.pdf(26页珍藏版)》请在三个皮匠报告上搜索。
1、嵌入式虚拟化技术探索及实践嵌入式虚拟化技术探索及实践世 界 级 操 作 系 统 中 国 品 牌世 界 级 操 作 系 统 中 国 品 牌麒麟软件 张云飞目录麒麟软件工业OS01麒麟软件嵌入式虚拟化产品02嵌入式虚拟化技术探索03嵌入式虚拟化应用案例0401麒麟软件工业OS银河麒麟工业操作系统面向工业领域DCS/SCADA/SIS/PCS等工业控制系统上位机、服务器,提供高效图形显示、高效数据处理、可靠人机交互、RAS增强的计算工业服务器操作系统产品,保障工业控制系统可靠、稳定运行。工业生产上位机场景 面向工业领域MBSE/EDA/CAD/CAE/CAM/CAPP等大型工业工具软件,提供异构算力
2、支持、高精度计算、高效图形渲染、高性能并行计算工业服务器操作系统产品,保障工业装备研制安全。工业研发设计场景 银河麒麟高级服务器操作系统(工业版)工业数采、控制、监控、HMI场景面向工业领域工业数采、控制、监控及HMI场景,如PLC、CNC、GMC、IPC、XPU、机具等,提供实时可靠、安全可信、工业协议支持的工业桌面/嵌入式操作系统产品,满足工业现场需求。银河麒麟桌面操作系统(工业版)产品路线银河麒麟通用操作系统(服务器、桌面)银河麒麟工业操作系统(服务器、桌面)基础特性增强工业特性补充特定场景优化可靠增强RAS能力、故障隔离恢复能力、原子更新能力、高效诊断观测、运维管理实时增强打造实时虚拟
3、化、实时补丁能力,实现方案级强实时能力工业互联打造工业场景AI软件栈支持能力;打造工业现场、工业有线、工业无线、物联网协议支撑能力硬件兼容国产CPU芯片、显卡、板卡、外设、终端、工控机、服务器、工作站等工业部件与设备的深度适配高效场景应用高性能计算、桌面UI优化、SDK、灵活裁剪与定制、场景垂直优化面向能源、电力、制造等工业场景需求,依托银河麒麟通用操作系统能力,构建具备工业场景能力的安全可信、实时可靠、泛在互联、绿色智能的工业服务器、桌面操作系统。银河麒麟桌面操作系统(工业版)银河麒麟桌面操作系统(工业版)是面向工业控制、数采、显示等场景的安全、实时、可靠桌面操作系统,支持X86、ARM、L
4、oongArch、RISC-V架构,可满足工控机、机具、HMI等工业场景对操作系统安全可信、实时可靠的需求。银河麒麟桌面操作系统(工业版)是什么?03实时可靠04工业互联05高效场景应用01基础特性02生态广泛灵活定制轻量UI分域虚拟化物联网、工业互联网协议支持实时性增强掉电保护、故障隔离CPU桥片GPU内核性能安全实时性增强-Linux内核实时增强技术进程休眠等待中断进程运行内部异常时钟中断外部中断中断延t1中断处理顶半部中断处理底半部核心调度器处理执行底半部唤醒等待进程进程上下文切换底半部延迟t2调度延迟t3中断处理线程化技术实时调度策略技术CPU隔离技术和中断亲核性技术 临界区可抢占技术
5、 强制抢占技术 高精度定时技术 优先级继承技术Linux内核实时增强Linux实时性改造:基于内核可抢占技术、中断处理线程化技术、高精度定时技术和实时调度技术等,提高任务的抢占和调度能力,使关键性任务的调度延迟从毫秒级提升到微秒级。基于银河麒麟桌面操作系UKUI,通过功能裁剪、资源精简、参数和代码调优等方式,构建轻量桌面环境,提升桌面启动及响应速度,降低CPU、内存等资源占用量,在保证使用体验一致性的前提下,系统可以在工控芯片上更流畅的运行,即保持了通用桌面的体验,又满足了工业控制场景下桌面环境的运行要求高效场景应用-轻量UI技术采用“分域虚拟化+多域隔离”的架构,通过实时和非实时操作系统的混
6、合部署方式,兼得Linux的生态和RTOS的实时能力,实现物联网及工业互联网应用的泛化支持。高效场景应用-分域虚拟化技术多核CPU|可信计算基分域虚拟化一体化内生安全体系域间通信实时域实时LinuxRTOSBare-Metal功能域轻量UI.银河麒麟桌面操作系统(工业版)原子升级工业中间件SDK实时增强可靠性提升工控协议IPC HMI PLC CNC GMC XPU KIOSKS02麒麟软件嵌入式虚拟化产品麒麟软件嵌入式虚拟化产品基于RUST语言实现嵌入式分域虚拟化Hypervisor-Kvisor。他是基于硬件虚拟化来实现的一个很薄的虚拟化层。以ARMv8为例,Kvisor运行在EL2异常级
7、别。通过EL2层的更高管理权限来实现对客户机的控制。硬件资源隔离功能虚拟化资源分配实时性能Kvisor的硬件分域虚拟化平台上,每个域可独立运行一个操作系统,各个域按需分配各种硬件资源实现了CPU虚拟化、内存虚拟化、IO虚拟化及中断虚拟化功能构建轻量级虚拟化层(Rust实现),对多核CPU以每个核为最小单元进行硬件资源的隔离并进行安全检查低虚拟化损耗,丰富的RTOS系统支持麒麟软件嵌入式虚拟化产品依托分域虚拟化技术能力,实现硬件资源隔离,支持操作系统混合部署。具备低开销、高实时和易维护的特点。在Kvisor的硬件分区虚拟化平台上,每个分区可独立运行一个操作系统,各个分区按需分配各种硬件资源。CP
8、U和IO设备在内的虚拟化资源可采用直通(passthrough)方式访问以保证实时性。Kvisor分域管理示意图Kvisor 架构图支持x86及ARM架构,支持PCI/PCIE/PCI bridge/ETH/I2C/CAN/SPI/UART等硬件资源的分域隔离。实时域支持 FreeRTOS、Zephyr、RTThread等RTOS。共享内存混合部署通讯机制性能测试共享内存混合部署通讯机制性能测试(序)03嵌入式虚拟化技术探索静态隔离和动态调度 静态隔离的性能、安全可靠性较好,所以工业场景很多情况下更适合静态隔离(成本不敏感,性能优先,持续性任务)。但这种方案的缺点是灵活性、可配置性较差,硬件共
9、享实现困难,导致整个系统的资源利用率差。动态调度可以调整虚拟机的资源分配,确保资源的较高利用。避免资源浪费,提高系统整体效率。例如在AI应用场景中,通过虚拟化技术,可以动态调整虚拟机的资源配置(如CPU、内存),以适应不同AI任务的计算需求,实现资源的最优利用。适合成本敏感,间歇性任务。动态和静态相结合方案 动态调度+静态隔离相结合方案(非实时域动态调度,实时域静态绑定)ARM下设备直通-内存 传统的虚拟化软件中,对ARM平台下的设备直通支持不够完善,尤其是pcie设备的直通功能。无IOMMU嵌入式设备内存直通完善ARM下设备直通-中断PCIE设备中断直通 INTX中断转换 VIFO中断转发(
10、1 1)(1 1)(2 2)(3 3)(4 4)MSI/MSI-X中断直通 Hypervisor中维护客户机虚拟pci总线 为客户机生成虚拟ITS设备,逻辑映射ITS的三个表内容:Device TableInterrupt Translation tablesCollection TablesARM Generic Interrupt ControllerArchitecture Specification虚拟化下调频功能 虚拟化下调频存在问题:负载计算错误 调频驱动实现调频策略:Performance:保持最高频率以获取最佳性能。Powersave:使用最低频率以降低能耗。Ondemand:
11、根据负载动态调整频率。调频驱动负载计算调频策略Root domain 操作系统客户机n 电源频率外设调频驱动负载计算调频策略操作系统硬件无虚拟化下CPU调频虚拟化下CPU调频电源频率外设硬件Hypervisor 负载计算重定向 使用完整的host系统驱动虚拟机内核(包括RTOS)调试 客户机调试问题:对于定制客户机内核崩溃(系统初始化早期阶段)无调试手段 没有系统日志输出调试软件调试主机USB/网口仿真器CPU0目标机JTAGCPU1CPU2CPU3总线内存外设中断 解决方案:纯软件方案(无trace32硬件)hypervisor监管和控制 hypervisor信息采集虚拟机内核(包括RTOS
12、)调试 关键信息采集:CPU通用寄存器 系统控制寄存器(包括mmu、cache、gic等硬件)Hypervisor内部维护客户机状态数据结构 客户机系统关键数据结构(如log buffer)应用层EL0内核层层EL1stage1页表TTBRn_EL1外设Flash内存stage2页表VTTBR0_EL2外设Flash内存HypervisorHypervisor页表TTBR0_EL2gvaIPAPA 客户机页表反向查找04解决方案及应用案例应用案例-电力通信ttu 32路高速串口,波特率最高可达2M bps。32路高速串口由FPGA扩展板卡实现,板卡通过pcie接口与处理器相连,使用MSI-X中
13、断。传统方案:大量的IO操作和中断响应,导致系统效率降低,实时性不足。虚拟化方案:将Linux系统和RTOS系统混合部署到SOC上并将系统分为功能域和实时域。功能域运行Linux系统,负责设备常规的非实时业务,实时域运行RTOS系统进行高速串口的采集。RTOS系统:处理大量的串口数据(NAPI)Linux系统:虚拟串口 域间通信:将串口数据按照串口ID写到共享内存的对应通道。当共享内存通道中的数据达到一定阈值以后触发spi中断,通知Linux侧读取串口数据。应用案例-基站冗余备份 基站冗余备份是移动通信系统中确保服务可靠性和连续性的关键技术 传统方案:双机热备,即采用两台或多台硬件设备,处于主备模式。主基站负责正常业务处理,备用基站在主基站出现故障时接管其任务。嵌入式虚拟化技术:将基站单元分离为不同的虚拟机。在一个虚拟机出现问题时,可以快速切换到备份的虚拟机。动态调度:在正常情况下,备用虚拟机没有太多的CPU负载。这时可以通过调度虚拟化为其分配较少的CPU和内存资源。只有发生主备切换时才会被调度更多的硬件资源。5G基站建设全解,看完秒懂https:/ 谢