云计算百科
云计算领域专业知识百科平台

【架构专栏】第16章 嵌入式系统架构设计 3/3

架构设计 相关文档,希望互相学习,共同进步

风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/3https://blog.csdn.net/weixin_42081167/article/details/166372621?spm=1001.2014.3001.5501

16.2 嵌入式系统软件架构原理与特征

【架构专栏】第16章 嵌入式系统架构设计 2/3https://blog.csdn.net/weixin_42081167/article/details/166373612

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

    16.3.1 基于架构的软件设计开发方法 ABSD

      基于架构的软件设计开发方法(Architecture -Based Software Design,ABSD), 详见:

【架构专栏】第7章 系统架构设计基础知识 1/3https://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 支持,安全套件等。

核心分层技术梳理

  • ‌底层开源内核‌ 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双向认证

    选型决策优先级

  • 先评估设备硬件资源:RAM<10KB直接锁定FreeRTOS,避免功能冗余导致资源不足
  • 再匹配开发团队能力:无RTOS开发经验优先选RT-Thread,利用软件包生态大幅缩短开发周期
  • 最后对齐安全与接入需求:百万级设备接入优先选MQTT+EMQX组合,高安全场景必须叠加PKCS#11硬件加密能力
  • 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章 软件架构的演化和维护



    希望有所帮助,互相学习、共同进步,欢迎点赞、收藏!

    赞(0)
    未经允许不得转载:网硕互联帮助中心 » 【架构专栏】第16章 嵌入式系统架构设计 3/3
    分享到: 更多 (0)

    评论 抢沙发

    评论前必须登录!