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

缩写

AP:AUTOSAR Adaptive Platform

AA:Adaptive Application

ARA:AUTOSAR Runtime for Adaptive Applications

FC:Functional Cluster

3 架构

3.1 逻辑视角

3.1.1 ARA

下图是 AP 架构的逻辑视图。

  • AA 运行在 ARA 之上
  • ARA 由 FC 提供的接口组成
  • FC 有两种接口
    • AP Foundation(API):提供 AP 的基础功能
    • AP Service:提供平台标准服务
  • AA 也可以向其他 AA 提供服务(图中的 Non-PF Service)

AA 不关心 FC 的接口是 Foundation 还是 Service,对 AA 来说都是 C++ 的接口,尽管底层却有不同。注意:ARA 接口之下,包括运行在 AA 上下文中的 ARA 库,可能用 ARA 之外的接口去实现 AP,这是由 AP 实现设计决定。

上图的一些 FC 不在当前 Release 中,只是为了有个更好的 overall 架构。新的 FC 也可能会在之后的 Release 中加进来。

3.1.2 语言绑定,C++ 标准库和 POSIX API

API 的语言绑定基于 C++,C++ 标准库是 ARA 的一部分。系统 API 中,ARA 只包括 POSIX 的 PSE51子集(单进程 profile)的接口。

C++ 标准库有很多基于 POSIX 的接口,包括多线程 API。但是,不要把 C++ 标准库的线程接口和 PSE51 的线程接口混为一谈。C++ 标准库并没有覆盖所有 PSE51 的功能,比如设置线程调度策略。这时就不得不同时使用两种接口。

3.1.3 应用启动关闭

应用程序的生命周期是由 EM(Execution Management)管理的。启动应用程序需要在系统集成或运行时进行配置。所有的 FC 在 EM 看来都是应用程序,都是由相同的方式启动,除了 EM 自身(由 OS 启动)。下图是 AP 上不同的应用程序分类。

注意:什么时候启动/停止哪个应用不是 EM 决定的,而是另一个特殊的 FC,SM(State Management)。SM 根据系统设计来控制 EM,切换系统状态,进而控制着整个系统行为。这里系统指的是整个 AP 和上面运行的应用程序,其行为、具体实现视项目而定。SM 也和其他 FC 交互,协调整个机器的行为。SM 应该只用 ARA 定义的接口,以保证在不同 AP 实现上的可移植性。

3.1.4 应用程序接口

由于 PSE51 不含 IPC 接口,所以 AA 之间没有直接的交互。Communication Management(CM)是唯一的途径。CM 也提供面向服务通信,支持主机内或跨主机通信(这部分细节对应用程序来说是不可见的)。CM 负责路由转发“请求/回复”,无论 Service 应用和 Client 应用的部署拓扑是怎样的。有的 ARA 接口可能触发 AA 之间的交互,但这不属于通信接口,只是 ARA 接口的副作用罢了。

3.1.5 非标接口

AA 和 FC 可以使用非标接口,只要不和标准 AP 功能冲突,并且遵守项目 safety 和 security 的要求。除非是纯本地运行时库,尽量少用非标接口,影响移植到其他 AP 实现。

更多关于 Adaptive AUTOSAR 文章

https://www.cnblogs.com/tengzijian/category/1995263.html

Adaptive AUTOSAR 学习笔记 4 - 架构的更多相关文章

  1. Adaptive AUTOSAR 学习笔记 5 - 架构 - 物理视图

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

  2. Adaptive AUTOSAR 学习笔记 6 - 架构 - 方法论和 Manifest

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

  3. Adaptive AUTOSAR 学习笔记 8 - 干货小结:背景、技术、特征、架构、方法论和 Manifest

    官方文档下载方式及介绍情参见 Adaptive AUTOSAR 学习笔记 2 - 官方文档下载及阅读建议. 这是 Adaptive AUTOSAR 学习笔记的第 8 篇,学习笔记 3 - 7 翻译了 ...

  4. Adaptive AUTOSAR 学习笔记 3 - AP 背景、技术及特征(中文翻译)

    本系列学习笔记基于 AUTOSAR Adaptive Platform 官方文档 R20-11 版本.本文从AUTOSAR_EXP_PlatformDesign.pdf开始,一边学习,一边顺带着翻译一 ...

  5. Adaptive AUTOSAR 学习笔记 16 - 时间同步和网络管理

    本系列学习笔记基于 AUTOSAR Adaptive Platform 官方文档 R20-11 版本 AUTOSAR_EXP_PlatformDesign.pdf.作者:Zijian/TENG 原文地 ...

  6. Adaptive AUTOSAR 学习笔记 14 - 车辆诊断

    本系列学习笔记基于 AUTOSAR Adaptive Platform 官方文档 R20-11 版本 AUTOSAR_EXP_PlatformDesign.pdf.作者:Zijian/TENG 原文地 ...

  7. Adaptive AUTOSAR 学习笔记 15 - 持久化 Persistency

    本系列学习笔记基于 AUTOSAR Adaptive Platform 官方文档 R20-11 版本 AUTOSAR_EXP_PlatformDesign.pdf.作者:Zijian/TENG 原文地 ...

  8. Adaptive AUTOSAR 学习笔记 2 - 官方文档下载及阅读建议

    目前互联网上没有太多的 Adaptive AUTOSAR 的学习资料,官方文档是一个很不错的途径.看过官方文档才发现,目前很多关于 Adaptive AUTOSAR 的文章都是官方文档的简化翻译,不如 ...

  9. Adaptive AUTOSAR 学习笔记 7 - 应用设计和 Manifest

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

随机推荐

  1. 备份分区,备份文件切割保存 dd

    cd /tmp wget dl.fedoraproject.org/pub/epel/6/x86_64/dcfldd-1.3.4.1-4.el6.x86_64.rpm sudo yum install ...

  2. 爱心跳动效果 CSS实现

    爱心跳动效果 CSS实现 实现效果 砰砰砰 实现原理 通过动画改变每个元素的高度,从而实现每个元素高度变化的效果,为了使每个元素依次跳动,给每个元素添加一定的延时效果,使得从效果元素依次跳动 代码分析 ...

  3. [leetcode] 37. 解数独(Java)(dfs,递归,回溯)

    37. 解数独 1A 这个题其实15分钟左右就敲出来并且对了...但是由于我输错了一个数..导致我白白debug一个多小时.. 没啥难度,练递归-dfs的好题 class Solution { pri ...

  4. Nginx限制访问速率和最大并发连接数模块--limit

    Nginx限制访问速率和最大并发连接数模块--limit Tengine版本采用http_limit_req_module进行限制 具体连接请参考 http://tengine.taobao.org/ ...

  5. GO文件读写03---使用缓冲读写实现视频文件的拷贝

    package main import ( "bufio" "fmt" "io" "os" ) /* ·使用缓冲读写实现 ...

  6. 编写CUDA内核

    编写CUDA内核 介绍 与用于CPU编程的传统顺序模型不同,CUDA具有执行模型.在CUDA中,编写的代码将同时由多个线程(通常成百上千个)执行.解决方案将通过定义网格,块和线程层次结构进行建模. N ...

  7. Python分析离散心率信号(中)

    Python分析离散心率信号(中) 一些理论和背景 心率信号不仅包含有关心脏的信息,还包含有关呼吸,短期血压调节,体温调节和荷尔蒙血压调节(长期)的信息.也(尽管不总是始终如一)与精神努力相关联,这并 ...

  8. pytest的allure的环境配置

    一.下载地址: https://github.com/allure-framework/allure2/releases 二.配置环境变量: 三.验证allure安装成功

  9. jsp中basa标签的使用

    <base href="http://${pageContext.request.serverName}:${pageContext.request.serverPort}${page ...

  10. 1.5w字 + 24张图肝翻 TCP。

    TCP 是一种面向连接的单播协议,在 TCP 中,并不存在多播.广播的这种行为,因为 TCP 报文段中能明确发送方和接受方的 IP 地址. 在发送数据前,相互通信的双方(即发送方和接受方)需要建立一条 ...