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

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

3天内不再提示

实时和通用操作系统通过虚拟化结合起来

星星科技指导员 来源:嵌入式计算设计 作者:Chris Main 2022-06-28 11:49 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

如今,在软件世界中,关于虚拟化的说法很多。简单地说,虚拟化就是让多个操作系统同时在同一个计算平台上运行。虚拟化被认为是从最新的多核处理器中获得最大性能的关键技术。但正如并非所有计算应用程序都相同,并非所有虚拟化方法都适用于所有应用程序。

嵌入式系统有一个通常不适用于办公室和服务器计算机的关键要求:需要对实时事件做出确定性响应。为了支持确定性要求,嵌入式应用程序通常使用 RTOS。嵌入式应用程序还使用通用操作系统来处理操作员界面、数据库和通用计算任务。

过去,由于操作系统无法成功地共存于计算平台上,系统开发人员采用多个处理平台,使用一个或多个来支持实时功能,而其他处理平台则用于处理通用处理。可以在同一平台上结合两种类型处理的系统设计人员可以通过消除冗余计算硬件来节省成本。多核处理器的出现支持了这一前提,因为可以将处理器内核专用于不同的计算环境;然而,整合这些环境带来的软件问题需要特别考虑。在同一平台上结合实时和通用操作环境对如何实施虚拟化提出了一些严格的要求。

半虚拟化

在嵌入式平台上支持多个操作系统的一种常见方法是使用称为管理程序的操作软件,该软件在上电时首先启动,然后加载操作系统。管理程序负责平台并处理操作系统环境之间的内存分区和其他处理器资源。如果 CPU 不支持用于虚拟化的 Intel VT-x 硬件扩展,则必须对来宾操作系统进行修改,以便他们知道虚拟机管理程序支持它们。它们必须进行自己的地址转换,以避免与属于其他操作系统的内存发生冲突。

像这样的情况,客户操作系统知道它是客户,称为半虚拟化。尽管该方案可能有效,但这种方法的主要缺点是开发人员不能将标准的开箱即用操作系统用作来宾。这是 Xen 管理程序采用的虚拟化方法。修改第三方操作系统可能会导致严重的支持问题,并且通过升级和更新在其长期生命周期内支持此类产品的成本非常高。

服务器虚拟化

为了最大限度地减少需要对客户操作系统进行的更改,以便它可以在虚拟环境中运行,开发人员可以构建一个虚拟机管理程序来模拟整个机器,为每个客户操作系统提供它认为对处理器平台的独占访问权限。今天,这种方法正用于多核处理器系统,以运行同一应用程序的多个实例。

虽然这种方法对于经过优化以使处理器保持忙碌的服务器应用程序可能是令人满意的,但对于需要确保对外部事件做出最快响应的嵌入式应用程序来说,它是不可接受的。当前可用的此类软件产品并未针对英特尔架构处理器或特定类别的应用程序进行优化。每次需要支持新的操作系统配置时,都需要大量工作来定制管理程序以与选定的操作系统一起使用。

硬件辅助嵌入式虚拟化

嵌入式应用程序的最佳虚拟化类型涉及处理器和平台架构提供的硬件辅助功能,管理程序使用这些功能来确保系统满足要支持的应用程序的性能目标。借助嵌入式虚拟化,对机器的某些部分进行仿真以为多个操作系统提供标准环境,而不对系统的某些部分进行仿真以确保满足系统性能目标。模拟 PCI 总线接口和 CMOS 寄存器等基本功能,但实时响应所需的 I/O 接口分配给客户 RTOS 专用。

嵌入式管理程序必须对机器进行分区以分离资源,供每个操作系统独占使用。TenAsys 的 Windows eVM 通过配置 Microsoft Windows 引导加载程序来限制它使用的硬件线程和内存的数量来实现这一点。Windows 首先启动并正常运行,剩余资源分配给它。因为它在裸机而不是模拟软件层上运行,所以 Windows 任务以最高性能执行。

接下来,RTOS 和实时应用程序软件被加载到为应用程序的实时部分分配的内存中,然后 RTOS 从 Windows 驱动程序启动并开始在其隔离的硬件环境中执行应用程序代码。通过访问自己的性能关键 I/O 设备,实时应用程序将完全独立于 Windows 运行。提供了特殊的驱动程序,以便实时环境可以使用 Windows 资源。当 Windows 和实时任务需要通信或实时应用程序需要使用 Windows 资源时,这两个环境通过共享内存中的仿真通信链路进行通信,例如虚拟以太网和串行链路。实时 I/O 设备通过 Windows 端的通用设备驱动程序进行配置。

利用英特尔架构

嵌入式系统开发人员在他们想要保护的知识产权上进行了大量投资。除了花费金钱和时间来重新实现之外,更改应用程序代码以在新的操作系统环境中运行可能会将错误注入应用程序或导致它们变得不可靠。

高效的嵌入式虚拟化需要硬件支持,以便各种操作系统无需修改即可运行。通过使用英特尔在其新 CPU 和芯片组中提供的 VT-x 硬件扩展,可以提供高效的执行平台,而无需修改客户操作系统或其驱动程序或重新分区系统磁盘。

英特尔正在开发的新硬件支持将支持其他通用操作系统的嵌入式虚拟化。此外,英特尔目前正在开发对虚拟化 CPU 的分页机制和中断控制器的支持。借助新的硬件功能,客户操作系统可以独立启动和停止,并且无需重新启动整个平台即可重新启动 Windows。

嵌入式虚拟化节省成本

在嵌入式市场中,开发人员已经习惯于使用多个处理平台来定制具有额外工作和费用的操作环境,以保证实时系统响应能力。但未来可能会有所不同。使用适用于 Windows 的 eVM 来实现系统整合,而无需软件定制,可以避免无法适应的解决方案,同时启用可以以合理成本快速实施的解决方案。

审核编辑:郭婷

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

    关注

    114

    文章

    17658

    浏览量

    190407
  • WINDOWS
    +关注

    关注

    4

    文章

    3697

    浏览量

    93268
  • 操作系统
    +关注

    关注

    37

    文章

    7333

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    轮询操作系统的原理

    轮询系统即是在裸机编程的时候,先初始好相关的硬件,然后让主程序在一个死循环里面不断循环,顺序地做各种事情。裸机系统通常分成轮询系统和前后台系统
    发表于 12-05 08:18

    单片机的操作系统

    RTX ‌:ARM官方推荐,与CMSIS-RTOS标准兼容,支持时间片轮转调度,适合汽车电子等硬实时任务。 ‌ ‌ 都江堰操作系统(djyos) ‌:事件驱动型内核,适用于高并发场景。 ‌ 选择时需结合硬件资源(如CPU类
    发表于 11-14 06:18

    嵌入式实时操作系统的特点

    的时间限制内完成,而软实时任务对时间限制更灵活。 任务调度和优先级:实时嵌入式操作系统通过任务调度器来管理和分配任务,通常采用优先级调度算法,确保高优先级的实时任务得到及时处理。 中断
    发表于 11-13 06:30

    如何选择合适的实时操作系统

    选择合适的实时操作系统(RTOS,Real-Time Operating System)可能会影响你在不同行业的职业发展路径。
    的头像 发表于 09-09 14:47 831次阅读

    RISC-V 虚拟堆栈和硬件的最新进展

    运行实时操作系统(RTOS)、高可靠性任务以及 Linux 等通用系统。   在云计算场景中,虚拟
    发表于 07-18 16:00 3678次阅读

    鸿道Intewell:以创新国产实时操作系统助力多产业发展

    鸿道Intewell操作系统是一款面向工业场景的国产实时操作系统,采用弹性微内核架构,具备强实时性、确定性调度和混合关键系统能力。其技术架构
    的头像 发表于 07-02 15:21 461次阅读
    鸿道Intewell:以创新国产<b class='flag-5'>实时</b><b class='flag-5'>操作系统</b>助力多产业发展

    鸿道Intewell实时操作系统有哪些应用场景

    鸿道Intewell工业操作系统作为一款国产实时操作系统(RTOS),在工业领域因其高实时性、高可靠性和强定制能力,被广泛应用于对
    的头像 发表于 06-26 10:15 529次阅读

    发那科车床系统/加工中心系统通用操作说明书

    电子发烧友网站提供《发那科车床系统/加工中心系统通用操作说明书.pdf》资料免费下载
    发表于 06-03 17:35 2次下载

    鸿道Intewell操作系统:人形机器人底层操作系统

    操作系统实时性赋能东土科技的鸿道(Intewell)工业操作系统作为国内唯一通过汽车、工业控制、医疗、轨道交通四项功能安全认证的系统,为标
    的头像 发表于 05-16 14:44 563次阅读

    鸿道Intewell操作系统实时虚拟技术的优势

    实时虚拟技术结合实时性与虚拟的优势,
    的头像 发表于 05-15 15:13 367次阅读
    鸿道Intewell<b class='flag-5'>操作系统</b><b class='flag-5'>实时</b><b class='flag-5'>虚拟</b><b class='flag-5'>化</b>技术的优势

    什么样的才叫实时工业操作系统

    实时工业操作系统的核心是在严格时间约束下保证任务执行的确定性、可靠性和安全性,通常需通过专用架构、实时调度算法和工业级认证来满足严苛的工业环境需求。选择时需根据具体场景的
    的头像 发表于 04-17 10:09 570次阅读
    什么样的才叫<b class='flag-5'>实时</b>工业<b class='flag-5'>操作系统</b>

    权威认证!KaihongOS工业实时操作系统内核通过中国泰尔实验室的测试认证

    近日,深开鸿自主研发的KaihongOS工业实时操作系统内核,成功通过中国泰尔实验室的检测认证,符合自主自研要求。这标志着深开鸿在操作系统自主研发方面获得了新的成果,有力地推动了国产工
    的头像 发表于 03-24 17:02 992次阅读
    权威认证!KaihongOS工业<b class='flag-5'>实时</b><b class='flag-5'>操作系统</b>内核<b class='flag-5'>通过</b>中国泰尔实验室的测试认证

    实时操作系统RTOS选型指南及实例分析

    鸿道Intewell操作系统是由科东软件自主研发的新型工业操作系统,历经30多年研发积累,采用微内核架构和自主研发的Hypervisor虚拟技术,保证
    的头像 发表于 02-27 15:21 1044次阅读

    鸿道Intewell操作系统的Linux实时拓展方案

    鸿道Intewell操作系统是科东软件自主研发的新型工业实时操作系统,历经30多年研发积累,采用业界领先的微内核架构,具备高实时、高安全及强扩展的特性,是目前国内唯一
    的头像 发表于 02-27 10:08 632次阅读
    鸿道Intewell<b class='flag-5'>操作系统</b>的Linux<b class='flag-5'>实时</b>拓展方案

    新型工业提速:科东软件领航国产实时操作系统自主可控

    体系,相关核心技术自主可控,是目前国内唯一通过轨道交通、工业控制、医疗仪器、汽车四项功能最高等级安全认证的操作系统。经过多年高实时性和可控性验证并稳定运行,广泛应用于轨道交通、能源电力、高端装备、航空航天、半导体、医疗及汽车电子
    的头像 发表于 01-10 13:57 811次阅读