系统架构设计师(第二版)学习笔记----嵌入式系统及软件

【原文链接】系统架构设计师(第二版)学习笔记----嵌入式系统及软件

文章目录

  • 一、嵌入式系统
    • [1.1 嵌入式系统的组成](#1.1 嵌入式系统的组成)
    • [1.2 嵌入式系统的特点](#1.2 嵌入式系统的特点)
    • [1.3 嵌入式系统的分类](#1.3 嵌入式系统的分类)
  • 二、嵌入式软件
    • [2.1 嵌入式系统软件分层](#2.1 嵌入式系统软件分层)
    • [2.2 嵌入式软件的主要特点](#2.2 嵌入式软件的主要特点)
  • 三、安全攸关软件的安全性设计
    • [3.1 DO-178B标准中软件安全等级与目标的关系](#3.1 DO-178B标准中软件安全等级与目标的关系)
    • [3.2 DO-178B中对软件生命周期的划分](#3.2 DO-178B中对软件生命周期的划分)
    • [3.3 DO-178B对数据的规定](#3.3 DO-178B对数据的规定)
    • [3.4 DO-178B中软件生命周期的软件开发过程细分](#3.4 DO-178B中软件生命周期的软件开发过程细分)
    • [3.4 DO-178B中软件生命周期中的软件综合过程细分](#3.4 DO-178B中软件生命周期中的软件综合过程细分)
    • [3.5 DO-178B与CMMI的差异](#3.5 DO-178B与CMMI的差异)

一、嵌入式系统

1.1 嵌入式系统的组成

  • 嵌入式处理器
  • 相关支撑硬件
  • 嵌入式操作系统
  • 支撑软件
  • 应用软件

1.2 嵌入式系统的特点

  • 专用性强
  • 技术融合
  • 软硬一体软件为主
  • 比通用计算资源少
  • 程序代码固化在非易失存储器中
  • 需专门开发工具和环境
  • 体积小、间隔低、工艺先进、性能价格比高、系统配置要求低、实时性强
  • 对安全性和可靠性的要求高

1.3 嵌入式系统的分类

  • 实时系统
  • 安全攸关系统

此外,他们之间的组合产生如下所示的系统分类

二、嵌入式软件

2.1 嵌入式系统软件分层

  • 硬件层
  • 抽象层
  • 操作系统层
  • 中间件层
  • 应用层

2.2 嵌入式软件的主要特点

  • 可裁剪性
  • 可配置性
  • 强实时性
  • 安全性
  • 可靠性
  • 高确定性

三、安全攸关软件的安全性设计

3.1 DO-178B标准中软件安全等级与目标的关系

3.2 DO-178B中对软件生命周期的划分

  • 软件计划过程
  • 软件开发过程
  • 软件综合过程

3.3 DO-178B对数据的规定

  • 文档
  • 代码
  • 报表
  • 记录

3.4 DO-178B中软件生命周期的软件开发过程细分

  • 软件需求过程
  • 软件设计过程
  • 软件编码过程
  • 集成过程

3.4 DO-178B中软件生命周期中的软件综合过程细分

  • 软件验证过程
  • 软件配置管理过程
  • 软件质量保证过程
  • 审定联络过程

3.5 DO-178B与CMMI的差异

  • C M M I 是从过程改进的视角,对软件开发的技术与管理提出要求,覆盖了从个人、项目及组织三个层次的要求,更关注组织整体软件能力提升。DO-178 是从适航审定视角,对软件开发的技术与管理过程提出要求,更关注项目软件质量对于安全性的影响。所以DO-178覆盖的过程范围比C M M I少,比如DO-178C 对于项目监控过程、风险管理过程、培训过程等并没有提出明确要求。
  • C M M I 主要由实践组成,实践是各行业最佳实践的抽象(去环境、方法)提炼,而DO-178C过程主要由目标、活动与数据组成,活动虽不代表具体工作步骤,但活动要求比较具体,并且对过程输出(数据)提出了明确要求,结合DO-178 的配置管理过程,对数据管理与控制的要求也较为具体。
  • C M M I 是集成了系统、软件和硬件等视角,所以在内容和措辞上必须兼顾多个场景,容易产生歧义。而DO-178 聚焦软件,更容易为软件工程师所理解(不代表容易做到)。
相关推荐
yuxb7335 分钟前
Ansible 学习笔记:变量事实管理、任务控制与文件部署
linux·运维·笔记
鸢栀w1 小时前
前端css学习笔记7:各种居中布局&空白问题
前端·css·笔记·学习·尚硅谷网课
Hero_11271 小时前
学习Stm32 的第一天
stm32·嵌入式硬件·学习
之歆1 小时前
大模型微调分布式训练-大模型压缩训练(知识蒸馏)-大模型推理部署(分布式推理与量化部署)-大模型评估测试(OpenCompass)
人工智能·笔记·python
十行代码九行报错2 小时前
Docker基础学习笔记
笔记·学习·docker
冷崖6 小时前
MySQL异步连接池的学习(五)
学习·mysql
知识分享小能手7 小时前
Vue3 学习教程,从入门到精通,Axios 在 Vue 3 中的使用指南(37)
前端·javascript·vue.js·学习·typescript·vue·vue3
所愿ღ8 小时前
JavaWeb-Servlet基础
笔记·servlet
岑梓铭8 小时前
考研408《计算机组成原理》复习笔记,第五章(2)——CPU指令执行过程
笔记·考研·408·计算机组成原理·计组
焄塰11 小时前
Ansible 管理变量和事实
学习·centos·ansible