Adaptive AUTOSAR 学习笔记 9 - 操作系统

本系列学习笔记基于 AUTOSAR Adaptive Platform 官方文档 R20-11 版本 AUTOSAR_EXP_PlatformDesign.pdf

缩写

AP:AUTOSAR Adaptive Platform
EM:Execution Management
OSI:Operating System Interface
AA:Adaptive Application
ARA:AUTOSAR Runtime for Adaptive Applications
FC:Functional Cluster
SM:State Management
CM:Communication Management

4 操作系统

4.1 概述

  • 操作系统负责运行时调度、资源管理(包括内存策略和时间限制)以及进程间通信。
  • EM 负责平台初始化,借助操作系统启动/关闭应用。
  • AP 没有定新的操作系统,只是定义了供 AA 使用的操作系统接口(OSI)。
  • 操作系统接口包括(作为 ARA 的一部分的)标准应用接口。
  • OS 也可以提供其他接口,如 EM 启动应用需要用到的创建进程接口。但是这样的接口不属于 ARA,取决于平台实现。
  • 操作系统接口提供了 C 和 C++ 接口。
  • C 程序用的函数调用接口主要定义在 POSIX PSE51 中。编译器在编译时决定哪个 C 库提供哪个 C 函数,以及可执行文件在运行时链接到哪个库。
  • C++ 程序使用 C++ 标准和标准库中的接口。

4.2 POSIX

市场上有很多提供符合 POSIX 标准的操作系统,如 Linux。相比于平台 Service 和 Foundation,AA 能使用的系统接口限制更多。一般情况下,用户应用(AA)应该只使用 PSE51 接口,平台应用(Service 和 Foundation)则可以使用完整 POSIX 接口。如果应用有更多需求,应优先使用 POSIX 标准接口,而不是重新定义新接口。AP Foundation 和 Servcie 可以使用更多 POSIX 接口。具体的函数调用不是标准化的,由实现者决定。

4.3 调度

OS 提供多线程和多进程支持。标准的调度策略是由 POSIX 定义的 SCHED_FIFO 和 SCHED_RR。操作系统提供的额外调度策略(如 SCHED_DEADLINE)允许使用,但是限制了在不同 AP 实现上移植。

译注:POSIX 标准只定义了 FIFO 和 RR 两种调度策略,其他调度策略可以用,但是不保证可移植。

4.4 内存管理

操作系统对多线程的支持可以保证每个进程有独立的地址空间,FC 和 AA 之间不会互相干扰。同一个可执行文件可以有不同的实例,运行在不同的地址空间:他们有同样的 Entry 地址、同样的代码,在启动时具有相同的数据,但是数据储存在不同的物理页中。

4.5 设备管理

设备管理很大程度上依赖操作系统。AP Foundation 倾向通过服务来提供系统功能。目前没有计划将设备驱动 API 标准化,更高层级的驱动功能实现应通过标准化 AP Service。

4.6 网络

以太网是机器、传感器之间的主要交互途径。因此操作系统应当提供 TCP/IP、UDP/IP 网络协议栈。应用通过 CM 间接获得网络支持,而无需知道网络协议细节。AP Foundation 的更多特性如 VLAN、IPSEC 也使得系统内/间的通信更安全。

更多关于 Adaptive AUTOSAR 文章
https://www.cnblogs.com/tengzijian/category/1995263.html

原文地址(获取最新更新):https://www.cnblogs.com/tengzijian/p/15063065.html

posted @ 2021-07-26 20:02  Zijian/TENG  阅读(1319)  评论(0编辑  收藏  举报