将传统桌面操作系统和嵌入式RTOS结合在军用嵌入式系统中

描述

软件和硬件技术的进步现在使得在安全的军事系统中同时使用嵌入式和桌面操作系统成为可能。Robert 研究了安全分离内核和嵌入式软件虚拟机管理程序等促成因素,然后解释了桌面操作系统在安全军事系统中的使用。

随着英特尔继续将其处理器技术引入嵌入式世界,嵌入式应用程序与更传统的桌面应用程序正在发生有趣的融合。对于军事应用,台式机系统和嵌入式系统传统上是独立的系统,通过安全网络连接(见图1)。但是,现在希望整合多个硬件平台,以减小尺寸、重量和功耗(SWaP),同时保持分立系统传统上提供的安全性。

图1:传统系统具有物理上独立的硬件来维护安全性和性能。

操作系统

通过结合新的软件和硬件技术,这种整合现已成为现实,而不必牺牲性能或安全性。该软件技术是利用英特尔多核虚拟化硬件技术的安全分离内核和嵌入式虚拟机管理程序。该软件平台成为现代硬件功能的真正推动者;但是,在检查该技术的应用之前,检查软件的两个组成部分是有益的。

软件组件 1:安全分离内核

分离内核是一个小型的轻量级操作系统,是与处理器的最低级别的连接。它提供的分离与传统的时间和空间分区操作系统没有什么不同(请参阅侧栏 1),但它通过在设备管理和分区间通信等领域实施预定义的安全策略来添加安全功能。此外,分离内核本身不提供传统的操作系统功能,如磁盘或网络访问,但它确实管理调度和内存功能。删除许多高级操作系统功能的优点是,分离内核可以保持小巧高效,提供实时应用程序性能和使用内存而不是物理网络连接的安全、高速分区间通信。

在安全领域,这种小型分离内核是高保证系统的基石,使用多个独立安全级别 (MILS) 架构提供安全策略实施和严格分区。这允许安全工程师构建需要采用最高级别的通用标准(当前为 EAL 7)的系统,并在同一物理硬件上运行需要不同安全级别的应用程序。许多分离内核是通过删除操作系统功能和添加安全功能从分区操作系统派生的。但是,为了达到最高级别的评估,还必须通过使用形式方法分析来证明软件的安全性。分离内核是在同一硬件平台上安全共存多个应用程序的基本推动因素。而且,当与嵌入式虚拟机管理程序结合使用时,可以实现桌面和嵌入式系统的结合。

软件组件 2:嵌入式虚拟机管理程序

软件虚拟机管理程序是一个软件层,允许不同的来宾操作系统驻留在单个硬件平台上。该技术通常用于企业或数据中心领域,以允许 IT 部门跨基于服务器的操作系统的多个版本运行其所有必需的应用程序。在嵌入式世界中,虚拟机管理程序的使用并不常见。在专用嵌入式系统上运行多个不同版本的操作系统的要求并不那么重要。在实时性能是关键层的系统中运行额外软件层的性能一直存在疑问。当虚拟机管理程序和分离内核结合在一起时,将桌面和嵌入式系统结合在一起的能力成为现实(参见图 2)。

图2:分离内核和虚拟机管理程序的组合允许在同一物理硬件上安全地运行多个操作系统。

操作系统

硬件:安全军事系统中的桌面操作系统

随着英特尔处理器的使用,传统的台式机操作系统也被用于许多军事系统。但是,当需要多个安全级别时,这可能会停止使用不安全的桌面操作系统。通过引入安全分离内核和虚拟机管理程序,传统的桌面操作系统和应用程序可以在其自己的未分类分区中运行,从而允许已知用户界面和应用程序的功能,而不会影响系统其余部分的安全性。进入桌面分区的任何内容都不能破坏安全分离内核,因此将包含在系统的未分类部分中。

这种软件分区和虚拟化还有助于整合硬件和减少SWaP,这在许多军事场景中特别令人感兴趣。通过在自己的分区中运行单独的系统,并允许在这些分区中运行不同的操作系统和应用程序,可以将物理上独立的系统真正整合到单个物理硬件中。

使用英特尔多核虚拟化处理器允许将 Windows 或 Linux 台式机系统与更传统的实时操作系统 (RTOS) 合并,并允许应用程序具有相同的性能和功能,就好像它们仍在自己的专用硬件平台上运行一样。

关于这种方法,另一个非常引人注目的功能是虚拟网络。在这里,来宾操作系统和应用程序可以与其他来宾操作系统和应用程序“虚拟”通信,即使它们驻留在单独的分区中也是如此。虚拟网络将应用程序视为真正的网络端口,因此这些应用程序可以像两个物理上独立的网络设备一样进行通信,即使通信是内部的。安全分离内核还可以对此虚拟网络强制实施安全策略,并指示哪些分区可以相互通信以及通信方向(参见图 3)。

图3:使用分离内核和虚拟机管理程序允许桌面操作系统和 RTOS 驻留在同一个硬件平台上。

操作系统

这提供了一个安全的分区环境,能够在同一硬件上运行彼此分离的多个来宾操作系统和应用程序。为了在保持实时确定性和安全性的同时实现接近本机的性能,分离内核和虚拟机监控程序可以利用对执行和内存的硬件虚拟化支持。在LynxSecure分离内核和虚拟机管理程序上进行的独立研究表明,与在同一硬件上运行同一Linux的本机实现的相同应用程序相比,在虚拟化Linux操作系统上运行基准应用程序产生的性能下降不到5%。

如果嵌入式虚拟机管理程序使用英特尔的虚拟化技术,则可以提供台式机系统迁移的另一个好处。这允许Microsoft Windows在完全虚拟化模式下运行,无需更改Windows即可在虚拟机监控程序上运行,并且软件分离内核和硬件虚拟化的组合给Windows留下了整个系统的印象,同时在自己的安全分区中运行。如果不需要对 Windows 或其应用程序进行任何更改,这将加快从独立系统到安全虚拟化系统的开发或移植活动。

在英特尔虚拟化硬件上运行的 MILS 解决方案的一个示例是 LynuxWorks 的 LynxSecure。它是一个安全的分离内核和嵌入式虚拟机管理程序,以独特的方式提供来宾操作系统的准虚拟化和完全虚拟化,并保持实时性能和 MILS 安全性,可以评估到最高的通用标准级别。它利用多核英特尔组件,即使在运行多个来宾操作系统时也能实现高性能。Microsoft Windows可以与Linux和RTOS在同一系统上运行,每个系统都有自己的安全分区,并以不同的安全分类运行应用程序。对于下一代军用嵌入式系统,LynxSecure和英特尔硬件的结合使系统和应用程序具有最大的灵活性,同时保持了最高级别的安全性。

审核编辑:郭婷

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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分