|
9| 0
|
[讨论交流] 251128北京精细化嵌入式软件架构培训课纲 |
|
Part1架构思想到实操原则(1h) 内容1:嵌入式软件架构的指导思想 模块化和信息隐藏是软件设计的第一真理 控制流设计是嵌入式软件架构的核心 细分周期执行模块/事件驱动模块/调度模块 细分功能状态机/部件状态机/协议状态机 内容2:嵌入式软件架构的实操原则 原则解读:用模块封装数据结构及操作 原则解读:用模块封装子模块及协作 原则解读:用模块封装task/timer及并发交互 原则解读:用模块封装事件源/状态机等控制流 内容3:实操原则的典型案例 案例实证:模块封装 代码案例 案例实证:Task封装 代码案例 案例实证:FSM封装 代码案例 Part2实际岗位——架构设计的实际步骤(1h) 内容4:纵观军品民品,各家采用什么方法 结构化设计 用例驱动方法 DARTS方法 Layered Multitask方法 方法适用于嵌入式领域的程度 内容5:架构设计实际步骤的小案例实练 某民品控制器软件的架构设计 老师给出Loop+ISR架构设计示范 老师给出RTOS下多任务架构示范 Part3实际岗位——设计与优化 Loop+ISR架构(4h) 内容6:time-slice polling架构的搭建 原始main+ISR的性能缺点 引入time-slice的性能优点 Time-slice架构的总体搭建 案例—某无人机软件~~代码分析、架构解读 内容7:task可插拔设计 插件化架构的江湖地位 如何支持feature裁剪、按需编译发布 实现task可拔插的两种方式,代码级要点讲解 内容8:性能优化 高频短任务的分离 高频短任务的性能优化 内容9:控制流优化(裸跑下的事件实现:用polling模拟event) 用event简化控制流,是业界最佳实践 案例分析:著名轮询式event接口orb_check(),orb_copy() 案例分析:一起写一个倒计时服务 Part4实际岗位——设计与优化 RTOS下多任务架构(4h) 内容10:构建RTOS下Multitask架构(大案例) 方法复习——Layered Multitask Method 案例设计——70页,复盘架构设计过程 内容11:案例知道答案——掌握一组优化技巧(github源码随U盘提供) 控制流设计模式与团队影响力 优化示范案例——封装优化与调度优化 优化示范案例——统一接口设计与可替换 优化示范案例——统一报文设计与可扩展 优化示范案例——用例驱动设计与迭代化 优化示范案例——Multitask架构的服务组件设计 存储服务——FatFS文件子系统:硬件无关、提供硬件适配接口 IO服务——LedSeq灯语子系统:可配置、提供极致简单的接口 通信服务——Crazyflie通信子系统:跨协议、提供多任务报文分发 Part5实际岗位——状态机设计与优化(1h) 内容12:状态机设计模式概述 状态机设计模式 状态机相关的模块协作设计 内容13:状态机的通信功能应用 案例分析——协议状态机/有代码 内容14:状态机的控制功能应用 案例分析——功能状态机/有代码 案例分析——部件状态机/有代码 Part6研发管理——架构工作规范(1h) 内容15:五阶十步方法 Layered Multitask Method总结 方法要点 方法逻辑 内容16:架构文档标准 《嵌入式软件架构设计说明书》文档模板(可提供.doc文件电子版) 内容17:架构评审与验收要点 Checklist评审法 场景评审法 对标评审法 架构评价实际案例 |
沪公网安备31011502402448© 2013-2025 Comsenz Inc. Powered by Discuz! X3.4 Licensed