0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

嵌入式Hypervisor:架构、原理与应用 阅读体验 +Hypervisor基础概念

super杰杰 来源:super杰杰 作者:super杰杰 2024-10-08 15:08 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

前言

通过阅读「嵌入式Hypervisor:架构、原理与应用」我对Hypervisor这个概念有了较为全面的理解。

本书探讨了嵌入式Hypervisor(虚拟机监控程序)作为嵌入式系统软件的前沿技术,重点关注其在复杂应用场景中的重要性。随着对高性能和低功耗嵌入式系统需求的增加,嵌入式Hypervisor成为优化有限资源、实现异构操作系统安全隔离的关键解决方案。

尽管在多个领域已有广泛应用,专门分析嵌入式Hypervisor的书籍仍较为匮乏。本书采用分离内核架构,结合PRTOS Hypervisor,深入剖析其设计与实现技术,并讨论对实时操作系统及Linux的虚拟化支持,旨在帮助读者理解异构操作系统开放平台的生态优势。

嵌入式Hypervisor是一种用于虚拟化的技术,尤其在嵌入式系统中应用广泛。它允许多个操作系统或应用程序在同一硬件平台上并行运行,从而提高资源利用率和系统的灵活性。

什么是Hypervisor

Hypervisor(虚拟机监控程序)是一个用于创建和管理虚拟机的软件层。它允许在同一物理硬件上同时运行多个操作系统实例。这种技术广泛应用于服务器虚拟化、云计算和资源隔离等场景。

传统操作系统内核的功能是在底层硬件上提供抽象层,在多个用户空间的应用程序之间分配和调度资源(包括CPU、内存、I/O外围设备)​,职责是在操作系统上托管用户空间的应用程序。Hypervisor同样具备托管职责,但托管的是多个客户操作系统。操作系统内核一般被称为主管(Supervisor),而虚拟机监控程序用来托管主管,因此被称为超级主管,即Hypervisor。Hypervisor有时候也被称为虚拟机管理器(Virtual Machine Manager,VMM)或者虚拟机监控器(Virtual Machine Monitor,VMM)。

Hypervisor使得单个物理硬件平台可支持一个或者多个虚拟机,虚拟机间彼此互不干扰。即使一个虚拟机中的应用程序发生崩溃或安全性损害,其他虚拟机中的应用程序仍可正常运行。因此Hypervisor既可以提高硬件利用率和系统管理的灵活性,也可以使虚拟机之间强制隔离,从而保证整个软件系统的安全性。故实现Hypervisor的关键技术(虚拟化技术)非常重要。

嵌入式Hypervisor

嵌入式 Hypervisor 是一种虚拟化技术,专门设计用于嵌入式系统中。它允许在同一硬件平台上同时运行多个操作系统或应用程序,提供资源隔离和管理,从而提高系统的灵活性和安全性。

主要特点

(1)高效性。Hypervisor一般都力求提高效率,但嵌入式Hypervisor受到内存、外围设备、功耗等方面的限制,必须能够非常精简且高效地使用硬件资源。

(2)代码量小。应用程序的代码量越少,就越容易查找错误。一些嵌入式Hypervisor的供应商就是通过数学方法验证Hypervisor有没有错误。Hypervisor是系统中唯一以特权模式运行的软件,Hypervisor包含的错误越少,平台就越安全可靠。

(3)多核系统支持。目前,新的嵌入式处理器普遍利用多核架构来提高性能,嵌入式Hypervisor可以管理底层架构,为遗留应用程序提供单处理器环境,同时有效支持多核处理器进行系统设计。

(4)实时性。具有实时性要求的虚拟机内部应用程序必须以可预测的方式执行。虚拟机应用的实时性受到底层软件(即Hypervisor和客户操作系统)和硬件的影响。从Hypervisor的角度来说,可预测性涉及Hypervisor所提供的服务以及虚拟机中的客户操作系统。嵌入式Hypervisor提供给虚拟机的服务必须具有可预测性,以满足虚拟机的确定性要求。比如对无人机系统来说,Hypervisor可以保证飞控系统和第三方应用程序(图传系统)共享硬件平台并相互隔离,并保障运行飞控系统的虚拟机满足实时性要求。

应用领域

(1)在航空领域,ARINC653标准已经是IMA(Integrated Modular Avionics,综合模块化航空电子设备)架构的标准应用接口,符合ARINC653标准的Ⅰ型Hypervisor是航空电子系统领域的基础软件。

(2)在车载领域,汽车通过在若干个互相隔离的虚拟机上分别运行车载娱乐操作系统、AUTOSAR(汽车开放系统架构)操作系统和RTOS,使得软件系统可以在异常检测、故障隔离方面开展更多工作,并确保一旦出现问题,故障也能够在早期被识别和处理,避免故障向其他领域蔓延。

(3)在工业领域,目前,工业领域中的设备和传感器越来越多地与互联网连接,Hypervisor可以用于管理和隔离这些设备之间的不同应用程序,以确保安全性和可靠性。4)在医疗领域,安全性和隔离性至关重要。Hypervisor可以简化功能组件的更新过程,通过在虚拟机级别进行更新,减少对整个设备的干扰;Hypervisor支持冗余配置和备份虚拟机,确保即使在硬件或软件发生故障的情况下,设备仍然可用。

主流的嵌入式Hypervisor产品

国外RTOS厂商的Hypervisor产品

嵌入式Hypervisor在国外起步较早,在任务关键型和安全关键型嵌入式场景中已经得到了广泛的应用。其中Wind River公司的VxWorks 653、Lynx公司的LynxOS-178B和LynxSecure、Thales公司的PikeOS、DDC-I公司的DeOS以及Green Hills软件公司的INTEGRITY Multivisor等都是这方面的典型代表。VxWorks 653是应用在航空领域的、遵循ARINC653设计规范的Hypervisor。分区是ARINC653中的一个核心概念。采用ARINC653标准的操作系统架构分为两级,底层是CoreOS(即Hypervisor)​,负责分区间的管理和调度;CoreOS的上层是POS(Partition OS,分区OS)​,即分区操作系统,也就是客户操作系统。POS的上层才负责应用程序的执行。

VxWorks 653是典型的ARINC653软件架构,如图所示。

Lynx公司的LynxOS-178B也是面向航空领域的、遵循ARINC653设计规范的Hypervisor,其架构如图所示。

PikeOS架构如图所示。PikeOS主要应用于航空电子、航天、铁路、汽车、医疗和工业自动化领域。

wKgaomcE2NCARkhnAAYJViMwlP8292.pngwKgaomcE2OSAAJYYAAWv-96Q1Yk050.png

总结

嵌入式 Hypervisor 通过在同一硬件上提供多个独立的虚拟环境,为嵌入式系统带来了灵活性和安全性,是现代嵌入式设计的重要组成部分。

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    5186

    文章

    20166

    浏览量

    329099
  • 操作系统
    +关注

    关注

    37

    文章

    7331

    浏览量

    128672
  • 架构
    +关注

    关注

    1

    文章

    532

    浏览量

    26508
  • 虚拟机
    +关注

    关注

    1

    文章

    968

    浏览量

    30189
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    嵌入式软件分层架构设计原则

    嵌入式软件分层架构的设计原则如下: 模块化和可扩展性:每一层应当保持松耦合,这样当硬件变化或某些功能扩展时,只需要修改对应的层次,而不影响整体架构。 硬件无关性:上层代码应当尽量避免直接依赖硬件
    发表于 11-28 07:05

    嵌入式和FPGA的区别

    开发中做出更明智的技术选择。 基本概念解析 嵌入式系统(Embedded System)是一种专用计算机系统,通常包含微处理器/微控制器、存储器和专用外围设备,被设计用于执行特定功能。它强调
    发表于 11-19 06:55

    嵌入式需要掌握哪些核心技能?

    嵌入式需要掌握哪些核心技能? 若想通过学习嵌入式技术提升就业竞争力,需重点掌握C语言、嵌入式硬件架构、RTOS/Linux开发、通信协议四大核心技能,并结合行业需求积累项目经验。
    发表于 10-21 16:25

    油介质损耗及电阻率测试仪的嵌入式系统架构与抗干扰设计

    油介质损耗及电阻率测试仪的精准检测能力,不仅依赖于核心的电气测量模块与温控系统,更离不开稳定可靠的嵌入式系统作为“中枢神经”。嵌入式系统承担着数据采集、运算处理等核心功能,其架构设计与抗干扰设计共同
    的头像 发表于 09-02 13:57 358次阅读
    油介质损耗及电阻率测试仪的<b class='flag-5'>嵌入式</b>系统<b class='flag-5'>架构</b>与抗干扰设计

    新一代嵌入式开发平台 AMD嵌入式软件和工具2025.1版现已推出

    AMD 2025.1 版嵌入式软件和工具是面向新一代嵌入式系统开发而打造的综合平台,全面加速概念构想到部署落地。 2025.1 版嵌入式软件和工具的新 增功能 AMD
    的头像 发表于 08-20 09:15 3649次阅读

    AMD 2025.1版嵌入式软件和工具的新增功能

    AMD 2025.1 版嵌入式软件和工具是面向新一代嵌入式系统开发而打造的综合平台,全面加速概念构想到部署落地。
    的头像 发表于 08-15 15:32 1051次阅读

    入行嵌入式应该怎么准备?

    架构、总线协议和存储器管理等概念的理解也是必不可少的。 三、操作系统嵌入式系统通常需要运行一个实时操作系统(RTOS)或者一个精简版的操作系统。熟悉RTOS的概念和使用方法,能够编写
    发表于 08-06 10:34

    【「Yocto项目实战教程:高效定制嵌入式Linux系统」阅读体验】+基础概念学习理解

    。为了对珠峰更了解些,开始接触 Linux 系统开发,并逐渐认识到 Yocto 项目在定制嵌入式 Linux 系统方面的重要性。所以很想拜读下此书。 二、书籍内容概述 基础知识 书中首先回顾了 Linux
    发表于 08-04 22:29

    构建基于 RISC-V 平台的 TEE 架构:RV-ACRN Hypervisor 的实践与展望

    ACRN 是由 Linux 基金会于 2018 年 3 月发布的开源轻量级 hypervisor 参考软件,专为嵌入式与物联网场景设计,由英特尔主导初始开发。其架构包含 hypervisor
    发表于 07-18 14:55 4767次阅读

    Linux嵌入式和单片机嵌入式的区别?

    Linux嵌入式与单片机嵌入式在多个方面存在显著的区别,以下是详细的比较和归纳: 一、基本概念 1. Linux嵌入式: 定义:将Linux操作系统运行在
    发表于 06-20 09:46

    嵌入式主板的概述与发展

    随着科技的迅猛发展,嵌入式系统在现代电子产品中扮演着越来越重要的角色。嵌入式主板作为嵌入式系统的核心组件之一,承担着控制、处理和通讯等多种功能。本文将对嵌入式主板的基本
    的头像 发表于 01-13 16:30 1193次阅读
    <b class='flag-5'>嵌入式</b>主板的概述与发展

    ARM架构嵌入式主板特点

    极其广泛。ARM架构嵌入式主板有什么特点呢?一、工作时间及环境:ARM主板不受时间限制,可常开机,无需人员维护。在有电源调节的情况下,只要接通电源,就会自动启动,
    的头像 发表于 12-31 16:03 1868次阅读
    ARM<b class='flag-5'>架构</b><b class='flag-5'>嵌入式</b>主板特点

    【「嵌入式系统设计与实现」阅读体验】+ 智能晾衣架

    嵌入式系统设计与实现,封面如下图所示。 分享一下关于3.5章节,智能晾衣架的阅读体验, 在我看到标题时,理解的智能晾衣架的大致模型为带一些传感器的可升降晾衣架。 阅读之后发现智能晾衣架比我想的功能多
    发表于 12-30 18:06

    黑莓QNX Hypervisor斩获GGAI年度标杆产品奖

    近日,历时三天的第八届高工智能汽车年会在上海圆满闭幕。大会第一天,黑莓QNX大中华区首席代表董渊文先生带来了精彩的“车规级操作系统—汽车电子软件的基石”的分享。大会第三天,高工智能宣布QNX Hypervisor(虚拟化)产品斩获GGAI年度标杆产品奖。
    的头像 发表于 12-14 16:57 1147次阅读

    新手怎么学嵌入式?

    基本的概念嵌入式系统是一种将计算机技术嵌入到特定设备中的系统,它通常具有特定的功能和有限的资源。你需要学习一些计算机基础知识,如数据结构、操作系统、计算机组成原理等。这些知识将帮助你理解嵌入
    发表于 12-12 10:51