C 嵌入式系统设计模式 24:安全性和可靠性介绍

本书的原著为:《Design Patterns for Embedded Systems in C ——An Embedded Software Engineering Toolkit 》,讲解的是嵌入式系统设计模式,是一本不可多得的好书。

本系列描述我对书中内容的理解。本文章描述嵌入式安全性和可靠性模式之一:安全性和可靠性介绍。

可靠性 (Reliability) 是衡量一个系统“运行时间”或“可用性”的度量标准。它反映了系统在出现故障前成功完成计算的概率。换句话说,它是系统能够提供服务概率的一种随机度量。通常使用 平均故障间隔时间(MTBF)或成功提供服务的概率(如0.9999)来量化这一指标。可靠性分析通常在 故障模式与影响分析(FMEA)中进行管理。

平均故障间隔时间:衡量系统或设备在两次故障之间平均工作时间的指标。它是可靠性的一个重要参数,用于预测系统的稳定性。

故障模式与影响分析:一种预防性的质量工具,旨在识别产品设计或过程中潜在的故障模式,评估其对系统的影响,并确定相应的优先级以改进设计或控制过程。通过FMEA,可以在产品设计阶段识别并解决潜在的可靠性问题。

安全性 (Safety ) 和可靠性是两个不同的概念。一个安全的系统指的是在运行过程中不会对人员或设备造成过多危险。危险是导致事故或灾祸发生的事件,即会带来某种形式的损失,如人员伤亡。危险发生的 危害 有多大?需要评估危险的严重性和危险发生的可能性,通过计算这两者的乘积来确定危害的大小。

产生危害的基本方式有 5 种:

  1. 能量释放
  2. 毒素释放
  3. 干扰生命维持功能
  4. 向安全人员或控制系统提供误导性信息
  5. 出现危险情况时没能及时报警

与安全性和可靠性相关的 缺陷 (Faults)

事故的发生可能是由于系统中存在 错误 (errors),或者是由于系统的某些方面出现 失效 (fails)。

  • 错误:系统 缺陷 (fault) 行为导致或者需求不正确、糟糕的设计或糟糕的实现导致。
    有的错误可能不可见,但它始终存在于系统中。当错误可见时,就称其为显性错误。
  • 失效 :会在某个时间点发生,并导致系统进入失效状态。也就是说,系统之前运行正常,但某些东西发生了变化,例如汽车传动系统中的金属杆断裂(持久性故障),或者汽车发动机控制计算机中的某个数据位翻转,但随后又恢复正常(易失性故障)。

缺陷 (fault) 即可能导致错误 (error),也可能导致失效 (failure)。

本章讨论安全和可靠系统时,涉及到 3 个术语:即 errorfailurefault

  • error (错误):机组人员或维修人员的疏忽或不正确的行为,或需求、设计或实施中的错误。
  • failure (失效):影响部件、零件或元件运行,使其无法按预期运行(包括功能丧失和不期望的行为)。
  • fault (缺陷):导致项目或系统中出现显性错误,这种错误可能导致失效。

通常是某个 缺陷 行为导致了 错误,然后产品运行 失效

之所以区分这两种不同的缺陷,是因为针对这两种缺陷的解决方案是不同的。具体来说:

  • 失效 (failures) 可以通过 同构冗余 来解决。同构冗余是指创建系统或组件的多个完全相同的副本,以增加系统的可靠性。如果其中一个副本发生故障,其他副本可以继续提供服务。
  • 如果原始设计或代码中存在 错误 (errors),那么这个错误可能会在所有副本中复制。在这种情况下,为了继续安全地运行,你必须使用 异构冗余 。异构冗余是指使用不同的设计、代码或实现方式来创建提供相同服务的多个通道或组件。这种方法的好处是,即使其中一个通道由于某种特定错误而失效,其他通道由于使用了不同的设计或代码,可能不会受到同样的影响,从而增加了系统的整体健壮性。

缺陷与系统中的各种元素有关。可以在需求中规定缺陷的行为。系统中的一个元素可能是缺陷的源头,另一个元素可能帮助识别缺陷,还有元素可能缓解缺陷。

我相信并不存在所谓的“安全软件”,因为系统是否安全是由复合系统决定的,即电子、机械和软件在它们的操作环境中协同工作——所决定的。硬件缺陷可以通过软件缓解,反之亦然。我们说安全,指的是整个系统是安全的或者不安全的。

类似的,系统的可靠性是系统中所有组成部分的函数。一个系统的可靠性不仅仅取决于单个组件的可靠性,还取决于这些组件如何协同工作以及是否有备用机制来应对组件故障。关于如何评估安全性和可靠性以及如何构建安全和可靠的系统,有大量的文献可以参考,但对这些主题的详细讨论超出了本书的范围。

实现安全性和可靠性

一般来说,所有对安全性要求严苛的系统和高可靠性系统,都必须包含并妥善管理冗余性,以确保达到它们的安全性和可靠性要求。如何管理这些元素取决于安全和可靠性问题之间的特定平衡。这种冗余可以是“大范围内的冗余”(架构冗余)或“小范围内的冗余”(详细设计冗余)。在本书中,我们将考虑这两种冗余的几种模式。






读后有收获,资助博主养娃 - 千金难买知识,但可以买好多奶粉 (〃‘▽’〃)
千金难买知识,但可以买好多奶粉

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/448868.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

二叉搜索树题目:前序遍历构造二叉搜索树

文章目录 题目标题和出处难度题目描述要求示例数据范围 解法一思路和算法代码复杂度分析 解法二思路和算法代码复杂度分析 解法三思路和算法代码复杂度分析 解法四思路和算法代码复杂度分析 题目 标题和出处 标题:前序遍历构造二叉搜索树 出处:1008. …

Anacond 安装及使用教程pytorch安装

下载网址:Index of /anaconda/archive/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror pycharm安装教程 【从Python基础到深度学习】1. Python PyCharm安装及激活-CSDN博客 pycharm添加anaconda环境 conda创建虚拟环境 base表示当前conda的base环境&a…

sheng的学习笔记- AI-类别不平衡问题

目录:sheng的学习笔记-AI目录-CSDN博客 什么是类别不平衡问题 类别不平衡(class-imbalance),也叫数据倾斜,数据不平衡,就是指分类任务中不同类别的训练样例数目差别很大的情况。 例如有998个反例&#xf…

【智能算法】蜻蜓算法(DA)原理及实现

目录 1.背景2.算法原理2.1算法思想2.2算法过程 3.代码实现4.参考文献 1.背景 2016年,Mirjalili受到蜻蜓静态和动态集群行为启发,提出了蜻蜓算法(Dragonfly algorithm, DA)。 2.算法原理 2.1算法思想 蜻蜓集群有两种行为目的:狩猎&#xf…

大模型相关整理

机器学习 模型就是函数,这个函数可能是一个很简单的线性函数,也可以是一个非常复杂的高阶函数、或者是一个多层的神经网络函数。 机器学习领域的很多研究和方法都是在尝试设计这个函数,以自动驾驶领域为例,之前的自动驾驶基于人…

四川宏博蓬达法律咨询有限公司:专业可靠,您身边的法律守护者

在现代社会,法律咨询服务的需求日益增长,选择一家专业可靠的法律咨询公司成为了许多企业和个人的当务之急。四川宏博蓬达法律咨询有限公司便是这样一个值得信赖的法律服务提供者,以其专业、高效、贴心的服务,赢得了广大客户的信赖…

c++ primer plus笔记 第十八章 探讨c++新标准

复习前面的内容: 1.auto,可以自动识别auto本身在这种语境下是什么类型 2.decltype,让一个变量的类型和另外一个变量的类型相同 decltype(x) y;//让y的类型和x的类型相同 如何理解? decltype是一个关键词,其作用是检查括号内的…

【MySQL系列 05】Schema 与数据类型优化

良好的数据库 schema 设计和合理的数据类型选择是 SQL 获得高性能的基石。 一、选择优化的数据类型 MySQL 支持的数据类型非常多,选择正确的数据类型对于获得高性能至关重要。不管存储哪种类型的数据,下面几个简单的原则都有助于做出更好的选择。 1. …

AOP-注解实现-记录日志到数据库

概念解释 AOP:Aspect Oriented Programming Aspect:方面Oriented:面向…的Programming编程 之前我对模块化编程的认识,主要是局限在布局结构、目录结构上。比如Vue的template模板。 对方法的模块化编程,我之前的认识…

基于springboot+layui仓库管理系统设计和实现

基于 java springbootlayui仓库管理系统设计和实现 博主介绍:多年java开发经验,专注Java开发、定制、远程、文档编写指导等,csdn特邀作者、专注于Java技术领域 作者主页 央顺技术团队 Java毕设项目精品实战案例《1000套》 欢迎点赞 收藏 ⭐留言 文末获取…

硬件工程师面试题梳理-百度硬件面试题

硬件工程师基本职责 在公司里面,硬件工程师的主要职责包括设计、开发和测试硬件系统,以满足产品需求和性能要求。他们负责确保硬件系统的可靠性、稳定性和可维护性,并与软件工程师和其他团队成员合作,以确保硬件和软件的协同工作…

arcgis辅助下的GIS滑坡泥石流易发性评估模型构建

我国是地质灾害多发国家,地质灾害的发生无论是对于地质环境还是人类生命财产的安全都会带来较大的威胁,因此需要开展地质灾害风险普查。利用遥感(RS)技术进行地质灾害调查工作具有宏观、快速、准确的特点,能反映出地质…

SpringCloud(21)之SpringCloud Alibaba Nacos实战应用

一、Nacos安装 1.1 Nacos概述 Nacos是Alibaba微服务生态组件中的重要组件之一,主要用它实现应用的动态服务发现、配置管理、 服务管理。Nacos discovery alibaba/spring-cloud-alibaba Wiki GitHub Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简…

MotionCtrl: A Unified and Flexible Motion Controller for Video Generation

MotionCtrl: A Unified and Flexible Motion Controller for Video Generation 这篇论文是基于VideoCrafter的,而VideoCrafter是基于LVDM的 关于LVDM可以看https://blog.csdn.net/Are_you_ready/article/details/136615853 2023年12月6日发表在arxiv 这篇论文讨论…

seo js转码工具

js转码工具作用 用于把js加密 如果不想让别人看到自己的js 代码就可以使用这个方法 js工具网址 https://tool.chinaz.com/js.aspx 效果

J.K.罗琳创作的《神奇动物》系列电影赏析

故事情节 《神奇动物在哪里》: 这部电影讲述了纽特斯卡曼德来到纽约的故事,他是一位收集和研究魔法动物的巫师。在纽约,他的一只神奇生物逃脱,并引发了一系列麻烦。与此同时,纽约巫师社会面临着黑暗力量的威胁&#x…

超大规模-近场

这里先了解基站到用户的,无RIS的近场模型 超大规模智能反射面辅助的近场移动通信研究 (论文题目) (期刊)无线电通信技术 系统:BS-RIS-UE,两个阶段都是近场 模型:球面波传播模型&…

在dpvs上实现ICMP的源进源出

目录 1. 缘起2. 源码分析3. 让ICMP也走源进源出1. 缘起 在网络通信中,当一个请求报文从源主机到达目标主机,并经过中间路由器或交换机进行转发时,请求报文进入主机A的路径和响应报文离开主机A的路径可能不同。这种情况下,就会出现所谓的三角路径问题。如下图: 具体来说,…

USB协议学习(三)大容量存储设备SCSI协议分析

笔者来简单介绍一下SCSI得协议命令 1、SCSI协议认识 SCSI:Small Computer System Interface,用于计算机外部设备得接口标准,定义了与外部设备得一套协议。SCSI标准协议族支持很多钟SCSI设备,像盘,打印机,扫…

论企业安全漏洞扫描的重要性

前言 随着信息技术的迅猛发展和互联网的广泛普及,网络安全问题日益凸显。在这个数字化的世界里,无论是企业还是个人,都面临着前所未有的安全威胁。安全漏洞,作为这些威胁的源头,常常被忽视或无法及时发现。 而安全漏洞…