Skip to content
  • 典型架构
    • 层次式模式架构
      • 位于高层的抽象概念与低层的更加具体的概念之间存在依赖关系
      • 主要设计思想
        • 抽象概念需要具体的低层概念实现
        • 只包含一个主要的元素和它的接口
        • 封闭型和开放型
    • 递归模式架构
      • 需要将一个非常复杂的系统进行分解
      • 工程流程
        • 自顶向下:从系统层级开始并标识结构对象
        • 自底向上:专注于域的构造——首先确定域中的关键类和关系
  • 嵌入式操作系统
    • 包含与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图形界面、标准化浏览器
    • 4 种结构:整体结构、层次结构、C/S 结构和面向对象结构
      • 整体结构也称为模块结构或无序结构,基于结构化程序设计
    • 内核是核心部分,管理系统的各种资源,直接运行在硬件上的最基础的软件实体,宏内核微内核
    • 任务管理:任务是嵌入式操作系统调度的最小单位,类似于进程或线程的概念
    • 调度方法:离线和在线调度、抢占和非抢占调度、静态和动态调度
    • 强实时调度算法
      • 最早截止时间优先
      • 最低松弛度优先
      • 单调速率调度算法
    • 任务之间关系:互相独立、竞争、同步、通信
    • 通信方式
      • 共享内存
      • 信号量
      • 消息队列
      • Socket 和远程调用
      • 信号
  • 嵌入式数据库
    • 分为
      • 基于内存:实时系统和数据库系统的有机结合,活动事务只与实时内存数据库的内存拷贝打交道
      • 基于文件:以文件方式存储数据库数据,按照一定格式储存在磁盘中,应用程序通过对应的驱动程序甚至直接对数据文件进行读写
      • 基于网络:基于移动通信基础上的数据库,嵌入式设备看作远程服务器的客户端。主要由三部分组成:客户端、通信协议和远程服务器
    • 数据库服务器架构:客户端通过数据库驱动程序,数据库服务器再操作数据库文件。可以位于不同的计算机甚至网络
    • 嵌入式数据库架构,不需要数据库驱动,数据库的库文件连接到应用程序中,应用程序通过 API 访问数据库
    • 对比
      • 数据库服务器允许非开发人员操作,嵌入式只允许应用程序
      • 数据库服务器数据程序分离,嵌入式访问控制交给应用程序
      • 独立安装、部署和管理;嵌入式和应用程序一起发布
    • 需要具备的功能
      • 数据存储
      • 数据安全
      • 事务管理
      • 数据库恢复
    • 划分为数据库运行处理、数据库存取、数据库管理、数据库维护和数据库定义
    • 需要解决以下设计问题
      • 存储空间管理
      • 数据安全性、完整性控制
      • 事务并发控制
      • 实时数据转储
      • 运行日志管理
  • 嵌入式中间件
    • 处于嵌入式应用和 OS 之间的中间软件,屏蔽 OS 的异构性,如网络通信、内存管理和数据处理
    • 平台 + 通信
    • 提供对以下环境的支持
      • 网络化
      • 流媒体
      • QoS 质量品质
      • 适应性
  • 嵌入式系统软件架构设计方法
    • 自顶向下
    • 基于架构的软件设计 ABSD
    • 属性驱动的软件设计 ADD,对质量属性实现与架构设计之间的关系的了解
      • 评审
      • 选择驱动因子:使用开发模型去选择设计的回合
      • 选择系统元素:选择一个或者多个系统元素来细化
      • 选择设计概念:选择设计概念来细化,对驱动因子进行细化
      • 实体化元素和定义接口:包括所选择的实例化元素的设计概念
      • 草拟视图:文字或图
      • 分析评价:创建好了部分设计
    • 实时系统设计方法 DARTS
      • 将实时系统分解为多个并发任务,定义这些任务之间的接口。提供一些分解规则和一套处理并发任务的设计步骤
    • 实时结构化分析 RTSA:扩充了行为建模部分
    • 实时结构化设计 RESD:内聚和耦合原则进行程序设计
    • 任务结构化标准:为实时系统分解为并发任务的时候提供帮助。确定任务过程中主要考虑系统内部功能的并发特性
    • 实时结构化分析和设计方法 RTSAD 使用任务架构图来显示系统分解为并发任务的过程
      • 实时结构化分析方法 RTSA 开发系统规范:开发系统环境图 SCD 和状态转换图 STD
      • 将系统划分为多个并发任务
      • 定义任务间接口
      • 设计每个任务
      • 设计过程的成果
    • DARTS 优势
      • 系统分解为并发的任务
      • 详细的定义任务间接口的指南
      • 用任务结构图 STD 的重要性
      • 从 RTSA 规格到实时设计的转换
    • DARTS 劣势
      • 并非完全用 IHM 来封装数据存储
      • 过于依赖 RTSA 阶段

如有转载或 CV 请标注本站原文地址