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

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

3天内不再提示

嵌入式虚拟化保护传统投资

星星科技指导员 来源:嵌入式计算设计 作者:Robert Day 2022-06-28 15:05 次阅读

当他们迁移到新的硬件平台时,帮助保护他们的旧软件投资。这为嵌入式开发人员提供了与多年来在新服务器平台上运行旧操作系统 (OS) 和应用程序的 IT 组织相同的优势。随着硬件平台从单核转向多核 32 位到 64 位架构并增加新的连接,例如 Wi-Fi蓝牙或蜂窝通信,这项投资尤其关键。

随着物联网IoT) 的出现,嵌入式系统重获新生,并且随着它们参与机器对机器 (M2M) 通信的非常相关的子集,它们现在的发展速度比以往任何时候都快。历史短。这些传统专用系统现在必须发展到具有多个内核的新架构平台,并且通常拥有或需要 64 位架构,而不仅仅是 32 位地址空间。添加新的通信媒介(如 Wi-Fi、蓝牙或蜂窝)以及新的 GUI 要求(如触摸、滑动和拖动)给嵌入式设计人员带来了一系列全新的复杂性。

然而,嵌入式开发人员现在可以使用虚拟化范式,因为他们试图发展他们的遗留系统以满足这些新要求,而无需完全重写或重新设计现有系统;因此,虚拟化可以帮助开发人员管理将他们的系统带入当今互联世界的成本和时间。

一个棘手问题的优雅解决方案

有一种技术可以让嵌入式开发人员保留他们的遗留软件系统,即使它周围的世界——包括它运行的硬件——处于一个不断变化的世界。该技术是虚拟化。该技术已在企业软件世界中使用多年,使 IT 部门能够运行多个版本的 IT 应用程序和操作系统,即使它们已经过时很长时间。它在嵌入式领域还没有被广泛使用,主要是因为嵌入式系统的刷新率没有企业领域那么快,而且还因为企业管理程序不能像桌面一样满足嵌入式尺寸和性能要求OS 的使用频率低于实时操作系统 (RTOS)。

在研究嵌入式管理程序如何使嵌入式开发人员受益之前,让我们更详细地研究一下虚拟化。虚拟化是一种技术,它为在其上运行的软件(包括处理器、内存和设备)提供硬件的“虚拟”表示。在我们的日常生活中,一个很好的例子是运行在 Apple Mac 上的管理程序,它允许 Microsoft Windows 在同一硬件平台上与 Mac OS 一起运行,因为它为 Windows 提供了“虚拟”PC。这是类型 2 管理程序的一个很好的示例,其中管理程序实际上作为应用程序运行在本机操作系统之上,然后“来宾”操作系统运行在它之上。这带来了本机操作系统仍在控制中并且客户操作系统同时运行的优势,因为它本质上是作为应用程序运行的。但是,该解决方案中的多层软件存在巨大的性能问题,而且该技术对于所有嵌入式 RTOS 的使用都不是很便携。

还有另一种虚拟化解决方案,通常称为“Type 1”或“裸机”,它不依赖于本机操作系统,直接与硬件交互,为来宾提供“虚拟”硬件。这越来越接近于满足嵌入式开发人员的需求,因为它肯定比 Type 2 更高效。但是,如图 1 所示,它仍然依赖于一个“助手”操作系统,它的大小接近在类型 2 的情况下到本机操作系统。尽管它被称为“裸机”,但这并不意味着它具有嵌入式开发人员所需的实时或确定性属性。

因此,嵌入式开发人员可以使用不同种类的管理程序来利用虚拟化解决方案。由于构建高效的嵌入式管理程序所需的设计存在一些固有差异,因此需要一个新名称来区分类型 1,因此嵌入式管理程序被称为类型 0 管理程序。

比较 Type 0 和 Type 1 时的两个关键区别是 1) 大小和 2) 实时性能。通过移除 Type 1 中使用的“辅助”操作系统并创建真正的裸机管理程序,运行时内存需求从 GB 下降到 MB,静态代码大小从 MB 下降到 KB。此外,通过移除重量级的辅助操作系统并用小型嵌入式实时内核或“分离内核”替换它来分离资源,现在可以实现实时确定性。此外,通过利用现代处理器中的硬件虚拟化功能,使用管理程序的性能开销达到本机性能的 95% 以上。

现实世界的嵌入式虚拟化使用

确定嵌入式虚拟机管理程序可以提供合理的嵌入式占用空间和实时性能后,我们现在可以专注于嵌入式开发人员在将现有系统迁移到下一代连接嵌入式设备时的好处。这些新系统的主要目标如下:

迁移到既可以是多核又可以是 64 位的现代硬件平台

与现代标准用户界面的兼容性

连接性增加,随之而来的是对更高安全性的要求

嵌入式管理程序如何帮助解决所有这些问题,并减少遗留系统的重写代码量?管理程序可以很好地完成一些仅使用标准 RTOS 难以实现的事情。

抽象底层硬件

这些管理程序功能中的第一个功能是从 RTOS 和在其上运行的应用程序中抽象出底层硬件。这在将现有的 RTOS 和应用程序迁移到新的硬件平台时确实很有帮助,因为管理程序可以使虚拟硬件看起来就像原始硬件一样,并且可以应用于内存、处理器和设备。

因此,由于新的物理硬件可以是带有一组新的现代设备的多核 64 位处理器,因此管理程序可以提供一个 32 位单核虚拟处理器,新物理设备映射到传统的虚拟版本设备。这可以防止立即迁移到新的 SMP、64 位 RTOS,并且还减少了为板上的新设备创建新 BSP 的需要。这也是引入新连接选项(例如 Wi-Fi 或蜂窝网络)的一种相对优雅的方式,因为可以通过设备虚拟化使它们看起来像普通的以太网设备。

多操作系统促进新接口、安全性

虚拟化的第二个关键能力是允许多个操作系统在单个硬件平台上运行。这允许嵌入式开发人员保持其遗留系统完好无损,并通过引入另一个并行运行的操作系统来添加新功能。这可能看起来非常低效,但随着硬件技术的飞跃和内存成本的提高,具有硬件虚拟化支持的现代多核系统实际上可以运行多个操作系统而不会降低性能;这也比必须采购过时的硬件组件便宜得多。当将新的连接介质引入系统时,这种多操作系统场景是另一个有趣的设计考虑因素,而不是虚拟化新设备,

除了引入遗留系统之外,这种多操作系统场景还为连接的嵌入式系统带来了一些有趣的设计优势,并有助于引入新的需求,例如现代用户界面和额外的安全性。嵌入式开发人员一直面临的一个问题是嵌入式系统的标准用户界面,因为标准的基于 GUI 的操作系统传统上对于实时系统来说太大或太慢。对于 RTOS,GUI 必须从头开始构建,因此不具备我们在手机、平板电脑和计算机上习惯的所有触摸/滑动功能。

通过使用嵌入式虚拟机管理程序,开发人员也可以得到他们的蛋糕并吃掉它。通过在一个虚拟机 (VM) 中安装 RTOS 并在另一个 VM 中安装更传统的 GUI 操作系统(如 Android),实时部分得到处理,并内置了用户友好的标准 GUI;通过使用多核处理器,虚拟机管理程序可以为每个处理器分配自己的专用处理器、内存和资源。

难题的最后一块是安全性——这可能是联网嵌入式设备最热门的话题之一,因为这些曾经专用和专有的系统现在正在通过开放的互联网连接和控制;因此,它们现在可能成为网络犯罪和网络恐怖主义的目标。通过使用分离内核和嵌入式管理程序,系统的不同部分可以很容易地隔离和保护。

例如,连接到 Internet 的虚拟机通常不同于控制某物或存储信息的虚拟机,后者通常是恶意攻击的主要目标。因此,即使一个虚拟机被感染,这种感染也不会传播到另一台虚拟机,因为分离内核将它们分开,就像它们在物理上独立的硬件上运行时一样。

嵌入式虚拟化是真的吗?

总之,被称为嵌入式虚拟机管理程序的虚拟化技术基于实时分离内核,可以帮助嵌入式开发人员将他们的传统嵌入式系统带入下一代连接的多核系统,并具有用户友好的 GUI 和增加的安全性以防止恶意威胁。这一切似乎都好得令人难以置信。在 LynuxWorks,我们开发了一个名为 LynxSecure 的分离内核和嵌入式虚拟机管理程序,现在它已经到了第五代,它正在帮助嵌入式开发人员实现他们的新设计目标——按时、按预算。

审核编辑:郭婷

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

    关注

    68

    文章

    19093

    浏览量

    228778
  • 嵌入式
    +关注

    关注

    5057

    文章

    18968

    浏览量

    301858
  • GUI
    GUI
    +关注

    关注

    3

    文章

    637

    浏览量

    39477
收藏 人收藏

    评论

    相关推荐

    什么是嵌入式?一文读懂嵌入式主板

    在现代科技浪潮中,嵌入式技术已成为支撑各种智能设备和系统运行的核心力量。那么,究竟什么是嵌入式嵌入式系统,顾名思义,是将计算机的硬件和软件嵌入到某种设备或系统中,以实现特定功能的计算
    的头像 发表于 10-16 10:14 359次阅读

    【「嵌入式Hypervisor:架构、原理与应用」阅读体验】+ 了解Hypervisor

    正值举国欢度国庆佳节之际,我收到了《嵌入式Hypervisor:架构、原理与应用》一书,在此感谢电子发烧友论坛!当初申请评测此书之时,我根本就不知道这个Hypervisor是什么,只是看到有嵌入式
    发表于 10-13 16:47

    【「嵌入式Hypervisor:架构、原理与应用」阅读体验】+第7-8章学习心得

    提供了安全、可靠和高效的虚拟环境。同时,嵌入式Hypervisor的设计还注重解决容错性和实时性问题,为构造高可靠的嵌入式系统提供了全面的保障。 其次,我在学习过程中深刻体会到了
    发表于 10-09 18:50

    【「嵌入式Hypervisor:架构、原理与应用」阅读体验】+第三四章阅读报告

    嵌入式系统对虚拟技术的多样需求。 实现细节 :学习了PRTOS Hypervisor在实现过程中遇到的关键问题和解决方案。例如,如何通过优化算法提高资源利用率,如何通过安全机制确保
    发表于 10-09 18:29

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

    本章详细介绍了虚拟技术的基本概念、实现方式以及应用领域,着重介绍了嵌入式虚拟技术的特点、面临的挑战以及具体的解决方案。
    的头像 发表于 10-08 15:08 337次阅读
    <b class='flag-5'>嵌入式</b>Hypervisor:架构、原理与应用 阅读体验 +Hypervisor基础概念

    嵌入式主板是什么意思?嵌入式主板全面解析

    嵌入式主板,通常被称为嵌入式系统的核心组件,是一种用于控制和数据处理的计算机硬件,其设计旨在嵌入特定设备中执行专门任务。嵌入式主板如同是设备的“大脑”,主要功能是根据需要管理和控制设备
    的头像 发表于 09-30 10:05 309次阅读

    学习hypervisor嵌入式产品安全设计

    第一部分(第1~2章)介绍Hypervisor基础,涵盖虚拟技术与实现、主流的嵌入式Hypervisor产品,以及基于分离内核的嵌入式Hypervisor等内容。第二部分(第3~12
    发表于 08-25 09:11

    聚徽触控-嵌入式工控机与传统工控机有什么不同

    嵌入式工控机得到了飞速的发展,其应用领域也愈发广泛。在某些行业和场景中,传统的工控机已经被新型的嵌入式工控机所替代。如今,嵌入式工控机的应用数量已远超过各种
    的头像 发表于 07-24 09:31 332次阅读

    嵌入式工控机与传统工控机的区别

    嵌入式工控机与传统工控机的区别  嵌入式工控机和传统工控机是两种不同类型的工业控制计算机设备,虽然它们的目标是相似的,即在工业控制系统中提供可靠的控制和监控功能,但它们在设计原理、硬件
    的头像 发表于 02-04 11:35 608次阅读

    嵌入式学习步骤

    开发板上测试固件以及在实际设备上进行测试。 嵌入式系统的多样发展,它将更为广泛地应用于各个领域,实现智能、网络、自动的目标。同时,
    发表于 02-02 15:24

    什么是嵌入式系统?嵌入式系统的具体应用

    嵌入式,一般是指嵌入式系统。用于控制、监视或者辅助操作机器和设备的装置。
    的头像 发表于 12-20 13:33 2333次阅读

    嵌入式核心板开发之ESD静电保护

    嵌入式核心板开发之ESD静电保护
    的头像 发表于 11-28 17:55 574次阅读
    <b class='flag-5'>嵌入式</b>核心板开发之ESD静电<b class='flag-5'>保护</b>

    技术推荐 | 开源嵌入式虚拟技术释放 x86 平台潜能 实现智能驾驶舱、工业负载整合等场景产品

    随着物联网设备的爆炸增长和万物互联应用的快速发展,虚拟技术在嵌入式系统上受到了业界越来越多的关注、重视和快速发展。嵌入式系统与
    的头像 发表于 11-24 20:00 817次阅读
    技术推荐 | 开源<b class='flag-5'>嵌入式</b><b class='flag-5'>虚拟</b><b class='flag-5'>化</b>技术释放 x86 平台潜能 实现智能驾驶舱、工业负载整合等场景产品<b class='flag-5'>化</b>

    定制嵌入式主板:满足客户的实际需求

    随着物联网、智能家居、智能工厂等应用的不断发展,嵌入式系统的应用场景也越来越广泛。嵌入式系统的核心部分是嵌入式主板,而定制嵌入式主板已经
    的头像 发表于 11-24 11:51 836次阅读
    定制<b class='flag-5'>嵌入式</b>主板:满足客户的实际需求

    嵌入式系统之功耗最低

    电子发烧友网站提供《嵌入式系统之功耗最低.pdf》资料免费下载
    发表于 11-16 15:43 0次下载
    <b class='flag-5'>嵌入式</b>系统之功耗最低<b class='flag-5'>化</b>