“软件定义汽车”下的软件虚拟化技术

01.虚拟化技术概述

近年来,随着嵌入式软硬件的高速发展,嵌入式系统产品已融入日常生活的方方面面,在航空航天、车载电子、工业控制等要求更为严苛等领域的应用也更加广泛。特别对汽车领域,每辆车内ECU的使用数量已从21世纪初的30-50个飙升至上百个,其复杂程度也呈指数级上升,给汽车嵌入式软件的开发与测试带来极大挑战。引入虚拟化技术来应对复杂硬件所带来的挑战,成为了历史长河发展的必然。

虚拟化本质是提供一个虚拟的操作系统执行环境,让复杂多样的嵌入式程序(包括操作系统)能够并行运行在同一物理硬件环境上。自上世纪六十年代以来,虚拟化技术已形成一套合理且受业界认可的理论体系:运行在真实物理环境上的称为宿主机(host OS,Operating System),通过虚拟化技术实现的全系统运行环境称为虚拟机(Virtual Machine,VM),在虚拟环境中执行的操作系统称为客户操作系统(Guest OS)。

世界上第一位计算机博士David Wheeler说过,"计算机科学中的任何问题都可以通过增加一个中间层来解决",因此虚拟化技术在硬件和客户操作系统软件之间引入了一个新层级,称之为Hypervisor或VMM(Virtual Machine Monitor),这一层级就可以简单理解为软件虚拟化技术。

02.如何理解Hypervisor

可以进行如此理解:一台电脑的硬件就好比一栋高层大楼,电脑中的诸多虚拟机就可看做大楼中的多套房屋。每个房屋都有各自的卧室(CPU)、储藏室(内存)和私人网线(网络资源),享受着独门独户的私密空间和生活设施。

但实际上,大楼的电梯、供水系统、电网是所有房屋共用的。也就是说,虽然每个房屋看似拥有专属资源,但其背后依赖的是全楼共享的基础设施。这些资源是由物理主机(大楼)统一提供并智能分配的,每个虚拟机只在需要时,按需使用共享资源的一部分。

Hypervisor就像这栋大楼的物业管理员,在幕后精心安排以确保每个虚拟机(房屋)既能安全、高效的享用所需资源,又不会互相干扰,就像住在独立的房屋中一样。

03.Hypervisor分类

在虚拟化技术的发展历程中,由于特点、用途、功能不同,出现了多个种类的虚拟化类型。大体上可以根据host OS的有无,或者Hypervisor是否直接运行在硬件上,将其分为Type-1型和Type-2型。

3.1 Type-1型Hypervisor

Type-1型也被称为裸机型Hypervisor,如下图所示,没有宿主操作系统,而是直接运行底层硬件之上,直接管理CPU、内存等真实资源的同时,向上层提供客户操作系统的抽象执行环境,常见的有VMware ESXi、Microsoft Hyper-V、Xen。

▲Type-1型Hypervisor

由于需要一定程度上融合操作系统的功能,Type-1型也被分为微内核架构和宏内核架构,刚才介绍的前两种属于宏内核Hypervisor产品,而Xen就是典型的微内核产品。

虽然Hypervisor能够为虚拟机提供更接近物理机的性能,但也存在显著的缺点与局限性:

**1. 复杂性和部署难度:**由于直接安装在物理硬件上,其安装与配置通常更为复杂,需要特定的管理工具来配置和管理虚拟机,这些工具可能需要额外的培训与学习成本。复杂装备中,高昂的硬件成本也会对后续测试与验证带来挑战。

**2. 硬件兼容性:**直接运行在硬件上导致Type-1型的硬件依赖性较强,如果硬件不支持或兼容性较差,就可能导致系统不稳定或性能下降。

**3. 灵活性较低:**无法轻松与现有的桌面操作系统集成,每次调整配置或测试新环境都需要直接在硬件上操作,系统更新与补丁管理也需要精心规划以减少对生产环境的影响。

3.2 Type-2型Hypervisor

Type-2型Hypervisor安装在操作系统上,依赖于基础操作系统提供服务,其寄生的宿主操作系统拥有对硬件平台和资源的全部控制权,包括CPU与物理内存。如下图所示,Hypervisor包含在Host OS中,并不直接与硬件交互:

▲Type-2型Hypervisor

此类Hypervisor可以使用宿主机的各种功能模块,如宿主机自身的调度模块等,充分利用宿主操作系统对物理硬件的管理功能,只需提供对客户操作系统的管理即可。这意味着,宿主操作系统首先启动并管理硬件资源,而后Hypervisor在宿主系统内部运行,并进一步创建和管理虚拟机。最具代表性的Type-2型硬件虚拟化产品为KVM(Kernel-based Virtual Machine),软件虚拟化产品则为SkyEye(详见下文)。

尽管可能在资源效率方面有所欠缺,但Type-2型相较Type-1型有着易用性和兼容性方面的巨大优势:

**1. 易于部署和管理:**直接安装在操作系统上,不需要额外的硬件配置或引导管理,能与更多种类的硬件兼容。

**2. 使用体验与测试友好:**Type-2型能直接在桌面操作系统中使用,通常带有图形用户界面(Graphical User Interface,GUI),用户可以更方便地创建、管理和操作虚拟机。

04.利用虚拟化技术模拟汽车嵌入式系统

对汽车领域而言,虚拟化技术的模拟可分为硬件虚拟化和软件虚拟化。硬件虚拟化由于需要使用和嵌入式系统CPU相同架构的平台,在采购成本上较为受限,仅能模拟同源架构,在外设虚拟化上的支持也较为逊色。

软件虚拟化则较好解决了上述问题,通过将汽车嵌入式系统硬件环境进行虚拟仿真实现更高的灵活性,资源分配也更为灵活,工程师可不受物理硬件的限制,随时访问目标系统,快速搭建虚拟硬件原型,提前进行开发、测试及验证工作。

05.应用案例

天目全数字实时仿真软件SkyEye,属于Hypervisor Type-2型的软件虚拟化工具,是符合"软件定义汽车"的工具软件。

作为一款国产自主的基于可视化建模的硬件行为级仿真平台,SkyEye目前已支持涵盖汽车ECU所用到的大部分处理器架构,如PowerPC、Tricore系列等,能够用于汽车BMS系统、汽车发动机管理系统等虚拟原型(即虚拟ECU)的搭建。

应用基于SkyEye的虚拟ECU,工程师可以:

  • 无需关心真实线缆繁琐的连接关系,工程一次搭建,持续可复用;
  • 具备真实CAN总线和INCA硬件的仿真能力,支持数量几乎无限制的仿真硬件;
  • 支持符合AUTOSAR协议的OS及应用程序的运行;
  • 集成原有标定上位机软件,外接Simulink模型模拟真实数据。

▲SkyEye汽车BMS系统仿真

除了通过虚拟化技术及数字孪生帮助快速构建所需ECU、有效缩短整车研发周期外,SkyEye还能帮助用户节省昂贵的硬件设备制造成本,无需对程序进行任何修改即可实现嵌入式软件的运行与调试,覆盖嵌入式软件开发全生命周期,真正实现嵌入式的"敏捷开发,降本增效"。

相关推荐
国际展会招商7 小时前
2025杭州国际智能网联新能源汽车展览会
汽车
虹科Pico汽车示波器7 小时前
汽车免拆诊断案例 | 2012款路虎揽胜运动版柴油车加速无力
汽车·虹科pico汽车示波器·汽修·发动机故障·路虎揽胜·汽车失火·喷油器
哔哥哔特商务网1 天前
一文探究48V新型电气架构下的汽车连接器
架构·汽车
电子科技圈1 天前
IAR与鸿轩科技共同推进汽车未来
科技·嵌入式硬件·mcu·汽车
思尔芯S2C1 天前
面向未来的智能视觉参考设计与汽车架构,思尔芯提供基于Arm技术的创新方案
arm开发·架构·汽车·iot·fpga原型验证·prototyping·智慧视觉
IT生活课堂1 天前
Android智能座舱,视频播放场景,通过多指滑屏退回桌面,闪屏问题的另一种解法
android·智能手机·汽车
EasyCVR2 天前
ISUP协议视频平台EasyCVR私有化视频平台新能源汽车充电停车管理方案的创新与实践
大数据·网络·汽车·音视频·h.265·h.264
说书客啊2 天前
计算机毕业设计 | SpringBoot+vue汽车资讯网站 汽车购买咨询管理系统(附源码+论文)
java·spring boot·node.js·vue·汽车·毕业设计·课程设计
shaoweijava2 天前
靓车汽车销售网站(源码+数据库+报告)
java·数据库·spring boot·mysql·汽车
上海知从科技2 天前
知从科技加入SOAFEE组织,携手推动汽车软件创新
科技·汽车