hightec成立于1982年,是商业开源编译器供应商,旨在为嵌入式软件开发提供可靠和安全的工具。hightec编译器可移植性较强,在软件正式发布之前,用户可使用支持其芯片的新版本编译器进行开发工作。pxros-hr作为经过认证的微内核实时操作系统,为用户提供高级别的数据保护,保证软件功能安全以及健壮性。
hightec编译器
hightec在此领域有30年的经验,拥有多核多架构支持以及优化技术。
• 主要功能
hightec编译器通过优化技术,以很小的空间占用成本,生成运行速度快的代码。编译器可以通过其命令行界面进行批处理,也可以在ide中使用,例如hightec基于eclipse的安全多核平台。hightec编译器拥有比同类产品更快的构建系统,支持并行编译过程。
编译器包括:
♦ 特定语言的前端
♦ 全局优化器
♦ 特定目标的优化器
♦ 商业库(未开源)
hightec c/c 编译器符合eabi标准,符合ansi/iso c和c 编译器标准,包括c89,c99。用户可以根据自身具体要求进行选取,如编程语言,目标体系结构,根据速度或代码大小优化性能级别以及调试级别。
• 多架构
hightec编译器支持各种嵌入式架构,允许从一个架构迁移到另一个架构。针对不同架构,使用同一个开发工具可缩短学习曲线,提高生产力并缩短产品上市时间。支持以下体系结构:
♦ tricore/aurix
♦ power architecture
♦ rh850
♦ arm
• 多核支持
在汽车行业的多核应用中,使用所谓的公共链接。这意味着分布在不同核心上的应用程序可以共享数据或代码。
大多数汽车应用程序都包含起初并未设计用于多核环境的遗留代码。因此,将应用程序从单核迁移到多核而不需要更改源代码显得尤为重要。为了满足这一需求,hightec提供了一种被称作高级多核支持的方法,可以轻松地将链接器级别的代码和数据映射到不同的核,而无需更改源代码。此功能使客户轻松实现现有代码的重用。
不同核之间的数据交换由隐藏和可见的概念来处理,该概念在链接器级别指定核之间的用户定义接口。必须明确指定数据和代码,以便除了它们所属的内核之外的任何其他内核都可见。链接器能够链接不同核心架构的目标文件,并生成一个结果输出elf文件。这种多核功能由调试器供应商支持,如isystem,lauterbach和pls。
• iso 26262支持
我们为客户提供编译器资格认证工具包(qkit),可以通过简单方便的方式执行标准的合规认证。qkit包含一个与validas ag合作开发的资格支持工具(qst)和一个自动化测试框架。qst包括编译器工具链的详细模型,并根据客户的用例生成资格认证所需的测试和文档,进行分支覆盖分析以满足安全标准iso26262。工具通常使用源代码的检测来实现此目的。但是,检测会更改应用程序的二进制代码,因此分析的应用程序和应用程序会有所不同。hightec提供了一种执行分支覆盖分析的替代方法,而不是检测hightec编译器的源代码:在应用程序的单独调试部分中输出应用程序的控制流,此信息可与调试器一起使用,以执行应用程序的分支覆盖分析。
另一个重要的安全相关措施是构建后检查,错误检测措施(例如内存布局的验证和elf文件的一致性)对于安全相关的应用程序至关重要。为此,hightec提供以下扩展:
♦ 详细的mapfile
♦ elf文件的转储器
生成的数据以标准xml格式输出,还包含有关代码和数据核心分配的信息。核间的通信被列在映射文件的交叉引用表中。用户根据这些信息可以编写脚本来验证输出和应用程序的一致性。
实时操作系统
pxros-hr是一个功能强大的认证实时操作系统,可以应对未来多核软件开发的复杂性。
• 实时微内核操作系统
pxros-hr实现了透明中断的概念。微内核既没有中断锁定也没有延迟,因此可以通过中断服务程序随时中断。
使用pxros-hr,中断服务程序由应用程序控制。它可以使用os服务的一个子集,例如,通过事件将信号发送到任务。os服务不是在中断级别执行,而是在从中断级别返回到任务级别时执行。
• 有内存保护机制的任务间通信
严格封装所有组件是pxros-hr中的安全原则。操作系统使用硬件内存保护单元(mpu)在运行时保护所有应用程序对象,包括任务间通信。pxros-hr管理任务的mpu,在任务的切换期间对相应的mpu寄存器重新编程。
pxros-hr尤其关注任务间通信的实现,因为它在多核应用中具有高度相关性。我们凯发娱乐登录的解决方案主要针对的是:
♦ 受内存保护的通信
♦ 避免共享内存
♦ 通信对象作为引用传递
♦ 保护外围设备访问
资格认证套件
hightec公司通过提供适当的错误检测,支持用户对编译器工具链进行资格认证。此外,hightec与validas ag合作开发了一套资格套件(qkit),可自动完成相关认证过程。
生成的安全文件:
♦ 工具分类报告
♦ 工具安全手册(减轻潜在错误的措施)
♦ 工具资格认证计划(验证目标,标准要求)
♦ 工具资格报告(已使用的用例和功能,测试结果工具置信度)
下图说明了认证过程的基本工作流程:
与基于默认工具设置和非相关测试套件的标准安全手册相反,hightec独特的方法为用户提供了一套定制的安全文档。这些安全文档基于用户的特定和优化的工具设置,这些设置与需要认证的应用相关。qkit在多种体系架构中都可用,例如tricore/aurix, arm以及power architecture。