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

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

3天内不再提示

迈向FACE组件的安全性:高保证性和便携性

星星科技指导员 来源:嵌入式计算设计 作者:BENJAMIN BROSGOL,DR 2022-11-09 14:37 次阅读

作者:BENJAMIN BROSGOL,DR. DUDREY SMITH

FACE [未来机载能力环境] 方法是一项政府-行业联合软件标准和商业战略,用于获取负担得起的软件系统,促进全球国防计划中便携式能力的创新和快速集成。FACE——最初只关注航空电子设备,但现在已扩大到包括广泛的应用目录,用于整个实时系统范围——并不直接解决质量或适用性问题。由于这些特征在实践中显然很重要,因此组件开发人员的自然问题是如何满足可移植性的明确FACE目标以及软件可靠性,安全性和安全性的任何特定领域要求。部分答案是选择适当的软件开发技术和语言。

FACE 参考体系结构由五个部分组成,每个部分都有一组定义的要求:

操作系统段 (OSS)。OSS 是其他 FACE 段的软件基础,为分区、进程/线程管理和内存管理提供服务。它还可能包括运行状况监视、故障管理和生命周期管理等功能。

输入/输出服务部门 (IOSS)。IOSS 在 PSSS 一致性单元 (UoC) 和为给定平台提供的 IO 设备之间提供标准接口

特定于平台的服务部门 (PSSS)。PSSS 包括设备服务、公共服务(例如,日志记录或设备协议中介)和图形服务。它们在便携式组件段 (PCS) UoC 和 IOSS 之间提供标准接口。

运输服务部门(TSS)。TSS为来自其他细分市场的UoC提供通信服务,包括分发,路由,状态持久性和数据转换。

便携式组件部门 (PCS)。PCS UoC 提供特定的应用程序功能,仅使用 TSS 接口进行数据通信,仅使用 OSS 接口进行操作系统支持。

图1:人脸参考体系结构示意图。经The Open Group许可转载。

poYBAGNrSpKACQCQAAFIMBsjZUg818.jpg

满足给定段要求的组件称为相对于该段的“一致性单位”。FACE 一致性计划定义了验证、认证和正式认可注册软件符合 FACE 技术标准的流程,并指定了证明符合各个细分市场要求的政策和程序。

开放源码软件及其界面

FACE 参考架构的基础是 OSS(图 2),它通过 ARINC 653 和 POSIX 应用程序编程接口 (API) 为其他段提供标准接口。当编程语言运行时支持库(通常情况)与其服务的接口是通过语言语法而不是 FACE API 时,它们被视为 OSS 的一部分。

图2:操作系统段 (OSS) 及其界面。

pYYBAGNrSpSADPYEAADiVUbXKrY186.jpg

因此,编程语言运行时与其他 OSS 组件在关键方面有所不同。而不是由 API 指定 - 考虑到编译器实现之间的差异,这将过度约束 - 运行时接口由一组语言功能(所谓的功能集)定义。运行时的实现可能会也可能不会通过对 FACE API 的调用来实现功能集的功能。更一般地说,OSS组件与其实现中所需的较低级别服务之间的接口(所谓的底部接口)不受FACE技术标准的定义或约束。

接口配置文件

符合 FACE 标准的组件可以部署在具有不同安全和/或安保要求的各种环境中。因此,FACE技术标准为OSS接口定义了一组配置文件。按照普遍性的递增顺序,它们是:

安全性:这是一个最小的接口,旨在支持具有高安全保证要求的应用程序。它保证了实时确定性行为,并需要时间和空间划分。

安全:这由两个子配置文件组成,安全底座和安全扩展。这些针对的是具有安全认证要求的系统。这两个配置文件保证了实时确定性行为,并建议但不要求时间和空间分区。

通用:在此配置文件中,不保证实时确定性,并且时间/空间分区是可选的。通用型材适用于安全/安保保证水平较低的组件。

语言很重要

编程语言的选择是系统设计过程中的基本决策之一。源代码是开发、验证和维护的工件,也是安全或安保认证所需的许多分析的主题。尽管原则上几乎任何编程语言都可用于开发高保证软件,但在实践中,当所选语言明确设计为可靠性、安全性和安全性时,软件生命周期成本就会降低。FACE技术标准特别引用了四种候选语言 - C,C++Ada和Java - 其中,Ada最符合这一标准。Ada特别适用于需要符合安全配置文件或其中一个安全配置文件的组件,避免了缓冲区溢出等C和C++漏洞,并且还避免了Java的非确定性问题(垃圾收集,线程语义)。

Ada 通过支持健全的软件工程实践、强制类型安全的编译时检查以及强制实施动态约束(如数组索引边界和标量范围)的运行时检查,帮助满足高保证要求。Ada 并发功能的确定性子集(称为 Ravenscar 配置文件)允许将 Ada 并发用于需要满足高保证认证要求的应用程序,例如用于机载软件的 DO-178B 或 DO-178C。

便携性是FACE方法背后的驱动力,也是Ada的关键目标。编程语言面临的挑战是在不牺牲运行时效率的情况下以独立于平台的方式定义语义。Ada 通过多种方式实现这一目标。首先,它为并发(任务)、内存管理和异常处理提供了一个高级模型,具有跨所有平台的标准语义,可以映射到目标系统提供的最有效的服务。这与 FACE 参考体系结构中对语言运行时的处理完全一致。使用 Ada,开发人员还可以以独立于计算机的方式表达类型的逻辑属性(例如整数范围、浮点精度、记录字段/类型),然后编译器可以将其映射到有效的底层表示形式。数据结构(布局、对齐、地址)的物理表示有时由系统要求指定,Ada 允许在程序逻辑中定义这一点,但与目标相关的属性分开,以便于维护。

功能集

提供OSS配置文件的基本原理 - 更高的保证级别意味着对通用性的限制 - 也适用于编程语言。因此,FACE技术标准为C,C++,Ada和Java定义了相应的限制集(功能集)。安全性和安全性功能集指定运行时功能的子集,并限制在更高保证级别上可能存在问题的其他通用功能。

FACE 技术标准的 3.0 版为 Ada 定义了两个通用功能集:一个用于 Ada 95,它允许大多数语言,另一个用于 Ada 2012。Ada 2012 通用功能集包含 Ada 95 集和多个 Ada 2012 功能,但尚未包含基于契约的编程(如图 3 所示)。Ada 的安全和安保功能集仅针对 Ada 95 定义,而尚未为 Ada 2012 定义。这些功能集引入了进一步的限制,例如将并发功能限制为 Ravenscar 配置文件允许的功能。

图3:Ada 2012 基于合约的编程示例如下所示:子程序前置条件和后置条件。

poYBAGNrSpaAP4y4AADu3NhgFY0756.jpg

Ada 2012标准引入了重要的功能,特别是“基于合同的编程”,它直接支持安全和安保,并通过主要防御系统提供商使用的编码标准实现。Ada 2012 在广泛的目标平台上实施,包括已通过或正在计划通过 OSS 一致性认证的实时操作系统 (RTOS)。鉴于 Ada 2012 的成熟度和优势,正在考虑在更新 FACE 技术标准时将基于合同的编程和其他 Ada 2012 功能添加到 Ada 的安保和安全功能集中。

面孔:向前迈进

寻求开发符合 FACE 标准的组件的组织需要遵守 FACE API 以实现可移植性,但在开发和验证技术的选择方面具有相当大的灵活性。对于需要高保证的应用程序,Ada 提供了内在优势,并具有可支持所有版本语言标准的开发环境。例如,AdaCore的GNAT Pro实现了Ada的安全扩展功能集,并将在未来的FACE版本中支持Ada功能集。GNAT Pro的Ravenscar运行时间可用于Wind River的VxWorks 653和Lynx Software Technology的LynxOS-178 RTOS为多个版本的FACE技术标准实现的安全配置文件,允许开发人员设计具有安全和确定性行为的可移植并发程序。

Ada 在军事和商业航空电子项目以及其他关键应用中的成功使用历史悠久,FACE 组件开发人员可以利用 Ada 的优势在相关保证级别生成可移植代码。Ada 的重用不仅仅是在小型图书馆的层面上;航空电子设备开发人员已经将几乎完整的生产线可更换单元 (LRU) 和功能应用模块移植到不同的主机开发环境和不同的目标中。Ada的设计并正在用于FACE方法所针对的应用程序和环境,无论是在新项目还是现有系统的升级中。开发人员可以将 Ada 用于符合其保障需求的 FACE 配置文件(安全性、安全基础、安全扩展、通用)。

审核编辑:郭婷

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

    关注

    33

    文章

    8612

    浏览量

    151294
  • 操作系统
    +关注

    关注

    37

    文章

    6838

    浏览量

    123380
收藏 人收藏

    评论

    相关推荐

    如何实现 HTTP 协议的安全性

    协议的安全性,可以采取以下几种方法: 1. 使用HTTPS HTTPS(安全超文本传输协议)是HTTP的安全版本,它在HTTP的基础上通过SSL/TLS协议提供了数据加密、数据完整
    的头像 发表于 12-30 09:22 198次阅读

    集中告警管理如何提升设施安全性

    在工业或商业建筑中,集中告警管理已成为确保安全性或检测故障的必备工具。它是如何提升设施安全性的?欢迎大家阅读文章了解~
    的头像 发表于 12-13 15:51 124次阅读
    集中告警管理如何提升设施<b class='flag-5'>安全性</b>?

    电池的安全性测试项目有哪些?

    电池的安全性测试是保证电池在实际使用过程中稳定、安全的重要手段。通过一系列严格的测试项目,能够有效评估电池在不同条件下的表现,并提前发现潜在的安全隐患。对于消费者而言,了解这些测试项目
    的头像 发表于 12-06 09:55 407次阅读
    电池的<b class='flag-5'>安全性</b>测试项目有哪些?

    永磁同步电机的安全性分析

    永磁同步电机的安全性分析主要涵盖其设计、运行、维护以及故障处理等多个方面。以下是对永磁同步电机安全性的分析: 一、设计安全性 材料选择 : 永磁同步电机采用永磁体(如钕铁硼等稀土永磁材料)提供磁场
    的头像 发表于 11-22 10:44 270次阅读

    在电气安装中通过负载箱实现最大效率和安全性

    在电气安装中,负载箱是一种常用的设备,主要用于模拟实际的电力负载,以便进行各种电气设备的测试和调试。通过负载箱,可以实现最大效率和安全性,从而提高电气设备的运行性能和使用寿命。 负载箱可以实现最大
    发表于 11-20 15:24

    socket编程的安全性考虑

    在Socket编程中,安全性是一个至关重要的考虑因素。以下是一些关键的安全性考虑和措施: 1. 数据加密 使用TLS/SSL协议 :TLS/SSL(传输层安全性/安全套接层)是网络
    的头像 发表于 11-01 16:46 268次阅读

    UWB模块的安全性评估

    UWB(超宽带)模块的安全性评估是一个复杂而关键的过程,涉及多个方面,包括技术特性、加密机制、抗干扰能力、物理层安全等。以下是对UWB模块安全性评估的分析: 一、技术特性带来的安全性
    的头像 发表于 10-31 14:17 260次阅读

    智能系统的安全性分析

    智能系统的安全性分析是一个至关重要的过程,它涉及多个层面和维度,以确保系统在各种情况下都能保持安全、稳定和可靠。以下是对智能系统安全性的分析: 一、数据安全性 数据加密 : 采用对称加
    的头像 发表于 10-29 09:56 264次阅读

    UPS电源的安全性和可靠分析

    随着信息技术的飞速发展,数据和信息已成为现代社会的重要资产。因此,确保数据的持续可用和完整变得至关重要。不间断电源(UPS)系统作为保护关键设备免受电力中断影响的重要手段,其安全性和可靠
    的头像 发表于 10-28 10:49 466次阅读

    云计算安全性如何保障

    云计算的安全性是一个复杂而多维的问题,涉及多个层面和多种技术手段。为了保障云计算的安全性,需要采取一系列综合措施,以下是具体的保障方法: 一、数据加密 数据加密是保护云计算安全性的核心手段之一
    的头像 发表于 10-24 09:14 286次阅读

    恒讯科技分析:IPSec与SSL/TLS相比,安全性如何?

    IPSec和SSL/TLS都是用于保护网络通信安全的协议,但它们在实现方式、安全性侧重点、兼容以及使用场景上存在一些显著的区别。1、安全性方面:IPSec主要关注网络层的
    的头像 发表于 10-23 15:08 353次阅读
    恒讯科技分析:IPSec与SSL/TLS相比,<b class='flag-5'>安全性</b>如何?

    固态电池安全性怎么样

    固态电池在安全性方面表现出显著的优势,这主要得益于其独特的固态电解质结构。以下是对固态电池安全性的详细分析:
    的头像 发表于 09-15 11:47 726次阅读

    请问DM平台访问安全性如何控制?

    DM平台访问安全性如何控制?
    发表于 07-25 06:10

    蓝牙模块的安全性与隐私保护

    蓝牙模块作为现代无线通信的重要组成部分,在智能家居、可穿戴设备、健康监测等多个领域得到了广泛应用。然而,随着蓝牙技术的普及,其安全性和隐私保护问题也日益凸显。本文将探讨蓝牙模块在数
    的头像 发表于 06-14 16:06 555次阅读

    防服务器托管,保证网站稳定性和安全性

    意味着网站的安全性和稳定性。我们需要更可靠和稳定的服务器托管防 服务,以确保我们的网站运行。 网络的风险和安全威胁已经成为我们不可避免的问题。例如,网络攻击、黑客入侵和病毒感染将直接影响我们的网站运行和数据
    的头像 发表于 01-10 15:30 310次阅读