助力实现向关键基础设施软件 定义平台迁移 - wind … - helix...wind river...

8
WHEN IT MATTERS, IT RUNS ON W WHEN IT MATTERS, IT RUNS ON WIND RIVER 助力实现向关键基础设施软件 定义平台迁移 Paul Parkinson EMEA航空航天与国防部现场工程主管

Upload: others

Post on 29-May-2020

29 views

Category:

Documents


0 download

TRANSCRIPT

WHEN IT MATTERS, IT RUNS ON WIND RIVERWHEN IT MATTERS, IT RUNS ON WIND RIVER

助力实现向关键基础设施软件定义平台迁移Paul ParkinsonEMEA航空航天与国防部现场工程主管

关键基础设施的嵌入式系统正在发生巨大的变化。回顾其发展历程,这类系统具有不同

级别的网络连接功能,能够执行特定的功能,并且可能已经为了延长使用寿命经过手动

软件更新。如今,无处不在的网络使得嵌入式系统能够迅速连接入网,即边缘设备。因

此,人们对应用程序的功能要求也日益提高,不仅希望其能够提供传统的自动化和控制

功能,还具备更强大的智能性能及支持更加动态的行为的能力。

智能化设备日益成为各行各业的共同需求,以期实现自动化系统向自治化系统的过渡。

这对基于开放标准的软件定义架构提出了更高的技术要求,要求其能够将多个应用程序

(包括处于不同关键级别的应用程序)整合到单一的计算平台上,从而实现应用程序迁

移、可移植性和互操作性,避免陷入专有架构。

风河® Helix™ Virtualization Platform可提供灵活的虚拟化平台,以应对这些共同需求。

该平台支持基于开放标准的软件定义架构,依托成熟的软件技术支撑,能够满足航空航

天、汽车、国防、工控和医疗市场的安全认证要求。

执行摘要

目录

执行摘要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

嵌入式系统从自动化向自治化的演变 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

整合嵌入式虚拟化平台,以响应市场共同需求 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

关键基础设施嵌入式虚拟化平台的演变 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

利用开发工具助推数字化转型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

结语 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2 | 白皮书

助力实现向关键基础设施软件定义平台迁移

嵌入式系统从自动化向自治化的演变

3 | 白皮书

助力实现向关键基础设施软件定义平台迁移

在过去的十年里,嵌入式系统在性能、连接性和功能方面不断升

级完善。过去,在互联互通网络体系的一端,一些嵌入式设备已

经执行了特定功能,并且具有较长的部署生命周期。它们可能鲜

少通过增加新功能或部署安全更新的系统升级方式来解决安全漏

洞。未连接入网的系统可能需要手动更新,耗时较长,且容易出

错,成本也比较高,具体取决于部署的设备数量和物理访问的难

易程度。

根据摩尔定律,处理器的性能多年来显著提升,网络连接成本也

持续下降。因此,越来越多的边缘设备连接入网。创新的网络基

础设施端安全通信会话有助于加快将新的应用程序部署到边缘设

备,助推下一代智能设备的开发和部署,以及从自动化到自治化

过渡。

航空航天和国防行业

在航空航天领域,航空电子设计日趋采用托管多个不同安全级别

的应用程序的通用计算平台的集成模块化航空电子系统(IMA)

架构,以替代原来使用特定功能现场可更换单元(LRU)的联合

航空电子系统架构。这种转变已经在商业航空航天和国防部门领

域成功得以推动,共同响应降低航空电子系统的整体尺寸、重量

和功率(SWaP)的要求,特别是随着联合LRU数量的增加以支

持新的航空电子功能。采用IMA可以显著减轻飞机的结构重量、

降低油耗的同时,增加载客量或有效载荷。使用标准的IMA软件

架构不仅有助于实现互操作性和集成,对商用和军用程序亦产生

了重大积极影响,加快创新的同时,降低了设计锁定风险和整个

生命周期成本。

汽车行业

随着市场竞争日益加剧以及创新步伐不断加快,汽车行业面临着

一系列挑战,主要推力来自增强的车载信息娱乐系统(IVI)、无

线(OTA)更新、先进的驾驶辅助系统(ADAS),以及最近的

自动驾驶等市场需求。十年来,自动驾驶车辆用处理器数量因此

剧增。自动驾驶系统部署要求进一步提升机载计算能力,包括通

用图形处理单元(GPGPU),从而支持人工智能(AI)和机器学

习(ML)应用程序。这类车载系统以及相关布线,不仅增加了

车身重量,对车辆性能、燃油经济性、二氧化碳排放和成本亦产

生了不利影响(与航空航天市场境况相似)。因此,各大汽车制

造商现如今纷纷采用通用的嵌入式计算平台来整合应用程序并降

低SWaP。

工控行业

工控业企业正积极应对数字化转型,利用工业物联网(IIoT)和

工业�.�来解决业务挑战并保持自身竞争力。智能工厂、能源系

统等关键基础设施应用实时监控和分析功能来衡量运营效率,并

通过分析和预测性维护来最大限度地减少因系统故障导致的停机

时间。实时控制系统的网络监控功能有利于实现数字化转型。众

多公司希望通过整合通用计算平台和远程升级功能来提高运营效

率。

医疗行业

科技的日新月为医疗行业带来先进的镜像系统、手术机器人及其

他关键医疗设备,该行业目前正在经历医疗卫生领域的变革。由

于牵系患者的生命安全,医疗系统必须具备较高的安全性和可靠

性。当前的网络安全法规要求医疗设备制造商必须通过无线方式

更新他们的系统;考虑到设备数量庞大以及分布式安装,手动更

新成本较高。

整合嵌入式虚拟化平台,以响应市场共同需求

关键基础设施嵌入式虚拟化平台的演变

4 | 白皮书

助力实现向关键基础设施软件定义平台迁移

尽管每一个垂直市场面临的挑战和要求不尽相同,但从抽象层面

来看,嵌入式软件平台目前所需的基本功能很相似甚至是相同。

换而言之,各大垂直市场一致需要一个安全可靠的平台,来响应

相同的高级要求:

不同安全级别:整合平台一般要求托管关键的实时控制应用程

序和通用应用程序。需将安全组件隔离出来并减少对平台其余

部分的依赖,尽可能地降低整个平台的安全认证成本。

开放标准:各行各业日益需要采用开放标准来实现应用程序迁

移和可移植性,保持竞争力,并防止设计锁定。商业航空航天

部门在开放航空电子系统架构上已经采用 ARINC ��� 标准,而

美国政府采用了模块化开放式系统方法(MOSA)。未来机载

能力环境(FACE™)技术标准为军用航空电子系统提供了开放

的航空电子系统架构,并且采用商业开放标准( ARINC ���,

POSIX®)。汽车行业采用自适应AUTOSAR(汽车开放系统架

构),便于更好地使用商用现货(COTS)软硬件,并且提供

灵活、可扩展的框架。 在工控行业中,开放流程自动化论坛

(OPAF)致力于开发安全、基于开放标准、可互操作的过程

控制架构。

重新使用和可扩展性:知识产权及以前开发的(甚至以前认证

的)应用程序需能够在新的嵌入式计算平台上重新使用。其中

包括使用多核处理器体系结构所提供的性能和可扩展性以及硬

件虚拟化支持,同时管理并帮助应用程序开发人员更轻松地使

用底层硬件架构。此外还要求能够在平台上部署新应用程序以

提供其他功能。

信息安全:如今,确保设备在运营期和生命周期每一阶段的安

全越来越重要,从设计到生产、调试、部署、运营,直至生命

周期结束。在部署过程中,需要确保设备在不同阶段均能够安

全运行:可通过安全初始化来验证已部署软件的完整性,以确

认是否被破坏或篡改;在运营期间需确保通信安全并抵御网络

攻击;需将敏感数据安全地存储在进程和静态数据中,即便是

断电时也不例外。

支持现代化开发方法:各垂直市场制造商需在较短的时间内提

供优质的新软件功能。基于DevOps文化,许多公司现在使用

敏捷开发流程来加速变革,同时采用自动化持续集成和持续交

付方法来大幅缩短其集成和交付时间,并提高响应能力。

在过去十年中,处理器技术的进步对现存架构产生了重大影响;

特别是随着处理器硬件虚拟化支持的发展和成熟,企业云计算平

台能够高效且大规模地托管虚拟化应用程序。硬件虚拟化支持也

已成功部署在嵌入式系统中,特别是已部署在使用 VxWorks®���

多核版的安全关键型航空电子系统中,其中多个虚拟化应用程序

可托管在通用航空电子计算平台上。通过整合硬件虚拟化、多核

处理器架构和基于开放标准的软件定义架构,完善关键基础架构

的通用嵌入式虚拟化平台,见图�。

依托数十年安全关键、信息安全的嵌入式hypervisor软件技术经

验 以 及 长 期 以 来 的 行 业 领 导 地 位 , 风 河 成 功 开 发 了 H e l i x

Platform,以响应行业需求。

内核 x 内核 x+� 安全内核n

开放式架构行业框架

多核处理器

应用程序和算法

安全关键型RTOS 通用 OS Windows 传统 OS 其他 OS

虚拟化

图�. 通用计算平台软件定义架构

5 | 白皮书

内核x 核心 x+� 安全核心n

行业特定框架,如ARINC ���、AutoSAR、OPAF

多核处理器

应用程序和算法

VxWorks Linux安卓 Windows 传统 OS 其他 OS

风河Hypervisor

Core x Core x+� Safety Core n

Industry-Specific Frameworks, i.e., ARINC ���, POSIX® , FACE ™

Multi-core Processor

Applications and Algorithms

VxWorks LinuxAndroid Windows Legacy OS Other OS

Wind River Hypervisor

助力实现向关键基础设施软件定义平台迁移

Hypervisor与虚拟机

Helix Platform使用类型�的hypervisor(也称裸机hypervisor),

如图�所示,可直接在处理器上运行;通过直接中断方式提供接近

原生的实时性能;并提供用于安全认证的可扩展性、确定性和较

小的占用空间。 相比之下,类型�的hypervisor专注于抽象的底层

物理环境,所提供的性能不适用于硬实时应用程序。 此外,它们

的占用空间太大,无法通过安全认证。类型�的hypervisor能够为

多核处理器架构提供高效的可扩展性,因为与传统的单核和微核

架构相比,它可以扩展到更多的内核。

基于处理器专用hypervisor权限级别和完全硬件虚拟化支持,该

类型的hypervisor使得��位和��位guest操作系统及相关应用程序

能够在虚拟化环境(即虚拟机)内的不同权限级别运行,例如

VxWorks、风河Linux、Microsoft®Windows®(��位)、安卓、裸

机和第三方操作系统,包括其他类型的Linux。

类型�的hypervisor还利用处理器的内存管理单元(MMU)来强制

隔离各虚拟机,从而防止guest操作系统(OS)及其相关应用程

序对其他虚拟机或特权系统资源进行未经授权的编程I/O访问;任

何未经授权的访问都会报告给hypervisor。

许多现代处理器都带有直接内存存取(DMA)引擎,便于在源和

目标存储器之间执行有效的数据块传输,例如在系统存储器和网

络接口等外部I/O设备之间。Hypervisor还使用IOMMU处理器硬

件资源来确保guest操作系统和应用程序仅在授权的源地址和目

标地址之间执行DMA传输。鉴于IOMMU能够检测并阻止未经授权

的DMA访问,Helix Platform 能够托管配有guest操作系统的虚拟

机,使用未知来源的第三方设备驱动程序。这种隔离功能有利于

确保功能安全和信息安全,并且支持将多个应用程序整合到一个

通用嵌入式处理平台上。

图�. Helix Platform架构

这些硬件虚拟化和隔离功能使得Helix Platform能够托管安全关

键型VxWorks实时应用程序,以及嵌入式Linux应用程序和通用

操作系统,如Microsoft Windows及其他第三方传统操作系统。

Helix Platform不仅可以重新托管以前开发的软件,同时还保留

对现有知识产权的投资,搭建起现存系统和下一代系统之间的资

产桥梁,以降低升级在线系统时的技术风险。

分区间通信

为了通过整合平台实现虚拟机间通信, Helix Platform提供了多

种分区间通信方法:

共享内存和虚拟网络接口控制器(VNIC)支持VxWorks、

Linux、Windows guest操作系统以及其他第三方guest操作系

统之间的通信。

安全的进程间通信(IPC)发生在受控的共享内存区域,能够

实现多个guest操作系统之间的通信,可能在不同的关键级别

运行。

静态配置与动态配置

Helix Platform 依托风河强大的安全平台功能,跨越多个市场和

认证标准,久经验证。经过改进已验证的代码库,可支持更广泛

的应用案例,包括静态和动态行为,如图�所示。

静态配置适用于运行安全关键应用程序的系统,在系统配置和构

建时分配系统资源,以便实时预测和确定如何使用这些资源。结

合前面所述的稳健的分区功能,静态配置可支持在不同分区中运

行多个安全关键型应用程序,或者包含不同完整性级别的多个应

用程序的不同安全级别系统。风河公司在VxWorks ���首创性提

出独立构建、链接和加载(IBLL)方法,用于独立配置、构建、

链接和加载应用程序,以确保各应用程序在不影响其他组件的情

况下能够独立更新,从而实现增量认证并显著降低平台的整个生

命周期成本。有关IBLL的更多详细信息,请参阅风河白皮书集成

模块化航空电子设备的安全关键性软件开发。

动态配置适用于对应用程序和系统资源配置灵活性要求较高的系

统,这类系统可能需要动态更改系统配置和实时操作以适应不断

增长的服务需求或者响应外部环境或操作模式。利用这种方法,

可以托管各种guest操作系统和应用程序,包括对于确定性要求

不高的系统,这是相对于使用静态配置的安全关键型guest操作

系统而言。

调度

Helix Platform还支持两种不同类型的调度,适用范围更为广泛:

优先级抢占调度:这种调度类型使用hypervisor运行的线程,每

个guest机操作系统及每个内核都对应一个超线程。这种方法可

以使guest操作系统能独立执行优先级抢占调度(如图�所示),

而不会影响其它使用自身本地调度策略的guest操作系统执行调

度。使用这种调度模型,可以在Helix Platform托管具有动态行

为的应用程序和事件驱动系统。

帧调度:这种调度可启用多个帧时隙的系统调度,以定义各个

guest操作系统及其相关应用程序的执行时间。帧调度器可用于确

保通用应用程序不超出分配的运行时间段且不会阻碍同一平台上

托管的其他安全关键型应用程序的正常运行(如图�所示)。

Helix Platform允许同步调度所有内核。帧调度器还可在系统配置

和构建时定义多个调度任务,并使用受信任的guest操作系统分区

的专用 hypervisor call(称为hypercall)实现从一个调度到另一

个调度的转换。多调度支持有助于使用多样化操作模式,例如,

初始化模式、操作模式以及维护和/或诊断模式。帧调度模型广泛

应用于安全关键型航空电子系统(使用ARINC ���调度器),然而

也同样适用于其他市场领域的安全关键型系统,以便在同一计算

平台上托管通用和安全关键型应用程序。

6 | 白皮书

风河Hypervisor(安全认证配置)

VxWorks认证版

VxWorks认证版

第三方安全OS

Guest支持服务 VxWorks Linux

安卓 Windows 其他 OS 或 RTOS

动态动态灵活配置

静态静态安全配置

图�. 静态配置与动态配置

VM� VM� � VM VM� VM�

�VM

管理员

时间

抢占式多任务处理 上下文完成

轮询(处于同一优先级的虚拟机)

内核 �

优先级

图�. 优先级抢占调度

助力实现向关键基础设施软件定义平台迁移

主要帧

IDLE

VM1 VM2 VM3 VM1 VM2 VM2 VM1

管理员次要帧

图�. 帧调度

利用开发工具助推数字化转型

7 | 白皮书

助力实现向关键基础设施软件定义平台迁移

健康监测框架

支撑多个异构虚拟机的系统需能够监视、检测和恢复硬件故障、

各虚拟机内的guest操作系统故障以及应用程序故障,因此极需

要一个健康监测框架来帮助其隔离故障并防止故障传播。尽管这

些要求在概念上看似简单,但实际上很复杂,需要调动整个系统

才 能 确 保 平 台 持 续 可 用 。 风 河 在 为 安 全 关 键 型 I M A 应 用 开 发

ARINC ���健康监测(HM)框架方面战绩斐然,并凭借丰富的专

业知识成功开发适用于Helix Platform的健康监测框架。

健康监测框架能够处理故障警报或可处理或记录的通知消息。健

康监测框架采用表驱动的分级执行方式,在应用程序级别、虚拟

机级别或嵌入式平台级别(在航空航天领域称为进程级别、分区

级别和模块级别)处理健康监测事件。健康监测框架还支持在事

件发生级别或传递到的下一级别处理健康监测事件。例如,可以

处 理 单 个 虚 拟 机 内 的 故 障 , 并 且 可 以 将 错 误 处 理 从 虚 拟 机 的

guest操作系统路由到hypervisor。系统集成商可利用该方法在

系统配置时确定故障应对方案。健康监测框架还支持虚拟机和嵌

入式平台级别的冷启动和暖启动,从而在不干扰其他虚拟机的情

况下重新启动特定的虚拟机。

图�. 使用风河 Workbench进行系统配置和应用程序开发

嵌入式虚拟化平台具有诸多优势。为了充分发挥其优势,需要借

助复杂的开发工具套件来管理系统配置的复杂性以及实时异构环

境的应用程序的构建和开发。

风河在开发通用应用程序以及安全关键型应用程序的集成开发环

境、动态可视化工具和仿真平台方面拥有资深的经验和知识,其

最新开发的风河Workbench开发环境(见图�)可以为系统定义

和配置提供图形支持,包括将虚拟机分配给处理器内核以及调度

安排。通过在后台对系统配置持续进行验证,及时将问题反馈给

开发人员。此外还可自动执行许多构建和配置任务,从而减轻系

统集成商和应用程序开发人员的负担。

已获得专利的风河 System Viewer(见图�)可显示系统图形,

方便开发人员查看和解读系统事件之间的交互,如中断、guest

操作系统原语、VxWorks应用程序任务、POSIX线程或ARINC

���进程。

Helix Platform因采用现代的 Clang / LLVM 编译器工具链而具有

较多优势,包括支持最新的 C 和 C ++ 语言标准以及性能优势,

例如快速编译、低内存占用以及通过优化代码加快运行。

图�. 使用风河System Viewer实现动态可视化

.

.

结语

助力实现向关键基础设施软件定义平台迁移

.

嵌入式目标平台Helix Platform或风河Simics®可用于开发应用

程序。Simics打破了对硬件的依赖,可支持在开发生命周期的

早期进行虚拟原型设计,从而减少后期高昂的返工成本。此外

还可大规模并行运行多个测试案例,并通过持续集成/持续交付

(CI/ CD)开发Helix Platform应用程序。

传统的嵌入式系统正面临着功能、可维护性以及淘汰等方面的重

大挑战。未来的系统在软件定义架构和开放标准支持方面要求更

高。关键基础设施系统也越来越需要适应各大垂直市场的严格安

全认证要求。

Helix Platform 通过提供嵌入式虚拟化平台解决了这些挑战,且

作为一种资产桥梁,能够在可扩展的现代平台上整合传统应用程

序和以前开发的知识产权。它推动使用多样化操作环境开发基于

开放标准的新应用程序,提供可供灵活选择的静态和动态配置,

并借助现代化开发方法和进程托管和部署不同安全级别的多样化

应用案例。

欲了解更多Helix Platform知识,

请访问 www.windriver.com.cn/products/helix-platform 。

http://www.windriver.com.cn Email: [email protected]