系统架构-嵌入式系统架构

原理与特征

嵌入式系统的典型架构可概括为两种模式,即层次化模式架构和递归模式架构

层次化模式架构,位于高层的抽象概念与低层的更加具体的概念之间存在着依赖关系,封闭型层次架构指的是,高层的对象只能调用同一层或下一层对象提供的方法

递归模式架构,将一个非常复杂的系统进行分解,自顶向下分解系统的功能

嵌入式操作系统(EOS),通常包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图形界面、标准化浏览器

从嵌入式操作系统体系架构看,主要存在4种结构:整体结构、层次结构、客户/服务器结构和面向对象结构

整体结构:也称为模块结构或无序结构,它是基于结构化程序设计的一种软件设计方法。

典型的强实时调度算法:

  • 最早截止时间优先(Earlier Deadline First EDF),任务截止时间越早,优先级就越高
  • 最低松弛度优先(Least Laxity First LLF),松弛程度越低,优先级越高。松弛程度指任务最早运行时间与任务最晚运行时间差
  • 单调速率调度算法(Rate Monotonic Scheduling RMS)任务的执行周期越短,优先级越高

嵌入式数据库系统主要特点:嵌入式、实时性、移动性、伸缩性,按存储位置不同可分为三类:基于内存方式、基于文件方式、基于网络方式

  • 基于内存式数据库系统(MMDB)是实时系统和数据库系统的有机结合,即活动事务只与实时内存数据库的内存拷贝打交道,典型产品是eXtremeDB嵌入式数据库
  • 基于文件的数据库(FDB)是以文件方式存储数据库数据,即数据按照一定格式 存储在磁盘种。使用时由应用程序通过相应的驱动程序甚至直接对数据文件进行读写。典型产品是SQLite
  • 基于网络的数据库(NDB)基于手机4G/5G的移动通信基础上的数据库系统,在逻辑上可以把嵌入式设备看作远程服务器的一个客户端

设计方法

自顶向下的设计方法,基于架构的软件设计(ABSD)可适用于嵌入式系统的软件设计方法

属性驱动的软件设计(ADD)

利用对质量属性实现与架构设计之间的关系的了解对软件架构进行设计,需要经历评审、选择驱动因子、选择系统元素、选择设计概念、实体化元素和定义接口、草拟视图和分析评价七个阶段

实时系统设计方法(DARTS)

将实时系统分解为多个并发任务,并定义这些任务之间的接口。提供一些分解规则和一套处理并发任务的设计步骤。

起源于实时结构化分析和设计方法(RTSAD)主要分为实时结构化分析(RTSA)和实时结构化设计(RTSD))

DARTS方法主要由以下5个部分组成:

  1. 用实时结构化分析方法(RTSA)开发系统规范:需要产出开发系统环境图(SCD)和状态转换图(STD)
  2. 将系统划分为多个并发任务:产出初步任务架构图(TAD)
  3. 定义任务间的接口:用事件流的映射作为事件信号
  4. 设计每个任务
  5. 设计过程的成果:需要用文档或图示

图片来源于网络

相关推荐
快来吃饭�21 分钟前
Ubuntu-20.04 gem5 构建并实现一个简单的配置脚本
linux·ubuntu·系统架构
成茂峰2 小时前
软考高级·系统架构设计师 | 二、计算机系统基础知识
系统架构·软考高级·系统架构设计·架构设计师
智算菩萨6 小时前
【网络工程师入门】网络技术全解析:从家庭组网到DNS域名系统的实践指南
网络·系统架构
2501_933329556 小时前
Infoseek数字公关AI中台技术解析:基于AI的智能舆情治理系统架构与实践
人工智能·系统架构
明洞日记6 小时前
【软考每日一练026】软件工程深度解析:软件开发方法学的分类与应用实战
c++·ai·系统架构·软件工程·软考
明洞日记6 小时前
【软考每日一练028】软件工程考点:螺旋模型与构件组装模型深度解析
c++·ai·系统架构·软件工程·软考·开发模型
成茂峰15 小时前
软考高级·系统架构设计师 | 一、绪论
架构·系统架构·软考高级·系统架构设计师
云蝠呼叫大模型联络中心15 小时前
深度解析|云蝠智能大模型呼叫系统架构:神鹤双擎 + 暴风引擎,低延迟高并发解锁呼叫中心降本增效新路径
系统架构·tts·asr·外呼系统·ai外呼·大模型呼叫·voiceagent
珠海西格电力科技15 小时前
微电网系统架构设计:并网/孤岛双模式运行与控制策略
网络·人工智能·物联网·系统架构·云计算·智慧城市
Coder个人博客21 小时前
Linux6.19-ARM64 mm ioremap子模块深入分析
linux·安全·车载系统·系统架构·系统安全·鸿蒙系统·安全架构