Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Прикладные проблемы надежности и качества систем. Курс лекций

.pdf
Скачиваний:
0
Добавлен:
08.09.2026
Размер:
2 Мб
Скачать
☆
Обозначив через q
4 г 4 4 4 окс
(1 ( ( )))(1 ).p K F tH q= −∆ −
( )
( )
( )
5 г5 5 5
1.p K F tH= −∆
г
(1 ( ( ))) 1.
k kk
K F tH−∆ ≈
2
t∆
4
t∆
1 aв
t∆
1
12ав 1 2 3
.tt t tt t
∆ +∆ ≤∆ ≤∆ +∆ +∆
pc
t∆
опс
t∆
вероятность обнаруженной ошибки, возник-
окс
шей из-за помех в обратном канале связи, для вычисления p формулу
имеем
4
(1.10)
И наконец, при приеме на терминал расшифрованной информа­ции о результатах будем считать, что возможны только функцио­нальные отказы технического устройства, т. е.
(1.11)
Заметим, что коэффициент готовности указанных устройств обычно близок к единице, а вероятность функционального отказа во время выполнения операции очень мала. Поэтому можно считать, что для всех k = 1,5:
(1.12)
1.1.4. Вероятность успешного решения задачи при возможных рестартах
Вычислим вероятность успешного решения g-й задачи p
при ус-
cg
ловии, что возможно несколько стартов. В этом случае необходимо знать ресурс времени, оставшегося после очередного неудачного старта.
Будем считать, что время на дополнительный запрос пакета в слу-
чае ошибки в канале связи включено соответственно
и
. То-
гда в случае аварийного завершения рабочей программы интервал
, прошедший от момента начала ввода данных, удовлетворяет
неравенству:
В случае сбоя операционной системы израсходованный ресурс
времени также удовлетворяет (1.13). Обозначим через тельное время на старт рабочей программы, а через
перезапуск операционной системы. При перезапуске этой системы информация о задаче может сохраняться или не сохраняться. Поло- жим, что она сохраняется. Тогда после перезапуска системы проис­ходит рестарт задачи.
(1.13)
дополни-
– время на
11
Возможна еще одна ситуация: в результате ошибки оператора
оп
допзп12345
t t ttttt∆ =∆ +∆ +∆ +∆ +∆ +∆
зп
t∆
0
опс оп опс
(1 ) .q qq= −
опс
доп опс pc 3 4 5
.t t t ttt∆ =∆ +∆ +∆ +∆ +∆
пр
доп pc 3 4 5
.t t ttt∆ =∆ +∆ +∆ +∆
0
пр
q
0
пр опс алг пр оп
(1 )(1 (1 )(1 ))(1 ).q q qq q=− −− − −
данные не проходят синтаксический или логический контроль, что приводит к останову задачи. Если считать, что время на указанный контроль намного меньше интервала решения задачи, то вероятность сбоя в программе или операционной системе на интервале контроля пренебрежимо мала. Будем считать также, что ошибки оператора такого типа обнаруживаются при контроле. Тогда вероятность ука­занной выше ситуации приближенно равна q
, а среднее дополни-
оп
тельное время на повторный запрос данных и решение задачи опре­деляется по формуле
где
– дополнительное время на повторный запрос данных опе-
, (1.14)
ратора.
Если во время решения задачи происходит сбой операционной системы, то безразлично, будет ли вместе с этим сбой в рабочей про­грамме или нет.
Вероятность сбоя операционной системы при условии отсутствия ошибок оператора равна
(1.15)
Среднее дополнительное время на решение задачи в этом случае будет равно
(1.16)
Если сбой произошел только в рабочей программе, то среднее до­полнительное время вычисляется по формуле
Вероятность сбоя только в рабочей программе
(1.17)
при работаю-
щей операционной системе и отсутствии ошибок оператора равна
В этой формуле второй сомножитель представляет собой вероят­ность хотя бы одного из двух независимых событий: сбой по причи­не алгоритмической ошибки и сбой по причине помех.
12
(1.18)
Таким образом, среднее значение дополнительного времени на
0 пр 0 опс оп
доп пр доп опс доп оп доп
.t qt q t qt∆ =∆ + ∆ +∆
1
ав
t∆
1
ав доп
tt∆ +∆
1
ав доп 3 0
,
gg
t t tt
∆ +∆ < −
k
t∆
2g
p
2
ав доп 4 5
.t t tt∆ =∆ −∆ −∆
12
ав ав доп 3 0
.
gg
t t t tt∆ +∆ +∆ < −
решение задачи при втором старте равно
Будем считать, что
равно своему максимальному значению
(1.19)
согласно (1.13). Тогда суммарное среднее время на решение задачи равно:
. Сравним его с ресурсом. Если
(1.20)
то g-я задача может стартовать второй раз. Сделанный расчет по средним значениям, разумеется, является приближенным. Для нера­венства (1.20) можно вычислить вероятность и учесть ее в дальней­ших вычислениях. Однако аналитические трудности этого расчета неоправданны, так как все равно пришлось бы использовать прибли-
женные аппроксимации законов распределения
.
Приняв приближенную оценку возможности второго старта, для вероятности
успешного решения задачи со второго старта мож-
но записать:
p
= p3p4p5. (1.21)
g2
Поскольку был предложен экспоненциальный закон распределе­ния F
(t), то при новом старте распределение интервала, оставшего-
k
ся до функционального отказа, не зависит от начала отсчета. По­этому формулы (1.9) – (1.11) верны и в этом случае. Вероятность того, что g-я задача будет успешно решена при двух возможных стартах, равна:
p
При расчете на третий старт, как и на все предыдущие, макси­мальное время, затраченное на решение, равно
Среднее дополнительное время на третий старт (и любой после­дующий) будет то же самое. Возможность будет определяться нера­венством:
= pg1 + (1 – pg1)pg2. (1.22)
cg
(1.23)
(1.24)
13
Соответственно вероятность успешного решения задачи будет
1 12 1 23
(1 ) (1 )(1 )
cg g g g g g g
P p pp p p p
= +− +− −
ав доп 3 0
1
,
m
j
gg
j
t t tt
=
∆ +∆ < −
∑
1
ав доп 3 0
1
m
j
gg
j
t t tt
+
=
∆ +∆ ≥ −
∑
1
1
1 12 2
1
(1 ) (1 )
m
j
cg g g g g
j
p p pp p
−
−
=
= +− −
∑
равна
где p
вычисляется по формуле (1.21), т. е. pg3 = pg2.
g3
, (1.25)
Расчет можно продолжить до тех пор, пока для m-го старта вы­полняется неравенство:
(1.26)
а для (m + 1)-го старта:
. (1.27)
Тогда окончательно имеем:
Как уже было сказано, значения коэффициентов готовности K для k-й операции (k = 1,5) и законы распределения F
. (1.28)
(t) вычисляются
k
гk
по результатам эксплуатации вычислительной системы. Рассмотрим отдельно проблемы надежности человека-оператора, помехозащит­ного кодирования и программного обеспечения.
1.2. Надежность человека-оператора
При условии, что оператор достаточно квалифицирован, он оши­бается в результате ослабления внимания. Максимальный уровень внимания обычно наблюдается при средней нагрузке. Нагрузка опе­ратора h может измеряться, например, числом нажатий клавиш на дисплее в минуту. При слабой нагрузке человек, даже не желая того, расслабляется и допускает больше ошибок. Происходит это от того, что при наличии свободного времени мозг автоматически отвлекает­ся на проблемы, не связанные с производимыми операциями. При большой нагрузке оператор утомляется и, чувствуя это, старается напрячь внимание. Возникает стрессовая ситуация, неуравновешен­ность эмоций. Это приводит к ошибкам.
14
Зависимость среднего уровня и дисперсии ошибок от нагрузки,
оп 0
1 exp( ( , ) ).
g bg
q t ht= − −λ ∆
разумеется, индивидуальна. Однако в определенных рабочих груп­пах, члены которых находятся в одинаковых условиях работы, наб­людаются определенные статистические закономерности.
Например, действия человека-оператора характеризуются плотно- стью ошибок λ(t, h), медленно растущей по времени от начала к кон­цу рабочей смены. Если интеграл ввода данных Δt
для конкретной
bg
задачи относительно мал по сравнению с длительностью рабочей смены, то можно считать поток ошибок приблизительно постоян­ным. Тогда справедлив приблизительно закономерный закон распре­деления интервала безошибочной работы оператора. Если ввод дан­ных g-й задачи начинается в момент t
0g
, то
(1.29)
Можно обнаружить два рода ошибок оператора: 1) ошибки, обна­руживаемые при синтаксическом или логическом контроле данных;
2) ошибки типа относительно малых вариаций числовой информа­ции, проходящие логический контроль, но приводящие к ошибочно­му финальному результату. Будем считать, что условная вероятность ошибок второго рода намного меньше, чем первого. Плотность пото­ка ошибок оценивается по статистическим измерениям, в результате чего может быть построена регрессия λ(t, h). Типичное значение q
оп
как правило, порядка 0,001.
1.3. Надежность канала связи
1.3.1. Вероятность пропуска ошибки
Надежность канала связи определяется его функциональной на­дежностью, связанной с отказами технических средств и надежно­стью передачи информации (операционной надежностью) при тех­нически исправном канале, которая определяется уровнем шумов, приводящих к искажению сигналов, и эффективностью работы сис­темы контроля информации.
Замечание. Операционная надежность есть аналог надежности достижения цели, а действие системы контроля информации анало­гично действию подсистемы управления.
Определение 3. Показателем операционной надежности q
кс
на­зовем вероятность пропуска ошибки в передаваемом информацион­ном блоке.
,
15
Условия работы (уровень помех) и система контроля в прямом и
пос вo но
() ()
j
q q jq j=
∑
00
00 00
во
() ()
() e .
!!
jj
t
tt
qj
jj
−λ ∆
λ∆ λ∆
= ≅
обратном канале связи, как правило, идентичны. Поэтому индексы «п» и «о» в дальнейшем опущены. Информационный блок обычно разбивается на равные по размеру сообщения (пакеты). Обозначим через q
вероятность пропуска ошибки в сообщении, которую мож-
пос
но вычислить по формуле, выражающей сумму несовместных собы­тий по возникновению и пропуску ошибки j-й кратности:
где q
(j), qно(j) – вероятность возникновения и вероятность необна-
вo
, (1.30)
ружения ошибки j-й кратности соответственно. Определение 4. Кратность ошибки j измеряется числом ошибоч-
ных разрядов.
Будем считать поток возникновения ошибок в разрядах пуассо­новским, а ошибки, возникающие в различных разрядах сообщения, независимыми. Обозначим через λ ошибок, а через Δt
время передачи контролируемого сообщения. В
0
интенсивность потока одиночных
0
пуассоновском потоке интервалы между ошибками имеют экспонен­циальное распределение. Вычислим вероятность q ность появления ровно j ошибочных разрядов в интервале Δt
(j), т. е. вероят-
вo
.
0
Заметим, что современные технические средства ИC обеспечива­ют значение λ
порядка 10–5…10–6 отказов/ч. Вместе с тем Δt0 состав-
0
ляет доли секунды. При этих условиях вероятность появления ошиб­ки j-й кратности на интервале Δt
достаточно точно описывается рас-
0
пределением Пуассона:
(1.31)
1.3.2. Некоторые методы обнаружения ошибки
Обозначим через А очередное сообщение в двоичном виде. Наи­более распространенным видом контроля является контроль по мо­дулю mod
(A). Так обозначен остаток от деления A на m. Значение m
m
выбирается чаще всего по формуле m = 2 тельное число.
Такой выбор m обусловлен простым вычислением остатка от де­ления. Последовательность символов, составляющих сообщение, со-
16
b
–1, где b – целое положи-
провождается контрольными разрядами, в которые перед передачей
но
1 11
(, ) .
1
j
m
q jm
mm m
−

=+−

−

кс пос
1 (1 ) .
l
qq=−−
записывается mod
(A). При приеме modm(A) снова вычисляется и
m
сравнивается с переданным ранее значением. При этом подразумева­ется, что ошибка может оказаться и в контрольных разрядах. Но их намного меньше, чем информационных, и вероятность необнаруже­ния ошибки j-й кратности как функция m вычисляется по формуле
Значение q
(j, m) для одиночной ошибки (j = 1) равно нулю для
но
всех m. Подставив (1.31) и (1.32) в (1.30), получим значение q
(1.32)
. За
пос
время передачи уровень помех можно считать постоянным. Поэтому
q
для каждого сообщения равны между собой. Обозначим через l
пос
число сообщений. Тогда q
есть вероятность пропуска ошибки хотя
кс
бы в одном сообщении и вычисляется по формуле
(1.33)
Число контрольных разрядов равно 2 при m = 3 и 3 при m = 7.
Пример. Пусть исходное сообщение имеет 8 разрядов. Контроль проводится по модулю 3 (m = 3). Значения разрядов исходного сообще­ния следующие: 11010111 (в десятичной системе это число 215). В кон­трольных разрядах записывается 10 (остаток от деления 215 на 3 равен
2). Предположим, что при передаче произошло следующее искажение (двухкратная ошибка): 01010101. Остаток от деления на 3 равен 1. Ошибка обнаружена. Пусть получено следующее сообщение 01000111 (ошибка также двухкратная). Остаток от деления на 3 равен 2. Ошибка не обнаружена. Пусть теперь произошла трехкратная ошибка:
011001111. Остаток от деления на 3 равен 1. Ошибка обнаружена.
Более простым по исполнению является метод проверки на чет­ность, так называемый код Хэмминга. При этом производится сум­мирование разрядов исходного сообщения по модулю 2 (m = 2). Ре­зультат записывается в единственный контрольный разряд.
Для этого случая
q
(j) = 0, если j – нечетное; qно(j) = 1, если j – четное. 1.34)
но
Существуют и другие методы контроля, не приведенные здесь, поскольку их эффективность мало отличается от рассмотренных ме-
17
тодов. Большинство из них ориентировано на контроль информации в долговременной памяти.
Для практических расчетов обычно вероятность возникновения четырехкратной ошибки и ошибки большей кратности принимается равной нулю.
Кроме контролирующих кодов применяются также корректи­рующие коды. Но для достаточной глубины коррекции такие коды требуют большого числа дополнительных разрядов. Кроме того, объ­ем вычислений по кодированию и декодированию значительно воз­растает. Целесообразность применения корректирующих кодов оце­нивается для каждой конкретной ИС. В случае применения только контролирующих кодов при обнаружении ошибки соответствующее сообщение запрашивается вторично.
1.4. Надежность программного обеспечения
1.4.1. Вероятность ошибок от воздействия помех
Надежность программного обеспечения определяется его помехо­защищенностью и отсутствием алгоритмических ошибок, не обна­руженных при отладке. Во время операции решения задачи функ­ционирует операционная система и рабочая (прикладная) программа. Будем считать, что алгоритмические ошибки в операционной систе­ме отсутствуют ввиду ее долговременного использования. Помехо­защищенность операционной системы и прикладной программы обеспечивается на уровне контроля данных, поступающих из опера­тивной и долговременной памяти. Если считать, что ошибки арифме­тических устройств полностью исправляются аппаратурными сред­ствами, то значения q
пр
и q
могут быть вычислены по формуле, по-
опс
добной (1.33). Роль отдельных сообщений будут играть отдельные блоки. В качестве Δt
должно учитываться время хранения очередно-
0
го блока информации в памяти до момента использования. Уровень помех в вычислителе существенно ниже, чем в канале связи. Следо­вательно, λ ности при проектировании ИС можно считать, что q но равны q
также уменьшается. Для приближенного расчета надеж-
0
и q
пр
[(см. формулу (1.33)]. Более точное же их значение, при-
кс
пример-
опс
годное для расчета вероятности успешного решения реальной задачи управления, можно получить только в результате статистического анализа данных эксплуатации конкретной ИС.
Однако этот анализ скорее всего не даст возможности вычислить вероятность алгоритмической ошибки прикладной программы q
алг
так как ее использование на фоне других программ может оказаться
,
18
относительно редким. Поэтому представляет интерес прогноз веро­ятности алгоритмической ошибки, не обнаруженной при отладке.
1.4.2. Вероятность алгоритмической ошибки рабочей программы
Прежде всего заметим, что имеются принципиальные различия в природе отказов элемента аппаратуры и программы. Отказ элемента аппаратуры происходит в результате ухода характеристик за допус­тимые пределы. Программа же не разрушается оттого, что в ней име­ется ошибка. Она просто дает неверный результат. Надежность лю­бого технического оборудования можно повысить дублированием. Использование же двух одинаковых программ не повышает надеж­ность, так как в дубле будут те же ошибки.
Какова бы ни была длительность предварительных испытаний элемента аппаратуры, она все равно с течением времени выйдет из строя. Напротив, если программу испытывать достаточно долго, то в принципе все ошибки будут обнаружены и программа больше нико­гда не даст неправильного результата (если нет помех). Алгоритми­ческие ошибки в программах остаются только вследствие ограни­ченного времени отладки. В связи с этим возникает вопрос: можно ли считать, что алгоритмические ошибки носят случайный характер? Ведь, по существу, программа детерминированно отображает про­странство входов на пространство выходов. А в случае детерминиро­ванного процесса исчезает предмет исследования надежности.
Замечание. Если бы было известно поведение выхода рабочей программы при любых возможных выходах, то можно было бы про­гнозировать ошибки.
Но дело в том, что свойства крупной программы никогда не бы­вают известны полностью, поскольку практически невозможно пере­брать все возможные сочетания выходов за время отладки. Входы программы также являются случайными. В силу того что и для самой программы и для ее входов характерна неопределенность, можно считать появление ошибок из-за алгоритмических погрешностей случайным процессом.
В литературе предложено несколько похожих моделей надежно­сти алгоритмического обеспечения. Рассмотрим одну из наиболее типичных моделей – статическую модель, предложенную Шуманом. Она основана на следующих положениях:
– общее число команд L на машинном языке остается практически постоянным;
19
– число ошибок Mr(Δt
отл отл
()(0) ().
rc
Mt M Mt∆= −∆
отл
( ).
r rr
kM t
λ= ∆
01
1
02
2
1
,
( (0) ( ))
1
.
( (0) ( ))
rc
rc
T
kM M
T
kM M
=
−τ
=
−τ
() 1 e .
r
t
Ft
−λ
= −
алг отл
1 exp( ( (0) ( )) )
r cp
q kM M t t=−− −∆ ∆
), оставшихся после периода отладки Δt
отл
отл
остается постоянным (коррекция в процессе рабочего функциониро­вания программы не проводится);
– плотность потока отказов программы, вызванных оставшимися блоками, постоянна во времени и пропорциональна M
Обозначив через M(0) начальное число ошибок, а через M
.
r
(Δt
) –
c
отл
число обнаруженных ошибок, можно записать:
,
(1.35)
Постоянная закона распределения интервала между отказами λ определяется по формуле
Неизвестные k безотказной работы T τ
принадлежит τ2 и начала их совпадают. При этом нужно зафикси-
1
и M(0) можно определить, измеряя среднее время
r
и T02 в течение двух периодов отладки τ1 и τ2:
01
ровать число обнаруженных ошибок M
(1.36)
) и Mc(τ2).
c(τ1
Поскольку среднее время безотказной работы обратно пропор­ционально λ нахождения k
, то можно записать следующую систему уравнений для
r
и M(0):
r
(1.37)
Постоянной плотности потока отказов соответствует экспоненци­альный закон распределения интервала между отказами:
(1.38)
r
Отсюда
где Δt
– интервал решения задачи.
р
Эта модель относится к случаю, когда допуск к тексту программы прекращается с момента ее включения в работу.
Можно предложить модификацию этой модели на случай, если отладка возможна в процессе эксплуатации. Обозначим через t
20
, (1.39)
об-
0
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]