架构设计 相关文档,希望互相学习,
共同进步
风123456789~-CSDN博客
系统架构设计 相关文章:
【架构专栏】架构考试介绍
【架构专栏】架构知识点
知识总览
共19章内容,主要包括:
1)1绪论、2计算机系统、3信息系统、4信息安全技术、5软件工程
2)6数据库设计、7系统架构设计基础知识
3)8系统质量属性与架构评估、9软件可靠性、
10软件架构演化与维护、11未来信息综合技术
4)12信息系统架构设计、13层次式架构设计、14云原生架构设计、
15面向服务架构设计、16嵌入式系统架构设计、17通信系统架构设计、
18安全架构设计、19大数据架构设计

每天进步一点点,加油!小伙伴们!💪
本文学习 第16章 嵌入式系统架构设计,以下为个人笔记,希望有所帮助,共同学习。
(涉及案例分析25分,侧重知识点的记忆理解和应用,来源于教材)
包括:
嵌入式系统概述(嵌入式系统发展历程、硬件体系结构、软件架构概述)、
嵌入式系统软件架构原理与特征(典型架构模式、嵌入式操作系统、嵌入式数据库、嵌入式中间件、嵌入式系统软件开发环境)、
嵌入式系统软件架构设计方法(基于架构的软件设计开发方法的应用、属性驱动的软件设计方法、实施系统设计方法)、
嵌入式系统软件架构案例分析(鸿蒙操作系统架构案例分析、面向安全攸关系统的跨领域系统架构、物联网操作系统软件架构案例分析)。
第16章 嵌入式系统架构设计

嵌入式系统由硬件和软件组成,常被视为独立运行的器件或智能设备。相比于一般的微型计算机处理系统而言,嵌入式系统有着较大的特殊性和差异性,但其又与计算机系统工程和软件工程有着极大的相似性。
16.1 嵌入式系统概述
【架构专栏】第16章 嵌入式系统架构设计 1/3
https://blog.csdn.net/weixin_42081167/article/details/166372621?spm=1001.2014.3001.5501

16.2 嵌入式系统软件架构原理与特征
【架构专栏】第16章 嵌入式系统架构设计 2/3
https://blog.csdn.net/weixin_42081167/article/details/166373612

16.3 嵌入式系统软件架构设计方法

16.3.1 基于架构的软件设计开发方法 ABSD
基于架构的软件设计开发方法(Architecture -Based Software Design,ABSD), 详见:
【架构专栏】第7章 系统架构设计基础知识 1/3
https://blog.csdn.net/weixin_42081167/article/details/164631943?ops_request_misc=elastic_search_misc&request_id=bd932632cc99a43b901d501d55e48efd&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~ElasticSearch~search_v2-1-164631943-null-null.541^v3^control&utm_term=ABSD&spm=1018.2226.3001.4450

16.3.2 属性驱动的软件设计方法 ADD

属性驱动的软件设计方法(Attribute -Driven Design,ADD)。
ADD 是把一组质量属性(可用性、性能、安全性等)场景作为输入,利用对质量属性实现与架构设计之间的关系的了解(如体系结构风格、质量战术等)对软件架构进行设计的一种方法。
这种方法在满足质量属性的基础上建立模块分解过程,通过输入质量场景,利用质量属性战术实现架构设计。
1 . ADD 开发方法的质量属性
1)质量属性 2)质量场景
2.ADD开发过程
采用 ADD 方法进行软件开发时,需要 7个阶段:经历评审、选择驱动因子、选择系统元素、选择设计概念、实体化元素和定义接口、草拟视图、分析评价
16.3.3 实时系统设计方法 DARTS

实时系统设计方法(Design Approach for Real -Time System,DARTS)。
DARTS 基于传统结构化分析方法,扩展了行为建模部分。用实时结构化分析方法开发 系统规范、将系统划分为多个并发任务、定义任务间接口、设计每个任务、设计过程的成果。
1 . DARTS开发方法的基本概念
1 ) RTSAD 方法 2) 任务结构化标准 3) 信息隐藏 4) 任务架构图
2. DARTS开发过程 (方法) 分为 5 个部分:
1)用实时结构化分析方法 (RTSA) 开发系统规范 2)将系统划分为多个并发任务 3)定义任务间接口 4)设计每个任务 5)设计过程的成果
3 . DARTS开发方法的评价
DARTS 方法的优势如下:
1)强调将系统分解为并发任务,并提供确认任务的标准。
2)提供定义任务间接口的指南。
3)强调用任务架构图的重要性。
4)提供从实时结构化分析规格到实时结构化设计的转换。
DARTS 方法的不足如下:
1)DARTS 使用信息隐藏技术封装数据存储,封装性不好。
2)如果实时结构化分析阶段完成得不好,那么任务的结构化工作就会更加困难。
16.4 嵌入式系统软件架构案例分析

16.4.1 鸿蒙操作系统架构案例分析

鸿蒙操作系统架构采用了分布式设计理念,实现了分布式软总线、分布式设备系统的虚拟化、 分布式数据管理和分布式任务调度 4 种分布式能力。 鸿蒙操作系统的架构是一种层次式架构,由内核层、系统服务层、应用框架层、应用层组成。

1.鸿蒙的层次化分析
1)内核层:内核子系统和驱动子系统组成。
内核层采用微内核设计,内核层中的内核抽象层屏蔽多内核差异,对上层提供基础内核能力,如进程/线程管理、内存管理、文件系统、网络管理、外设管理等。
驱动子系统则 提供统一外设访问能力,驱动开发框架,驱动管理框架。
2) 系统服务层:属于核心能力集合的部分,为应用程序提供服务。 3) 应用框架层:为应用服务提供多语言用户程序框架、能力框架,以及各种硬件服务对外开放的 API。
4) 应用层:包括系统应用和第三方非系统应用,能够实现特定的业务功能,支持跨设备调 度与分发,为用户提供一致、高效的应用体验。
2.鸿蒙操作系统的架构分析
鸿蒙操作系统架构具有4个技术特性: 1)分布式架构首次用于终端OS , 实现跨终端无缝协同体验 2)确定时延引擎和高性能IPC技术实现系统天生流畅 3)基于微内核架构重塑终端设备可信安全 4)通过统一 IDE 支撑一次开发,多端部署,实现跨终端生态共享
16.4.2 面向安全攸关系统的跨领域 GENESYS 系统架构案例分析

GENESYS 是一种跨领域的通用嵌入式架构平台。重要思想是分离计算与通信,将计算构件和通信设施作为独立构件进行设计。
GENESYS 采用消息交换方式实现软硬件构件的抽象级别的提升,使得构件在接口规范基础上可以被重用,而不需要知道构件的内部实现。
GENESYS 设计了故障或错误的隔离框架,构件在瞬态故障引起失效后,可选择性地重启和用构件复制来屏蔽瞬态和永久错误。同时 GENESYS 可以减少构件的功率需求或者在不需要时(功率门) 完全关闭构件。
因此, GENESYS 的出现解决三方面挑战: (1)复杂性管理的挑战 (2)系统健壮性的挑战 (3)能量有效使用的挑战
GENESYS 架构提供三组服务,即领域无关服务、领域专用服务和应用专用服务(包括中间件)。
(1)领域无关服务 分为:核心服务和选择服务;如嵌入式系统中的全局时间和消息传输等服务为核心服务。信息安全服务、外部存储器管理器或者 Internet 网关服务等属于选择服务。
(2)领域专用服务 分为:领域专用中心服务 (DSC) 、领域专用选择服务 (DSO)。由领域特有的服务子集加上待开发领域特征的特定服务组合。GENESYS 架构从硬件、软件的观点遵循了面向构件的风格,分离了计算与通信,将计算构件和通信设施作为独立构件进行设计。

GENESYS 架构的主要特征及优势包括:
1)精确的构件定位。具体体现为简单化、跨领域重用、规模的经济型、健壮性、可降低系统集成工作量这 5 个特征。
2)开放性。体现为具有可集成性、可升级性、可扩展性、遗产系统集成、降低成本这 5 个特征。
3)三级集成。具有芯片级集成 (Chip Level)、设备级集成 (Device Level)、系统级集成 (System Level) 的集成。
4)分层的服务。体现具有可重用性、领域定位、工效经济型的特性。 5)确定的核心。体现具有及时性、降低复杂性、可测试性、认证、故障掩蔽的特征。
6)标准的互联集成。体现在对远程访问的保护、降低集成工作难度、常规人机交互、具有安全性 4 个方面。 GENESYS 架构将构件归为四类:硬件构件和软件构件、系统构件和应用构件
16.4.3 物联网操作系统软件架构案例分析

物联网操作系统至今没有一个明确的定义。
物联网操作系统通常包括:芯片层、终端层、边缘层、 云端层等多个层面内容。
物联网操作系统的主要特征: (1)内核尺寸伸缩性、整体架构的可扩展性。 (2)内核的实时性。 (3)高可靠性。 (4)低功耗。
物联网操作系统使用的软件以及技术主要有:开源物联网操作系统 (FreeRTOS)、公共服务组件(网络协议、外设支持、可移植操作系统接口 POSIX 等)、定制性服务组件有:消息队列遥测传输协议(MQTT),安全超文本传输协议(HTTPS),加密消息标准 PKCS #11 支持,安全套件等。
核心分层技术梳理
(1)开源物联网操作系统选型:
| FreeRTOS | 最小仅需2KB RAM、6KB Flash | 极致精简、实时性确定性强、全平台移植支持完善 | 8/16位低资源MCU、电池供电微型传感器、硬实时控制场景 |
| RT-Thread Nano | 最小8KB RAM、20KB Flash | 内置设备驱动框架、软件包生态开箱即用 | 智能家居单品、中等复杂度终端设备,快速原型开发 |
| Zephyr | 最小2KB ROM,启用组件后占用可控 | 模块化分层设计、原生集成蓝牙/Wi-Fi协议栈 | 资源较充裕、需多协议支持的复杂物联网产品,长期维护型项目 |
| Huawei LiteOS | 核心仅6KB ROM | 低功耗优化极致、华为生态适配完善 | 可穿戴设备、智能家居、车联网等低功耗场景 |
(2)公共服务组件选型
- 网络协议栈:优先选LwIP轻量协议栈,适配FreeRTOS等极简内核,TCP/UDP基础能力完备,内存占用仅几KB;复杂场景可直接选用RT-Thread/Zephyr内置的集成协议栈,减少适配工作量
- 外设支持:优先采用芯片厂商官方SDK配套驱动,搭配RT-Thread统一设备驱动框架,实现驱动跨硬件平台复用,降低移植成本
- POSIX接口:NuttX系统原生完整支持POSIX标准,适合需要兼容Linux应用开发习惯的项目;FreeRTOS可通过第三方封装库实现基础POSIX接口兼容
(3)定制化服务组件选型
| MQTT 3.1.1/5.0 | 基于发布订阅模型,报文头部极小,弱网下带宽占用仅为HTTP的1/10 | 2G/NB-IoT等低带宽物联网场景,百万级设备长连接接入,推荐搭配EMQX作为消息中间件 |
| HTTPS | 基于TLS加密的HTTP协议,开发门槛低,与现有Web体系无缝对接 | 设备偶发上报数据、固件大文件OTA升级,适合团队已有Web开发经验的场景 |
| PKCS#11支持 | 硬件加密接口标准,实现密钥与业务代码隔离,密钥不可从硬件导出 | 工业网关、车载终端等高安全等级设备,保障加密操作的硬件级可信 |
| 安全套件 | 集成TLS 1.3、X.509证书认证、PSK预共享密钥等能力 | 全品类物联网设备,资源受限传感器优先选PSK低开销方案,工业级设备采用X.509双向认证 |
选型决策优先级
ok, 今天就到这里吧 🤗
相关系列文章,欢迎点赞、收藏,提供意见!
计算机系统基础知识 1分:概述、计算机硬件、计算机软件 操作系统 3分:进程管理、存储管理、文件管理、设备管理 数据库技术 3分:数据库设计、关系代数、范式、事务并发、数据库安全、新技术 嵌入式技术 3分:嵌入式硬件、嵌入式操作系统、嵌入式软件开发 计算机网络 3分(超纲较多):OSI七层模型、TCP/IP协议族、网络生命周期、IP地址 其他计算机系统基础知识 1分:计算机语言、多媒体、系统工程 系统性能 1分:性能指标、性能设计 信息系统基础知识 3分:信息系统生命周期、开发方法、五大典型系统 信息安全技术基础 5分:安全属性、信息安全技术、网络安全技术、安全协议
软件工程 12分:概述、需求工程、系统设计、运维、测试、基于构件;
面向对象技术 3分:面向对象基础、分析设计、UML关系、图 项目管理 1分:进度管理、配置管理、质量管理、风险管理
系统架构设计 20分:架构概念、生命周期、ABSD、DSSA、架构风格、
架构复用、质量属性、架构评估 软件可靠性 2分:可靠性建模、软件可靠性设计
软件架构的演化和维护1分:架构演化分类、评估、面向对象架构演化 未来信息综合技术 3分:信息物理系统、人工智能、边缘计算、机器人、数字李生、云计算 数学与经济管理 2分:最小生成树、最短路径、网络与最大流量、线性规划、决策论 知识产权和标准化 2分:知识产权属性、保护期限、产权人确定、侵权判定 专业英语 5分:完形填空,大学英语3级难度,自学
|
【架构专栏】架构考试介绍 |
【架构专栏】架构知识点 |
| 【架构专栏】第1章 绪论 | 【架构专栏】第11章 未来信息综合技术 |
| 【架构专栏】第2章 计算机基础知识 | 【架构专栏】第12章 信息系统架构设计理论与实践 |
| 【架构专栏】第3章 信息系统基础知识 | 【架构专栏】第13章 层次式架构设计理论与实践 |
| 【架构专栏】第4章 信息安全技术基础知识 | 【架构专栏】第14章 云原生架构设计理论与实践 |
| 【架构专栏】第5章 软件工程基础知识 | 【架构专栏】第15章 面向服务架构设计理论与实践 |
| 【架构专栏】第6章 数据库设计基础知识 | 【架构专栏】第16章 嵌入式系统架构设计理论与实践 |
| 【架构专栏】第7章 系统架构设计基础知识 | 【架构专栏】第17章 通信系统架构设计理论与实践 |
| 【架构专栏】第8章 系统质量属性与架构评估 | 【架构专栏】第18章 安全架构设计理论与实践 |
| 【架构专栏】第9章 软件可靠性基础知识 | 【架构专栏】第19章 大数据架构设计理论与实践 |
| 【架构专栏】第10章 软件架构的演化和维护 |
希望有所帮助,互相学习、共同进步,欢迎点赞、收藏!
网硕互联帮助中心







评论前必须登录!
注册