概述
对元器件进行寿命试验并根据实际资料统计得知,元器件的可靠性分为3个阶段:开始阶段,元器件工作处于不稳定状态,失效率较高;第二阶段,元器件正常工作,失效率最低,基本保持常数;第三阶段,元器件开始老化,失效率又重新增长;这个过程称之为“浴盆曲线”。
由于计算机的硬件故障通常是元器件失效引起的,因此计算机也遵循该规律,为了对计算机的可靠性进行评估,因此需要了解一些计算机可靠性的特性。
计算机可靠性
计算机系统的可靠性是指从运行时间(
t
=
0
t=0
t=0)到某时刻
t
t
t这段时间内能正常运行的概率
R
(
t
)
R(t)
R(t)。而失效率是指单位时间内失效的元件数与元件总数的比例,用
λ
\lambda
λ表示,当其为常数时,可靠性与失效率的关系为:
R
(
t
)
=
e
−
λ
t
R(t) = e ^{- \lambda t}
R(t)=e−λt
典型的失效率与时间的关系曲线如下图:
两次故障之间系统能正常工作的时间的平均值称为平均无故障时间(MTBF, Mean Time Between Failure),即:
M
T
B
F
=
1
/
λ
MTBF = 1 / \lambda
MTBF=1/λ
通常用 平均修复时间(MTTR, Mean Time To Repair) 来表示计算机的可维修性,指从故障发生到机器修复平均所需时间。
计算机的可用性指的是计算机使用效率,它以系统在执行任务的任意时刻能正常工作的概率A来表示,即
A
=
M
T
B
F
M
T
B
F
+
M
T
T
R
A = \frac{MTBF}{MTBF+MTTR}
A=MTBF+MTTRMTBF
计算机的RAS就是指可靠性(Reliability),可用性(Availability),可维护性(Serviceability)三个指标,用它们来衡量一个计算机系统的整体可靠性。
但实际上除了元器件引发的故障还有工艺、逻辑等多因素。因此不同的厂家使用相同的元器件生产的机器其可靠性和MTBF可能差距也十分巨大。
计算机可靠性模型
计算机系统是一个复杂的系统,影响到可靠性的因素非常复杂,很难直接对其的可靠性进行分析。但通过建立合适的数学模型,把大系统分割,就可以简化其分析过程。
常见的系统可靠性数学模型有以下三种:串联系统、并联系统、N模冗余系统。
串联系统
假定一个系统是由N个子系统构成,而且并仅且只有所有子系统都能正常工作时系统才能正常工作,这种系统称为串联系统,如下图。
设各个子系统的可靠性用
R
1
,
R
2
,
R
3
,
…
,
R
N
R_1, R_2, R_3, \dots, R_N
R1,R2,R3,…,RN来表示,则系统可靠性由下式求得:
R
=
R
1
×
R
2
×
R
3
×
⋯
×
R
N
R = R_1 \times R_2 \times R_3 \times \dots \times R_N
R=R1×R2×R3×⋯×RN
如果各个子系统的失效率分别用
λ
1
,
λ
2
,
λ
3
,
…
,
λ
N
\lambda_1, \lambda_2, \lambda_3, \dots, \lambda_N
λ1,λ2,λ3,…,λN来表示,则系统的失效率由下式求得:
λ
=
λ
1
+
λ
2
+
λ
3
+
⋯
+
λ
N
\lambda = \lambda_1 + \lambda_2 + \lambda_3 + \dots + \lambda_N
λ=λ1+λ2+λ3+⋯+λN
举个例子:
设计算机系统由CPU、存储器、I/O三部分组成,其可靠性分别为0.95、0.9、0.85,求计算机系统的可靠性。
解:系统可靠性是用各子部件的可靠性相乘得出,因此答案为: 0.95 × 0.9 × 0.85 = 0.73 0.95 \times 0.9 \times 0.85 = 0.73 0.95×0.9×0.85=0.73,因此该系统的可靠性为0.73。
并联系统
假定一个系统由N个子系统构成,但只要有一个能正常工作,系统就能正常工作,这种系统称为并联系统,如下图。
设各个子系统的可靠性用
R
1
,
R
2
,
R
3
,
…
,
R
N
R_1, R_2, R_3, \dots, R_N
R1,R2,R3,…,RN来表示,则系统可靠性由下式求得:
R
=
1
−
(
1
−
R
1
)
(
1
−
R
2
)
…
(
1
−
R
N
)
R= 1-(1-R_1)(1-R_2)\dots(1-R_N)
R=1−(1−R1)(1−R2)…(1−RN)
假设所有子系统的失效率均为
λ
\lambda
λ,则系统失效率
μ
\mu
μ可由下式求得:
μ
=
1
1
λ
×
∑
j
=
1
N
1
j
\mu = \frac{1}{\frac{1}{\lambda} \times \sum_{j=1}^N \frac{1}{j}}
μ=λ1×∑j=1Nj11
在并联系统中,只有一个子系统就能正常工作,因此其余N-1个子系统都是冗余子系统,随着冗余子系统的增加,系统的MTBF也会增加。
举个例子:
假设一个系统由3个相同的子系统组成,其可靠性为0.9,平均无故障时间为10000小时,求系统的可靠性和平均无故障时间。
解:由于是3个完全相同的子系统,那么其的可靠性为: 1 − ( 1 − 0.9 ) 3 = 0.999 1-(1-0.9)^3 = 0.999 1−(1−0.9)3=0.999,因此系统可靠性为0.999。
而系统的MTBF为: 1 1 10000 × ( 1 + 1 2 + 1 3 ) ≈ 18333 \frac{1}{\frac{1}{10000} \times (1+ \frac{1}{2} + \frac{1}{3})} \approx 18333 100001×(1+21+31)1≈18333小时。
N模冗余系统
假定一个系统有N(N=2n+1)个相同的子系统组成和一个表决器组成,表决器会把多个子系统中多数相同结果的作为系统输出。在N个子系统中,只要有n+1(即超过半数)或以上的子系统能正常工作,系统就能正常工作。
假设表决器是完全可靠的,每个子系统的可靠性为
R
1
R_1
R1,则N模冗余系统的可靠性为:
R
=
∑
i
=
n
+
1
N
(
i
N
)
×
R
1
i
(
1
−
R
1
)
N
−
1
R = \sum_{i=n+1}^N (\frac{i}{N}) \times R_1^i(1-R_1)^{N-1}
R=i=n+1∑N(Ni)×R1i(1−R1)N−1
其中
(
i
N
)
(\frac{i}{N})
(Ni)表示从N个元素里取i个元素的组合数。