[软件诊断] 车用基础软件的内核和中间件核心技术---虚拟化

[复制链接]
查看137 | 回复0 | 2023-3-5 21:02:28 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册 |

x
我是穿拖鞋的汉子,魔都中坚持长期主义的工程师。
老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师:
人,既会因局限而不完美,又会因追求完美而感到幸福。有没有可能,局限是一种需要突破才能收获的幸福呢?所以,有没有可能,上帝公平地给每一个人以局限,其实是给我们幸福的机会?那么,现在这幸福的机会就在眼前,和你自身的局限那样显而易见,还等什么?勇敢去挑战吧!

本文主要分享关于车用基础软件的内核和中间件核心技术---虚拟化。
虚拟化
随着ICT(信息和通信技术)技术的发展,单SOC算力在性能上可以承担更多业务:
-> 网络带宽拓展及低时延;
-> 区分服务等特性使得业务部署;
-> 功能分配更加灵活.
比如在感知、融合、规划、控制、执行可分离解耦,汽车业务功能可分可合、可软件定义。电子电气架构从分布式架构到域集中式架构,再到中央集中式架构转变,分散的 ECU功能集成到域控制器甚至车载中央计算机,这就是多域融合。
汽车电子底层硬件不再是由单一芯片提供简单的逻辑计算,而是需要复杂的多核SOC芯片提供更为复杂控制逻辑以及强大的算力支持。但是多域业务具有不同的技术需求:
-> 座舱域IVI业务强调交互体验、应用生态丰富,比较适合的操作系统是 Android(另外一个因素对实时性要求不是特高);
-> 仪表盘、辅助驾驶有实时性、可靠性要求,操作系统倾向于 RTLinux、RTOS;
-> 智驾域强调大算力融合感知、推演规划,也有实时性、可靠性要求,也会选择RTLinux、RTOS。
在域融合的同时,要保证关键业务的安全可靠,也要考虑应用生态的可持续性兼容,这就需要有资源隔离技术来支撑在同一SOC上切分资源,可并发运行多种操作系统,保障互不干扰。
资源隔离技术有多种,从硬件底层逐层向上包括硬件隔离、虚拟化隔离、容器隔离、进程隔离等。
1、硬件隔离的隔离性最好,单隔离域的性能、安全可靠性最好,但灵活性、可配置性差,不能实现硬件共享,导致整个系统的资源利用率差,不能充分达到软件定义汽车的目标。
2、容器隔离、进程隔离可以更轻量级地实现业务隔离,但还是在同一个操作系统内,存在着资源干扰、相互安全攻击的隐患,并且无法支持异构操作系统业务域融合,影响传统业务继承,不利于生态发展。
因此在众多的资源隔离技术中,虚拟化是安全可靠、弹性灵活的优选方案,是软件定义汽车的重要支撑技术。
5885e8b4-ad07-40d7-a9b5-6ef25109620a.png
技术形态
Hypervisor直译即 “超级监督者” ,也称为虚拟机监控程序(VMM)。Hypervisor处于SoC硬件平台之上,将实体资源(如CPU、内存、存储空间、网络适配器、外设等 ) 转换为虚拟资源,按需分配给每个虚拟机,允许它们独立地访问已授权的虚拟资源。Hypervisor实现了硬件资源的整合和隔离,使应用程序既能共享CPU等物理硬件,也能依托不同的内核环境和驱动运行,从而满足汽车领域多元化应用场景需求。
d7239c2d-39a4-47ae-97e6-1b75407c7f34.png
在汽车领域,Hypervisior主要完成以下任务:
-> CPU虚拟化:为虚拟机提供VCPU资源和运行环境,搭载实际运行的实体;
-> 内存虚拟化:负责为其自身和虚拟机分配和管理硬件内存资源;
-> 中断虚拟化:发生中断和异常时,按需将中断和异常路由到虚拟机进行处理;
-> 虚拟机设备模拟:根据需求创建虚拟机可以访问的虚拟硬件组件;
-> 硬件支持 BSP:提供 Hypervisor在SoC上运行的板级支持包,如串口驱动;
-> 虚拟机资源配置:对虚拟机的CPU,内存,IO外设等资源进行配置和管理;
-> 虚拟机通信:为虚拟机提供IPC,共享内存等通信机制。
-> 虚拟机调度:为虚拟机提供优先级和时间片等调度算法;
-> 虚拟机生命周期管理:创建,启动和停止虚拟机;
-> 虚拟机调测服务:提供控制台,日志等调试功能;
在汽车领域,该方案还面临如下挑战:
-> 轻量高效。Hypervisor 在带来软件定义的灵活性的同时,也导致了软件栈层次增加,不可避免会有性能损耗。汽车领域的成本敏感特性,注定了降低 CPU、存储、网络、GPU 等外设性能损耗的需求贯穿整车项目始终,因此 Hypervisor 的轻量和高效十分重要;
-> 安全可靠。相较于互联网领域看重的资源动态分配和闲置利用,汽车领域更看重Hypervisor的实时性、可靠性、安全性;
-> 便捷适配。在汽车领域,芯片类型和操作系统丰富多样,嵌入式虚拟化的一大特点就是异构,Hypervisor必须具备快速适配不同的底层硬件和上层操作系统的能力
虚拟机管理器(VMM)或Hypervisor从20世纪60年代中期的大型机时代发展而来,就像OS调度线程一样,VMM调度OS,每个OS都有一个沙箱。现在Hypervisor的使用场景常见于数字座舱域控制器,通过Hypervisor运行多个操作系统,比如QNX和安卓,满足不同的控制域对实时性和应用扩展性的需求。
搁笔分析完毕!
愿你我相信时间的力量,
做一个长期主义者!

"您的鼓励,是我前进的动力"
还没有人打赏,支持一下
车研会员,开心每一天!
您需要登录后才可以回帖 登录 | 立即注册 |

本版积分规则