危害(Hazard)、风险(Risk)、缓解( Mitigation)、残余风险(Residual Risk )
危害(Hazard)和风险(Risk),在不同的行业标准中有不同的解释,在ISO26262-1中危害的定义是”potential source of harm caused by malfunctioning behaviour of the item(即,由相关项异常表现而导致的伤害的潜在来源)“,而在IEC61508中的定义仅 为“potential source of harm伤害的潜在来源”,并未涉及功能异常表现。
撇开这些拗口的学术定义,可以用类比的方式来理解这些学术用语。危害(hazard)是一座冰山,风险(Risk)是一艘撞向冰山的船。而缓解或者降级( Mitigation)可以理解为将冰山涂成黄色让人更加容易看见,而这时的残余风险(Residual Risk)可以理解为大雾天或者夜晚发生的碰撞。
概括一点来说,危害(hazard)就是环境中客观存在,并可能引起风险(Risk)的事物,而风险(Risk)是则主动的可能导致危险情景的行为。当风险被识别出来之后,如果足够严重,必须采取降级(Mitigation)手段来减轻它的影响。举如下一个和汽车电子相关的例子,将存储数据和程序的内存(memory)作为危害(hazard),与其相关的风险如下:
风险(Risk)1,次级宇宙射线辐射
次级宇宙射线辐射会导致内存中出现位翻转(bit-flip),从而引起控制模式的非预期转变,从而可能导致危险操作场景。一种典型的缓解方式(mitigation)是使用ECC内存(错误检测及修正内存)。残余风险则包括出现ECC无法检测的错误(3个位错误),应用程序没能正确处理内存报错的相关中断,或者ECC无法覆盖的缓存(cache)。
风险(Risk)2,内存耗尽
应用程序存在内存泄漏(memory leak)引起内存不能继续访问,从而产生非预期失效导致危险场景。典型的缓解方式(mitigation)是每个应用在启动时保留充足的静态缓存,并在整个运行过程中不释放。这种方式的残余风险是出现在测试或者设计时未考虑到的情况,导致分配的静态内存不够用。这时如果严格执行编码规范MISRA C,可以进一步降低风险。
通常来说,每种危害都会对应几种风险,每种风险都会有几种相对应的缓解方法(mitigation)。
关注微信订阅号 autotechspace (汽车知识共享空间)获取更多实时内容。。。