[V-08][Device Virtualization]-软件虚拟化技术vs硬件虚拟化技术

ver0.1

[看前序文章有惊喜,关注W\X\G=Z+H=“浩瀚架构师”,可以解锁全部文章]

前言

设备虚拟化是整个虚拟化技术体系下一个非常重要的分支,围绕这个领域的研究的课题也非常的多。随着我们系列文章的深入,我们也会逐渐深入整个领域。如果说虚拟化架构核心资源,CPU、内存、中断等资源的虚拟化决定了整个用户体验的下线的话,那么设备虚拟化技术的体验直接决定了整个产品解决方案的上限。尤其是在车载座舱和智能驾驶领域,车机播放一个视频流畅与否、端侧模型运行的效率与准确率良好与否、等等,都直接决定了一款座舱产品的体验。树是有根的,水是有源的,设备虚拟化技术好也是有原因的。本文先从框架层面讨论设备虚拟化的分类,而后的文章再深入细节讨论具体的技术点。相关的内容,前面的文章已经做过一些基础性的介绍,尤其如下文章,建议大家优先读一读,先找找感觉。
(1) [V-00] 虚拟化概论-思想
(2)[V-01]虚拟化概论-Hypervisor(VMM)(基于AArch64)

正文

1.1 虚拟化思想

要理解虚拟化技术,就必须对硬件建立基本的认知。

1.1.1 SOC系统架构

SOC(System on Chip)作为一个硬件平台的核心,必须要对它有一个充分的认识,如图1-1所示。
1-1

图1-1 典型基于ARM体系的SOC系统架构

芯片厂商交付给用户的就是SOC,例如高通8155\8295,MTK的8676\8678都是SOC。SOC的基础能力决定了整个硬件平台硬件的Feature和性能上限。
硬件的Feature:例如CPU、GPU、ADSP、NUP、CDSP、DMA、外设接口总线等等,这些Feature大多数都会变成一个个独立的功能单元(IP-Core),然后通过一个总线串联到一起,构成一个SOC芯片。
性能上限:主要体现在在各个IP-Core的算力、Cache Size、IO吞吐能力,例如CPU的算力和GPU的算力等等。

1.1.2 设备系统架构

只有SOC是不能工作的,拿到SOC之后需要对它进行必要的包装才让它发挥作用,于是就要基于SOC构建硬件平台,如图1-2所示。
1-2

图1-2 典型基于ARM体系硬件平台系统架构

CPU是指挥官,SOC就是司令部。在司令部的外围布置上相应的设备,比如磁盘、内存、传感器、屏幕、摄像头、蓝牙芯片等等作战单元就构成了一个完整的部队了。到这里,就构建了一个完整的设备体系,这些设备不光是大家看的见的,还有SOC内部高度集成化的大家看不见的。这些设备就构成了我们下一步讨论设备虚拟化技术的硬件基础。

1.1.3 单系统软件架构

硬件平台环境已经准备好了,下一步就是给它注入思想和灵魂了。在计算机的世界里面,软件就是硬件的思想和灵魂,它最开始的样子是这个样子的,如图1-3所示。
1-3

图1-3 典型基于ARM体系的硬件平台单OS架构

上图是一个典型的汽车座舱硬件平台的单系统软件架构,特点如下:
(1) Secure部分相关的软硬件已经是ARM标配了,这是一个非常重要且复杂的领域,这里我们不展开讨论了。
(2) 就是Hardware Platform上所有的设备,在软件层面都会抽象成驱动的形式,供更上层的软件模块使用。
(3) 这些设备驱动一般情况下会被组织在一个操作系统下,目前主流的嵌入式硬件平台操作系统有Android、Linux、QNX等。
(4) 最重要的一个特点就是所有的设备都是归操作系统直接管辖,不受任何其他实体干扰。

1.1.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值