VOsySmonitor是一个基于ARM TrustZone的 ISO 26262 ASIL C 认证的安全关键系统分区程序,这使得具有不同关键级别的多个操作系统能够并发执行。
创新的 VOsySmonitor 架构将系统分为两个主要隔间,一个用于安全关键应用程序,另一个用于标准应用程序,并使用 Arm TrustZone 将它们隔离。
这种隔离对于提供安全性至关重要,安全关键应用程序的运行受到标准应用程序的完全保护(在带有标记缓存和隔离设备的单独内存地址空间中)。
VOSySmonitor 软件层位于车辆软件堆栈的最低层(Arm 监控层),以一流的性能提供对系统资源分区的最强控制,同时提供最灵活的系统架构。
因此,VOsySmonitor 是实现下一代汽车 eCockpit 的完美解决方案,在现代汽车中,车辆信息、娱乐、导航、摄像头/视频和设备连接被组合到显示器中,而无需使用昂贵的传统 1 型虚拟机管理程序的繁琐依赖。
此外,VOsySmonitor 不强加任何封闭的解决方案或依赖组件,并且可以与Linux、Android、Automotive Grade Linux等开源技术结合使用,这允许通过提出自下而上的解决方案来降低成本,其中Virtual Open系统侧重于关键资源的隔离、安全和性能。
简化的虚拟化电子控制单元:VOsySmonitor 支持在同一平台上执行多个操作系统,没有性能开销,降低了硬件和布线成本,简化了软件维护和原型设计。
最高的安全性和安全性:VOSySmonitor 对系统资源进行分区,将安全关键应用程序隔离在受保护的隔间中。它通过了 ISO 26262 ASIL C 认证,并支持安全可信执行环境实施,例如 OPTEE。
可扩展性和开放性:VOSySmonitor 提供了一个可扩展的解决方案,其复杂性从简单的用例(例如使用 RTOS 运行的 Linux)到具有大量操作系统协同工作的 ADAS 应用程序。
联发科 MT2712 上的 VOsySmonitor 基准性能
VOSySmonitor 应用程序的用例示例,其中 IVI 系统(Android Auto 9)和安全关键型实时操作系统 ( FreeRTOS ) 在 Mediatek MT2712 平台(2 个 Cortex-A72 和 4 个 Cortex-A35)上执行)。该演示器的主要目标是展示 VOSySmonitor 的高性能以及安全关键 RTOS 和 Android Auto 9 之间不受干扰的自由。
事实上,重要的是要注意 VOSySmonitor 确保安全关键域的完全隔离,即使在Android 操作系统方面的失败。
安全关键域 - 快速启动:VOsySmonitor 总是首先启动安全关键域,以满足来自关键操作系统的严格实时限制。重要的是要注意 VOSySmonitor 是在安全关键域之前执行的软件层,与本机执行相比,它在安全关键域的完整冷启动时间中增加了少量开销。
然而,VOSySmonitor 已被开发用于最小化此开销,如下文的测量所示;事实上,总冷启动时间保持在 265 毫秒以下,以 VOSySmonitor 选择的用于调度安全关键操作系统(即 FreeRTOS)的内核为准:该值包括 VOSySmonitor 设置时间(对应于从 VOsySmonitor 入口点到 FreeRTOS 入口点的执行时间),在 ~1ms 时可以忽略不计。
安全关键域不受干扰:VOSYSmonitor 的设计目标是将全部优先级分配给安全世界中分配的安全关键域,以满足实时约束。这意味着 Android 工作负载对安全关键域的响应能力没有影响或影响很小,正如 FIQ 延迟基准测试所证明的那样。
事实上,FIQ 延迟影响(平均:1.6µs 至 4.3µs)通过改变 Android 工作负载观察到的结果仅是由于 Android 操作执行的缓存逐出,这可能会影响 VOSySmonitor 使用的数据并略微改变上下文切换时间。
然而,重要的是要注意上下文切换时间足够快,从安全关键 RTOS 的角度来看可以忽略不计。
事实上,在此演示器中,FreeRTOS 的调度周期为 2 毫秒,因此,这意味着 VOSySmonitor 开销在最坏情况下不超过 0.5%(即,最大上下文切换值 = 10, 18 微秒)。
Android OS 崩溃监控:VOSySmonitor 正在监控 Normal World 执行以检测潜在故障,并最终将此故障通知运行在 Secure 世界中的安全关键 RTOS 执行。
此外,重要的是要注意 VOSySmonitor 确保安全关键域的完全隔离,因此,关键 RTOS 执行不受 Android 崩溃的影响。
(VOSySmonitor benchmarked performances on Mediatek MT2712 platform)