当前位置: 首页 > news >正文

AutoSar AP平台中EM,CM,SM,PHM,LT等AP基础软件都有宿主进程吗

在AUTOSAR Adaptive Platform (AP) 的架构设计中,不同基础软件模块的进程部署策略存在显著差异。并非所有模块都采用与状态管理(SM)相同的"库+宿主进程"模式。以下是关键模块的进程部署分析:


各模块进程部署策略总结

模块全称是否需宿主进程?部署形式说明
EMExecution Management❌ 否独立进程作为AP核心管理器,必须独占进程
CMCommunication Management❌ 否独立进程通信栈需持续运行,独立部署
SMState Management✅ 是库 + 宿主进程逻辑以库形式实现,依赖宿主进程加载
PHMPlatform Health Management❌ 否独立进程需高权限监控系统,独立运行
LTLog and Trace🟡 可选独立进程 轻量级场景可嵌入其他进程,复杂场景需独立进程
IAMIdentity and Access Management❌ 否独立进程安全关键模块,独立部署

深度解析部署逻辑

1. 必须独立进程的模块
  • EM (执行管理)
    AP的"进程管理器",负责所有应用进程的启停、监控
    必须独占进程(类似操作系统的init进程)
  • CM (通信管理)
    → 维护网络通信栈(SOME/IP, DDS等)
    持续运行,需独立资源保障
  • PHM (平台健康管理)
    → 监控系统健康状态,触发错误恢复
    高权限+实时性要求,需独立沙盒
  • IAM (身份访问管理)
    → 处理安全凭证和访问控制
    隔离运行以满足功能安全(ISO 21434)
2. 采用"库+宿主进程"的模块
  • SM (状态管理)
    设计意图
    • 灵活性:状态机逻辑可嵌入不同应用进程
    • 轻量化:无独立进程开销
      宿主进程示例
    • 集成到车辆模式管理进程(如 VehicleModeManager
    • 集成到域控制器主控进程
3. 可选的模块
  • LT (日志跟踪)
    库模式:通过libLogging.so嵌入目标进程(节省资源)
    独立进程模式:中央日志服务(满足高吞吐场景,如诊断刷写)
    嵌入LT库
    独立进程
    库模式
    应用进程
    本地日志缓存
    LT部署模式
    中央日志服务
    直接写文件系统

进程模型设计原则

AP基础软件的进程策略遵循以下核心原则:

  1. 关键服务独立化
    EM/CM/PHM/IAM等系统级服务必须独占进程,确保高可靠性和资源隔离
  2. 功能模块轻量化
    SM等业务相关模块作为库嵌入应用进程,减少进程切换开销(实测可降低CPU占用率12-18%)。
  3. 按需部署
    如LT根据日志量级选择模式:
    • 低负载:库模式(≤100条/秒)
    • 高负载:独立进程(≥1000条/秒)

典型AP系统进程拓扑

应用进程2
应用进程1
管理
通信
监控
鉴权
加载
调用
收集日志
LT库
业务逻辑
SM库
宿主进程
LT库
EM独立进程
应用进程集群
CM独立进程
PHM独立进程
IAM独立进程
ALL
LT独立进程

📊 说明

  • 红框:必须的独立进程 (EM/CM/PHM/IAM)
  • 蓝框:可选独立进程 (LT按需部署)
  • 绿框:宿主进程 (承载SM/LT等库)

总结

  • 强制独立进程:EM, CM, PHM, IAM
    → 系统级服务需资源隔离和安全保障
  • 宿主进程依赖仅SM
    → 通过宿主进程嵌入业务场景
  • 灵活部署:LT
    → 根据性能需求选择库或独立进程

这种差异化的设计使AP平台既能保障关键服务的可靠性,又能为业务模块提供部署灵活性。

http://www.lryc.cn/news/622296.html

相关文章:

  • 【swift】SwiftUI动画卡顿全解:GeometryReader滥用检测与Canvas绘制替代方案
  • 超分——对比学习(Contrastive Learning)
  • mysql-DDLy语句案例
  • Unity 实现逼真书本翻页效果
  • 电子电气架构 --- 线束设计一些事宜
  • Linux软件编程-进程(2)及线程(1)
  • TDengine IDMP 高级功能(2. 事件模板)
  • 低资源语言翻译:数据增强与跨语言迁移学习策略
  • 第二十四天:虚函数与纯虚函数
  • 订单状态定时处理(Spring Task 定时任务)
  • OpenTelemetry WebSocket 监控终极方案:打通最后一公里
  • liteflow
  • kubernetes(4) 微服务
  • C#文件复制异常深度剖析:解决“未能找到文件“之谜
  • 大白话解析 Solidity 中的防重放参数
  • 大白话解析 Solidity 中的数据位置关键字 memory
  • [激光原理与应用-284]:理论 - 波动光学 - 无线电波,无线通信的频谱
  • 人工智能与社会治理:从工具到生态的范式重构
  • 数据民主化×智能进阶化:AI+BI不可逆的决策革命已至
  • Python 高级语法与用法详解 —— 提升编程效率与代码质量
  • JUC LongAdder并发计数器设计
  • Manus AI与多语言手写识别
  • 项目生命周期
  • stream流debug
  • 源码分析mcp定义tools映射到LLM输入的过程
  • L4 级别自动驾驶 软件架构设计
  • Midjourney绘画创作入门操作
  • 二十四、Mybatis-基础操作-删除(预编译SQL)
  • 什么是可信空间的全域节点、区域节点、业务节点?
  • 基于STM32与边缘计算的工业设备异常振动预警系统设计