Основные определения теории надежности.
Общие положения
Важнейшим эксплуатационным показателем качества системы является надежность. Недостаточно высокий уровень, которой приводит к снижению эффективности систем и ошибочным действиям в решении задач. Надежность систем взаимосвязана как с техническими, так и с экономическими требованиями. Надежность характеризует ожидаемое поведение системы в смысле отказа или кратковременная ошибка ее функционирования в заданном интервале времени. Отказ заключается в потере работоспособности, которая м.б. восстановлена только путем внешнего вмешательства.
Случайная ошибка функционирования (сбой) проявляется в кратковременном случайном нарушении выполнения к.л. функции. Если нарушение носит систематический характер, то имеет место устойчивый отказ.
Для количественных оценок надежности используют различные характеристики и параметры, относящиеся к событиям как появление отказа или случайной ошибки функционирования, что позволяет предупредить или устранить их.
Важнейшими из характеристик являются:
- среднее время наработки до отказа;
- готовность аппаратуры;
- вероятность безотказной работы (в течении заданного времени и в заданном режиме);
- частота отказов.
Надежность прибора или системы можно прогнозировать рассчитав ее заранее на этапе проектирования этих систем. Методика расчета основана на знании показателей надежности отдельных компонентов с учетом структуры, принципа и условий эксплуатации системы.
Полученные оценки являются вероятностными, т.е. показатели надежности компонентов оцениваются статистически по результатам их испытаний или эксплуатации.
Законы распределения случайной величины (СВ) и их события.
СВ – величина, которая в результате опыта может принимать то или иное значение, причем заранее не известно какое именно. СВ м.б. дискретной и непрерывной.
Закон распределения СВ – соотношение, устанавливающее связь м/ значениями СВ и их вероятностями. Для характеристики СВ используется вероятность того, что СВ X меньше текущей переменной x.
Функция распределения (ФР) СВ (интегральный закон распределения)
F(x) = p (X < x)
Плотность распределения (ПР) непрерывной СВ (дифференциальный закон распределения) это производная от ФР
f(x) = dF(x) / dx.
Свойства ПР:
В теории надежности за СВ обычно принимают время работы системы (это время до возникновения отказа). В этом случае ФР:
F(t) = P (t < tзад
) = Q(t).
ПР: f(t) = dQ(t) / dt.
Вероятность безотказной работы за время t:
P(t) = 1 – Q(t).
Интенсивность отказа (условная плотность вероятности отказов) – это отношение ПР f(x) к вероятности безотказной работы P(t):
l(t) = f(t) / P(t).
В теории надежности наибольшее распространение получили законы распределения СВ f(t):
Для дискретной СВ – биноминальный, Пуассона.
Для непрерывной СВ – экспоненциальный, нормальный, гамма, Вейбулла, хи квадрат, логарифмический.
Случайное событие
это событие, которое в результате опыта может произойти или не произойти. Для нас случайное событие это отказы, восстановления, заявки на обслуживание…образуют случайные потоки и случайные процессы. Поток событий
это последовательность событий происходящих одно за другим в какие-то промежутки времени, например отказы восстанавливаемого производства образуют поток отказов. Под их действием, потов отказов и восстановлений, система может находится в различных состояниях: полного отказа, частичного отказа и работоспособном. Переход системы из одного состояния в другое представляет собой случайный процесс.
Законы распределения, используемые в теории надежности.
Биноминальный закон распределения
числа n – появления события А в m – независимых опытах (испытаниях). Если вероятность появления события А в одном испытании есть р, тогда вероятность не появления события q = 1 – p.
Если независимое число испытаний = m, тогда вероятность появления n событий будет равна: - уравнение Бернулли.
- число сочетаний из m по n. .
Свойства:
1) число событий n это целое положительное число;
2) математическое ожидание (МО) числа событий М = m*p;
3) среднеквадратическое отклонение
При увеличении числа испытаний биноминальное распределение приближается к нормальному со средним значением n/m и дисперсией p(1-p)/m.
Закон Пуассона.
вероятность возникновения случайного события n раз за время t. l - интенсивность случайного события.
Свойства:
1) МО числа событий за время t: М = l*t.
2) среднеквадратическое отклонение числа событий , для данного распределения М = D.
Распределение Пуассона получается из биноминального, если число испытаний m неограниченно возрастает, а МО числа событий остается постоянным.
Закон Пуассона используется в том случае когда необходимо определить вероятность того что за данное время произойдет 1,2,3…отказов.
Экспоненциальный закон.
где P(x) это вероятность того что СВ X имеет значение большее x.
В частном случае, когда за СВ принимается время работы системы tвероятность т ого что система на протяжении времени t будет находится в работоспособном состоянии будем равно: .
где l - интенсивность отказов системы. l– const.
Это выражение можно получить из закона Пуассона, если число отказов n = 0.
Вероятность отказа за время tм.б. записана
Q(t) = 1 – P(t) = 1 -
Плотность вероятности отказов
F(t) = dQ / dt = l
Среднее время работы до возникновения отказа
Дисперсия – это время работы до возникновения отказа
D(t) =
Среднеквадратичное отклонение
Равенство и Т1
является характерным признаком экспоненциального распределения.
g
распределение.
Если отказ устройства возникает тогда когда произойдет не менее k отказов его элементов, а отказы элементов подчинены экспоненциальному закону с параметром l0
. Плотность вероятности отказа устройства:
где l0
исходная интенсивность отказов (ИО) элементов устройства, отказ которого вызывается отказом его элементов. Этому распределению подчиняется время работы резервных устройств и систем.
Вероятность k и более отказов, т.е. вероятность отказа устройства:
Плотность вероятности отказа системы за время t:
Среднее время работы системы до отказа:
ИО устройства:
Вероятность безотказного состояния системы:
При k = 1 g распределение совпадает с экспоненциальным.
Распределение Вейбула.
Плотность вероятности:
Вероятность отсутствия отказа за время t:
ИО:
a и l0
- параметры распределения, при a = 1 функция Вейбула совпадает cэкспоненциальным распределением. При a< 1 ИО будет монотонно убывающей функцией, если a> 1 – монотонно возрастающей.
Распределение Вейбула применяется для отказов устройства состоящего из последовательно соединенных дублированных элементов.
Нормальное распределение (НР).
СВ X возникает тогда когда x зависит от большого числа однородных по своему влиянию случайных факторов, причем влияние каждого из факторов по сравнению с влиянием совокупности остальных незначительно.
Плотность вероятности отказа НР:
Вероятность отказа за время t:
Для удобства определения F(t) составлены таблицы. Значение функции распределения определяется формулой: F(t) = 0.5 + Ф(u) = Q(t)
U = (t – T)/
Вероятность отсутствия отказа за время t:
P(t) = 1 – Q(t) = 1 – (0.5 + Ф(u)) = 0.5 - Ф(u)
ИО монотонно возрастает и постепенно начинает приближаться к асимптоте:
y = (t – T)/
c
2
–
распределение.
Если CBt распределена по НЗ с Т = 0 и = 1, то параметр X = будет являться СВ с плотностью распределения:
где k- число степеней свободы; Г(k/2) – это g функция.
С увеличением kc2
распределение приближается в НР.
g функция от k/2 это
НР находит широкое применение в теории надежности. Например установлено, что описание удвоенного значения наработки изделия, отнесенное к среднему времени безотказной работы имеет c2
распределение, если время до отказа - СВ с экспоненциальным распределением.
Показатели готовности аппаратуры
характеризуют ее ожидаемую работоспособность и подготовленность к эксплуатации. Эти показатели являются комплексными, учитывающие в том числе требовательное обслуживание со стороны пользователя. В их число входят готовность к решению задачи VA
, коэффициент использования аппаратуры VN
и продолжительность состояния готовности.
Первый из показателей VA
необходимо использовать для оценки состояния оконечных устройств, систем сбора и обработки данных, которые не включаются в цепь обратной связи системы. VA
служит мерой готовности устройства, находящегося в ждущем режиме (до появления сигнала пуска) начинать работу в произвольный момент времени и выполнять ее в определенном интервале времени. VN
характеризует обслуженные объекты с т.зр. их готовности к работе, в том числе при необходимости устранения отказов, если на это требуется незначительное время.
tB
– среднее время эксплуатации объекта (наработка на отказ)
tR
–время ремонта
tV
– суммарная продолжительность простоя до ремонта и после него
tst
– среднее время простоя
Продолжительность состояния готовности представляет собой комплексный показатель, который отражает возможность безотказного функционирования и готовность к обслуживанию (в том числе и к профилактическому), немедленно восстанавливаемых объектов, а так же затраты на их обслуживание. Этот показатель по существу есть вероятность готовности объекта к включению в работу в произвольный момент времени. Определяется:
VN
и продолжительность готовности отличаются лишь показателем среднего времени ремонта tR
и средним временем восстановления объекта tA
. Пренебрегая tV
можно определить коэффициент готовности контролируемых в процессе эксплуатации и немедленного восстанавливаемых объектов, с помощью выражения:
Прогнозирование показателей надежности
объектов основано на приближенных расчетах и получении приближенных значений показателей надежности путем исследования моделей или с учетом статистических оценок показателей надежности компонентов соответствующих технических средств. Вероятность безотказной работы системы или прибора во многом зависит от структуры их построения: последовательной или параллельной.
Полный отказ последовательной системы наступит в случае отказа хотя бы одного из ее компонентов. Полный отказ параллельной структуры наступит при отказе всех ее компонентов.
Здесь речь идет о логических моделях реальных систем, отличных от пространственно-геометрических построений и электрических схем этих систем. При расчетах надежности комбинированно-логической структуры (последовательно-параллельная, мостовая…) она приводится к одной из двух основных структур параллельной или последовательной. Для расчетов приближенных оценок показателей надежности и упрощения самих расчетов, используются постоянные во времени значения интенсивностей отказов компонентов: l(t) = l0
= const. При этом отказы получаются независящими друг от друга.
Расчеты показателей надежности систем с последовательной структурой
Вероятность Ps
(t) безотказной работы системы, исходя из независимости отказов, определяется как произведение вероятностей отдельных событий
(1)
т.к. то вероятность безотказной работы системы Ps
(t) будет .
Используя формулу связи Ps
(t) и ИО P(t)=e-
l
t
и формулу (1) можно записать, что ИО системы ls
(t) = (2)
Принимая во внимание, что среднее время наработки до отказа равно Т= tB
= 1/l, получаем что среднее время до отказа для системы запишется:
(3)
оценки, получаемые по (1) (2) (3) являются заниженными. В этих выражениях не учитывается мероприятия, выполняемые для повышенной надежности систем. Например возможный контроль и компенсация погрешностей отдельных компонентов. При расчетах эти факторы м.б. учтены путем введения соответствующих поправочных коэффициентов. Для повышения точности расчетов оценок показателей надежности учитываются известные из опыта эксплуатации временные ресурсы, которые обозначим TFi
, - работы i-тых отдельных компонентов. Поправочные коэффициенты ti
в этом случае вычисляются по формуле:
(4)
где – это среднее время реализации системой функции с участием i-того компонента. Тогда ИО = li
ti
(5)
Тогда более точное прогнозируемая оценка ИО системы запишется:
(6)
значение li
представляет собой номинальную оценку ИО i-того компонента. Оценки показателей надежности полученные по (1) (2) (3) можно скорректировать с учетом (5) при использовании (6) предполагая, что если компонент системы не участвует в реализации данной функции, то в заданном интервале времени он не выходит из строя, т.е. ИО в паузе = 0. Такое допущение приемлемо для некоторых типов электромеханических элементов. Для активных полупроводниковых элементов ИО в паузе можно обозначить lР
и во время функциональной загрузки (реализация задач, функций) lF
примерно равны lР
lF
. При их использовании для оценки ИО системы необходимо использовать (2). В реальных условиях эксплуатации электронной аппаратуры, функциональная загрузка отдельных компонентов оказывается различной, поэтому lF
< lР
. Если при реализации функции (задачи) i-тый компонент характеризуется ИО li
, то с учетом пауз, в его загрузке эта интенсивность снижается в K
Pi
раз. lPi
= K
Pi
li
причем 0 K
Pi
1.
Реальная продолжительность функционирования i-того элемента определяется выражением (4) с учетом которого можно записать выражение для вычисления более точной оценки ИО отдельного элемента:
= li
[ti
+ K
Pi
(1 - ti
)] (7а)
ИО для системы из r элементов:
(7б)
Более точные оценки вероятности безотказной работы и среднего времени наработки до отказа можно получить из выражений (1) и (3) с учетом (7).
Поправочные коэффициенты K
Pi
определяют опытным путем или по результатам эксплуатации. Они зависят от характера функционирования элементов зависимости ИО компонентов системы, учитывающие влияние перечисленных факторов или функциональную загрузку компонентов.
Расчеты показателей надежности систем с параллельной структурой
Такие системы, благодаря резервированию компонентов, характеризуются повышенной избыточностью, а, следовательно, более высокой стоимостью, большими габаритными размерами и т.д.
Такие структуры, для построения систем сбора и обработки данных, применяются в случае необходимости их длительной безотказной работы. Вероятность безотказной работы системы с параллельной структурой запишется:
(1)
если Pi
(t) 1 то для системы Ps
(t) Pi
(t).
Расчеты ИО и среднего времени наработки до отказа вычисляются:
ИО параллельной системы принимается постоянной, если постоянными являются ИО ее компонентов. Функция P(t) для системы с параллельным соединением (r-1 резервных компонентов)
На рисунке изображены зависимости вероятностей отказов в параллельной системе с различным количеством резервных компонентов. Эти зависимости и (1) отражают активное резервирование. В этом случае резервные каналы работают параллельно с основными. Вероятность безотказной работы с увеличением резерва возрастает. При пассивном резервировании дополнительные каналы включаются в работу только после отказа основного. Такое резервирование требует высоко-надежного контроля в сочетании с наличием средств включения резервных компонентов. Показатель надежности системы с пассивным резервированием определяются:
P(t) = (1 + lt)e-
l
t
(2)
(3)
(4)
Показатели надежности систем с комбинированной структурой
Системы с мостовой структурой
Надежность систем централизованного сбора и обработки данных с радиальной структурой может оценивать случай системы с последовательной структурой, если отказы отдельных внешних устройств не влияют на отказ системы в целом. В других случаях необходимо учитывать влияние информационных связей и потоков.
Определение параметров готовности аппаратуры
Техническое обслуживание аппаратуры д.б. направлено на быстрое устранение неисправностей и приведения аппаратуры в состояние готовности, которая является одним из показателей – тождественным показателем надежности. Степень готовности аппаратуры
VG
возрастает с уменьшением среднего времени ее восстановления
tA
, что достигается совершенствованием организационно-технических мероприятий по обслуживанию техники. tA
определяется временем ожидания ремонта
tW
и средним уровнем ремонта
tR
. tR
зависит от уровня технического оснащения базы обслуживания и квалификации обслуживающего персонала. tW
определяется организационными мероприятиями по обслуживанию и зависит от ряда факторов: от времени доставки ремонтников к месту установки оборудования и т.д.
Уменьшая tW
можно повысить эффективность обслуживания оборудования при одном и том же численном составе ремонтной службы. При определении действительного времени ремонта оборудования нужно учитывать время
tL
, требуемое на подготовку к ремонту
самих технических ремонтных средств. Т.об. действительное время ремонта: tr
= tR
+ tL
(5)
Cучетом (5) определяется коэффициент обслуживания: r = tr
/ tВ
(6)
Существует оптимальное число объектов обслуживаемых специалистами, при котором требуемые коэффициенты обслуживания и коэффициенты готовности определяются с учетом VG
= tВ
/(tВ
+ tA
) по выражению:
(7)
Для оценки эффективности работы обслуживающего персонала используют так называемый коэффициент загрузки одного ремонтника:
(8)
В (8) Pi – вероятность того, что к заданному моменту времени из n обслуживаемых приборов откажет не более iприборов:
(9)
или
(10)
При этом р0
– вероятность отсутствия прибора с дефектами
(11)
Помимо приведенных выше оценок используют показатели:
Средний коэффициент отказа одного прибора
(12)
Средний коэффициент ожидания обслуживания для одного прибора
(13)
Средний коэффициент ремонта одного пробора
fr
= fS
– fW
(14)
Т.об. VG
= 1 – fS
= fB
(15)
готовность объекта можно характеризовать средним коэффициентом эксплуатационной готовности fB
.
Приведенный выражения являются приближенными или статистическими оценками, т.к. входящие в них параметры и переменные заданы статистически.
Для определения готовности объекта VG
и коэффициента загрузки ремонтников fm
по заданным параметрам r, mи n используют специальные таблицы.
Практически соблюдается условие 2mn (16)
тогда (17)
это означает, что каждый ремонтник обслуживает не более 2-ух объектов и готовность оборудования превышает 80%. Для иллюстрации рассмотрим ряд зависимостей показателей готовности от количества приборов при числе ремонтников m = 2 и r = 0.001 (коэффициент обслуживания). Т.об. при n150 готовность оборудования резко уменьшится. При относительно небольшом количестве приборов fS
определяется fr
. С увеличение n он становится зависимым от fW
. Если fW
= fr
готовность становится критической VG
к
, а соответствующее количество объектов при заданных mи r тоже nк
. Если fW
< fr
– готовность ниже критической. Если fW
>fr
– готовность выше критической.
В случае обслуживания одним ремонтником одного прибора выражения (9) (10) (11) упрощаются, что приводит к некоторым граничным показателям готовности.
(18)
Если принять VG
к
= 1 - fS
к
, fr
fr
к
, fS
к
fr
u
, то с учетом (15) и (18)
VG
к
= (1 - r)/(1 + r) (19)
Из табличных зависимостей VG
к
= 0.9802 при nк
= 15 VG
= 0.9788.
Если n стремится к обслуживание становится невозможным и показатели готовности стремятся к теоретическим верхним значениям:
(20)
Верхнее значение показателя готовности ограничивается выражением (17). Коэффициент заправки ремонтников линейно возрастает с увеличением количества обслуживаемых объектов при n < nк
и стремится к 1 при n> nк
.
При nк
= 150,- fm
к
= 0.7348.
Анализ зависимостей VG
к
= f(n), fm
к
= f(n).
При различных значениях коэффициент обслуживания r показывает, что для технических объектов уменьшение r приводит к возможности увеличения количества обслуживаемых объектов, так и к росту коэффициента готовности.
Надежность резервных вычислительных систем. Резервирование в ЭВМ и ВС
Резервирование –
это способ повышения надежности, представляющий замену отказавших частей аппаратуры резервными, при условии, что резервированная аппаратура входит конструктивно и функционально в состав рассматриваемой аппаратуры. Включение резерв м.б. функционально связано с основной аппаратурой т.об., что специального включения не требуется.
Резервирование на уровне ЭВМ
заключается в наличие большого числа однотипных ЭВМ чаем необходимо для решения поставленной задачи. В данном случае надежность системы оценивается как надежность системы со скользящим резервом. В случае универсальных ЭВМ используют производительность все имеющихся ЭВМ. В этом случае свойство системы удобнее характеризовать через эффективную производительность системы:
где n – число ЭВМ
Пi
ki
– производительность и коэффициент готовности i-той ЭВМ.
Если отдельные ЭВМ объединены через каналы связи, адаптеры, общее поле памяти или другими способами, образуя многомашинную ВС, эффективная производительность:
m– количество состояний системы
pj
– вероятность того, что система находится в j-ом состоянии
Пj
– производительность системы в j-ом состоянии
pj
определяют методом Марковских цепей. Во многих случаях важно чтобы ЭВМ, входящие в систему сетевой организации, сохраняли связи между собой, поскольку конфигурация сетей м.б. самой различной. Для оценки вероятности сохранения связности системы применяются методы расчета надежности систем со сложной структурой, например метод min-ых путей и min-ых сечений.
Резервирование на уровне устройств
На более низких уровнях иерархии структуры в универсальных ЭВМ резервирование на уровне периферийных устройств (ПУ), к.т. ПУ м.б. полностью использованы для ввода, вывода, запоминания большого количества информации. При небольшом количестве информации можно пользоваться одним ПУ. Достаточность ПУ с учетом возможных отказов целесообразно оценить через эффективную производительность.
Если речь идет о получении показателя готовности системы, то надежность ПУ д.б. выражена через показатели надежности. В данном случае следует допустить, что для решения задачи требуется некоторое min-ое количество ПУ, а остальные ПУ являются скользящим резервом.
Резервирование на уровне кодов
В ЭВМ нашли широкое применение коды с обнаружением и исправлением ошибок, для повышения надежности ОЗУ и ВЗУ. Применение таких кодов дает возможность исправлять определенное число ошибок в каналах передачи данных или восстанавливать информацию в случае отказа некоторых ячеек ВЗУ или дорожек (усилителей, записей и считывания) в накопителях на магнитных дисках. Надежность систем оценивается как надежность резервированных систем со скользящим резервом.
Резервирование в специализированных и управляющих ЭВМ
В специализированных и управляющих ЭВМ резервирование применяется значительно шире в связи с высокими требованиями, предъявляемыми к таким системам. Встречаются системы, где используется несколько резервных ЭВМ. В целях повышения надежности часть из них может работать в режиме нагруженного резерва, а честь – ненагруженного. Однако резервирование на уровне ЭВМ не самое экономичное. Для повышения надежности используется резервирование отдельных устройств ЭВМ: троированием или применение одного из нескольких нагруженных и или ненагруженных резервов. Для повышения надежности самых ответственных узлов применяется троирование или логика с переплетением.
Все рассмотренные методы резервирования в ВС относятся к пассивному резервированию, т.к. не предусматривают реконфигурацию системы.
Описание резервных систем
Резервная система м.б. проста и наглядно представлена в виде связного графа (графа - надежности). Где вершины соответствуют подсистемам, а дуги – соединением между ними. Принимается, что отказ i-ой подсистемы соответствует обрыву i-ого ребра графа. Отказ системы- это потеря связности между двумя выделенными вершинами графа (полюсами).
|
Если считать что дуги 1-7 соответствуют к-л обрабатывающим, запоминающим или коммутирующим устройствам, осуществляющим обработку и передачу информации из А в В, для работы такой системы достаточно наличие одного пути передачи и обработки, то данный граф является графом надежности системы.
Надежность резервированных ВС с последовательно-параллельной структурой при нагруженном резерве.
Определение вероятности безотказной работы
Для последовательно включенных элементов, отказы которых являются независимыми случайными событиями, то по аксиоме умножения вероятностей, вероятность безотказной работы запишется:
(1)
где Рi – это вероятность безотказной работы i-от подсистемы.
Для параллельно включенных элементов при таких же условиях вероятность:
(2)
где Рj – это вероятность безотказной работы j-от подсистемы.
(2) основано на том, что вероятность отказа системы с параллельной структурой сводится как произведение вероятностей отказа элементов.
Вероятность безотказной работы системы с последовательно-параллельной структурой наиболее удобно выразить постепенным упрощением ее схемы.
а)
б)
в)
г)
Заменим сначала параллельную подсистему 2 и 3 подсистемой 23 (рис б), тогда вероятность безотказной работы подсистемы 23 запишется Р23
= 1 – (1 - Р2
)(1 - Р3
).
Затем заменим последовательные подсистемы 1 и 23 и подсистемы 4 и 5, подсистемами 123 и 45: Р123
= Р2
.
Р23
, Р45
= Р4
.
Р5
… Р12345
= 1 – (1 – Р123
)(1 – Р45
), что соответствует вероятности безотказной работы системы.
Определение средней наработки на отказ
Рассмотрим случай, когда имеется система, состоящая из последовательно-параллельных нагруженных подсистем. Допустим, что отказы подсистем независимы и распределены по экспоненциальной модели с одинаковым параметром l. Тогда, подставляя вероятность безотказной работы системы, получим:
выражение для среднего времени безотказной работы
Надежность резервированных ВС с последовательно-параллельной структурой при ненагруженном резерве.
Допущение: ИО резервированной подсистемы lрезер
= 0. Допущение обосновано для механических, электрических объектов, встречающихся в ВС, которые в режиме ненагруженного резерва практически не отказывают. Методы анализа надежности резервированных систем с ненагруженным резервом основаны на сложении интервалов времени от включения до отказа основного и резервных элементов системы. Время безотказной работы системы это tC
состоящей из основной подсистемы и n-1 резервных подсистем запишется:
где ti
– время до отказа i-от подсистемы.
Анализ надежности усложняется когда ti
– СВ и необходимо найти функцию плотности распределения суммы случайных величин, т.е. решить задачу композиции функций в ПР слагаемых. В случае, когда поток отказов подсистем является пуассоновским, вероятность P(t,k) того, что за t возникает k отказов выражается по формуле Пуассона:
Сравнивая между собой методы резервирования с нагруженным и ненагруженным резервом можно сделать вывод, сто при прочих равных условиях, система с ненагруженным резервом надежнее. Однако при сравнении методов необходимо учитывать, что ненагруженный резерв в виде процессора или ЭВМ, в отличие от нагруженного требует некоторого дополнительного времени для загрузки в него необходимых данных. Кроме того, во многих случаях важно сохранять промежуточные результаты. В таких случаях часто применяют комбинированное резервирование, т.е. первая резервная подсистема работает в режиме нагруженного резерва, полностью дублируя информацию, а остальные резервные подсистемы ненагружены. В случае отказа основной системы или нагруженного резерва, включается один из ненагруженных резервов вместо отказавшего.
Надежность ВС со сложной структурой резервирования
Встречаются структуры, когда резервирование имеет место, но его нельзя представить по последовательной или параллельной схеме, наиболее часто встречается скользящее резервирование, когда число резервов подсистем и число однотипных подсистем больше чем требуется для выполнения поставленной задачи,, причем каждая резервная подсистема может замещать отказавшую.
Пусть в системе имеется nосновных подсистем и mрезервных. Тогда вероятность безотказной работы системы:
р – вероятность безотказной работы подсистемы
С – число сочетаний
Рассмотрим два приближенных метода расчета таких систем: метод минимальных путей и метод минимальных сечений
. Эти методы являются приближенными. Позволяют оценить действительное значение вероятности безотказной работы снизу и сверху.
Для формального описания введем логическую функцию F(x). Где логический вектор x = {x1
,…xn
} характеризует работоспособность элементов системы. Если xi
= 1, то i-ый элемент (подсистема) – работоспособен, если xi
= 0, то – неработоспособен. F(x) = 1, тогда система работоспособна. Определим в принятых обозначениях понятия минимальный путь и минимальное сечение.
Если F(x) = 1 и F(y) = 0 при любых y<x, то x = a - это и есть минимальный путь. Т.е. j-ый минимальный путь состоит из локально-минимальной совокупности Mj
подсистем, необходимой для обеспечения безотказной работы системы, независимо от состояния остальных подсистем. В структуре системы имеется несколько минимальных путей. Характерным признаком минимального пути является то, что отказ хотя бы одной подсистемы пути влечет за собой отказ системы.
Для графа (стр. 13) укажем следующие минимальные пути: 12, 147, 1367, 567, 532, 5347, 5642.
Если F(x) = 0 и F(y) = 1 при любых y>x, то x = b - это минимальное сечение. Т.к. k-ое минимальное сечение состоит из минимальной совокупности подсистем Nk
, одновременный отказ которых влечет за собой отказ системы, независимо от состояния отдельных подсистем. Характерной особенностью минимального сечения является то, что восстановление хотя бы одной подсистемы в минимальном сечении (при условии, что остальные подсистемы работают) влечет за собой восстановление системы. Минимальное сечение это: 15, 136, 1347, 5342, 246, 27.
РС
оценивается по двойному неравенству рН
рС
рВ
.
рН
выражается как вероятность безотказной работы вспомогательной системы, составленной из последовательно включенных групп подсистем. Каждая группа состоит из параллельно включенных подсистем соответствующего минимального сечения.
рВ
выражается как вероятность безотказной работы вспомогательной системы, составленной из параллельно включенных групп подсистем, соответствующим всем минимальным путям системы. Каждая группа состоит из последовательно включенных подсистем соответствующего минимального пути.
Примеры.
Рассмотрим ВС состоящую из устройств памяти y1 и y2, процессоров П7 и П8 и устройств сопряжения С3 – С5. Рисунок в тетради.
Необходимо оценить вероятность безотказной работы системы. Допустим, что условием работоспособности системы является наличие хотя бы одного работающего устройства памяти, хотя бы одного работающего процессора и связи м/ ними через устройство сопряжения. Отказы подсистем являются отказами типа отключения, например отказ y1 не препятствует работе остальной части системы.
Изобразим систему в виде:
графа системы
вспомогательного графа:
Определим минимальные сечения: 12, 78, 145, 236, 348, 567, 1468, 2467, 3456.
Минимальные пути: 137, 168, 247, 258, 13458, 16547, 24368, 25637,
Пусть вероятность отказа 2-ух устройств в памяти qУ
соответственно 4-ех устройств сопряжения qС
равны м/ собой, тогда
рН
= (1-qУ
2
).
(1-qП
2
).
(1-qС
2.
qП
)2.
(1-qС
2.
qУ
)2.
(1-qУ
.
qС
2.
qП
)2.
(1-qС
4
)
обозначим вероятности безотказной работы устройств памяти через рУ
= 1-qУ
, устройств сопряжения рС
= 1-qС
, процессоров рП
= 1-qП
, тогда
рВ
= 1 - (1- рУ
.
рС
3.
рП
)4.
(1- рУ
.
рС
.
рП
)4
.
Вспомогательный граф системы для определения рВ
.
Применение сложных структур резервирования. Метод избыточного кодирования с обнаружением и исправлением ошибок
Общая структура системы, в которой надежность обеспечивается данным методом включает: кодирующее устройство на входе и декодирующее на выходе. Если информация об устройстве, надежность которого необходимо искажается, то при известных искажениях она м.б. восстановлена декодирующим устройством.
Эффективные коды для исправления ошибок разработаны для случая, когда информация не преобразуется данный метод применим для надежности тех устройств в ВС, которые не преобразуют информацию (устройства передачи и хранения)
-
вероятность безотказной работы
РКУ
, РДУ
- вероятности безотказной работы кодированного и декодированного устройства. d – max число ошибок в двоичном кодовом слове, которые м.б. исправлены декодированным устройством. р – вероятность отсутствия ошибок в элементе кодового слова. n – общее число элементов кодового слова.
Мажоритарное резервирование
Простейшая структура устройства преобразования информации с мажоритарным органом:
1,2…n – одинаковые устройства преобразования информации, работающие //-о.
Если из-за отказа работы устройств наблюдается расхождение м/ выходами устройств, то мажоритарный орган М выдает тот вариант информации, который наблюдается на большинстве из выхода преобразователей x/y.
Вероятность безотказной работы системы:
РМЖ
, Р - вероятность безотказной работы мажоритарного органа и канала обработки информации. n – д.б. нечетным.
Для троированной системы (n=3) м. записать:
РМ3
= РМЖ
(3р2
– 2р2
)
n=5: РМ53
= РМЖ
(10р3
– 15р4
+ 6р5
)
Приведенная схема не позволяет достичь вероятность безотказной работы системы >, чем РМЖ
. Данный недостаток устранен в мультиплексной схеме:
Здесь мажоритарные органы также резервируются. Первоначальный канал обработки информации разбивается на последовательные участки (слои).
Исправление ошибки, связанной с неисправностью мажоритарного органа происходит через слой резервированных подсистем.
N– число слоев схемы. Р – вероятность безотказной работы схемы в пределах од
Встречаются системы с голосованием и реконфигурацией, где после отказа одного устройства из трех, система переходит на работу с одним устройством из оставшихся двух.
- интенсивность отказа одного канала.
Данная формула справедлива при экспоненциальной модели надежности каналов и при пренебрежении ненадежностью аппаратуры для переключателя.
Расчет надежности ВС-ем и надежность нерезервированных восстанавливаемых систем
При оценки надежности восстанавливаемых ВС большое значение им t восстановления. Надежность таких систем м. оценить рассматривая последовательность отказов-восстановлений. В простейшем случае, когда показатель надежности – параметр потока отказов, временем восстановления пренебрегают. Здесь процесс представляется как последовательность однородных случайных событий отказов – восстановлений.
Им. интерес выявления связей м/ функцией плотности распределения до отказа f(t) и параметром потока отказов w(t).
w(t) выражает среднее количество отказов одного объекта в единицу времени, в условиях восстановления.
f(t) выражает среднее количество отказов в единицу времени в условиях когда восстановление не производится w(t) м.б. выражена бесконечным рядом:
w(t) = f(t) + f(t)*f1
(t) + f(t)*f1
(t)*f2
(t) + … (1)
* - композиция двух функций плотности, т.е. операцию, заключающуюся в нахождении функции плотности распределения суммы 2-х независимых СВ по заданным функциям плотности распределения последних.
fi
(t) – плотность распределения от i-ого восстановления до следующего отказа.
Т.о. I слагаемое – это плотность распределения времени до I отказа. II – до II отказа и т.д.
Операцию * удобно осуществлять в области изображений функций плотностей по Лапласу, т.к. изображение функции плотности суммы СВ = произведению изображений плотностей слагаемых.
Тогда м. переписать формулу:
w*(S) = f*(S) + f*(S )f1
*(S) + f*(S)f1
*(S)f2
*(S) + … (2)
* - изображение соответствующей функции по Лапласу, как функции от оператора S
Полное восстановление означает, что f1
(t) = f2
(t) = … = f(t).
Аналогичное выражение справедливо и для изображений функции:
w*(S) = f*(S) + f*2
(S )f*3
(S) + … = f*(S)(1 + f*(S) + f*2
(S) + …) (3)
Известно, что |f*(S)|<1. Применив формулу суммы бесконечно убывающей геометрической прогрессии получим:
w*(S) = f*(S)/[1 – f*(S)] (4)
В случае, когда известен w(t) в режиме работы с восстановлением и требуется определить функцию плотности распределения времени до отказа м.б. применена обратная зависимость:
f*(S) = w*(S)/[1 +w*(S)] (5)
Пример:
определение параметров потока отказов w(t).
Пусть f(t) = le-
l
t
. Учитывая (4) f*(S) = l/(l + S)
w*(S) = f*(S)/(1 - f*(S)) = l/(l + S)/[1 - l/(l + S)] = l/S
w(t) = l
В случае, когда потери времени восстановления имеют существенное значение для оценки качества эксплуатации аппаратуры, как показатель надежности используется коэффициент готовности.
Вер – вероятность выполнения условия в скобках.
Отсюда, при допущении, что восстановление полное, т.е. надежностные свойства объекта после восстановления не меняются, м.б. получено операторное выражение:
(6)
Пример:
определение коэффициента готовности. Пусть имеется объект, для которого:
j0
(t) = le -
l
t
jB
(t) = me -
m
t
Тогда: j0
*(S) = l/(S + l) jB
*(S) = m/(S + m)
Оригинал
.
e–(
m
+
l
)
t
(7)
Функция коэффициента готовности:
Если считать, что среднее время восстановления =1ч, среднее время до отказа = 103
ч. m>>l
Тогда постоянная времени экспоненты Т = 1/(m+l)1/m =
Переходный процесс для данной задачи = 3-4 часа. Далее можно пользоваться установившемся коэффициентом готовности
КГ УСТ
= m/(m+l) (8)
Наде
жность резервируемых восстанавливаемых ВС
Наиболее подходящими методами для оценки надежности таких систем являются методы, основанные на теории Марковских процессов. Марковские процессы позволяют описывать последовательности отказов-восстановлений в системах, которые описываются при помощи графа состояний
(это направленный граф, вершины которого изображают отдельные состояния системы, а дуги – переходы из одного состояния в другое).
В задачах теории надежности каждой комбинации отказовых и работоспособных состояний соответствует 1 состояние системы. Число состояний системы: n = 2k
k – количество подсистем.
Чтобы уменьшить число рассматриваемых состояний в случае однородных подсистем, состояния с одинаковым количеством отказавших подсистем объединяются. Тогда общее число состояний системы: n1
= k + 1
определяемое как k отказовых состояний и еще 1 состояние, когда отказов нет.
Наиболее часто для расчета надежности применяется метод Марковских цепей с непрерывным временем, основанный на следующей систему диф. уравнений:
dP/dt = p(t)L (9)
где
Матрица интенсивностей переходов:
(10)
lij
– интенсивность перехода системы из i-го состояния в j-ое
рi
(t) – вероятность того, что система находится в i-ом состоянии
Часто встречается необходимость оценки надежности достаточно сложных резервных и восстанавливаемых систем, для которых метод Марковских цепей приводит к сложным расчетам из-за большого числа состояний системы.
Приближенный метод расчета надежности ВС
Рассмотрим метод расчета установившихся значений показателей надежности восстанавливаемых ВС. Метод основан на следующих допущениях:
1) время восстановления <<t безотказной работы
2) интенсивность отказов и интенсивность восстановлений постоянны
l = const m = const
3) отказы и восстановления отдельных подсистем – независимые случайные события.
Для последовательного соединения подсистем
(11)
(12)
(13)
Для параллельного соединения:
(14)
(15)
(16)
В формулах 11-16 приняты следующие обозначения:
l - интенсивность отказов последовательной (//-ой) группы из n(m) подсистем
КГ
– коэффициент готовности
m - интенсивность восстановления
li
, КГ
i
, mi
– соответствующие показатели отдельных подсистем
Если в системе применяется скользящее резервирование, то вместо (15):
(17)
r – минимально необходимое число работоспособных подсистем
КГП
– коэффициент готовности подсистемы
При скользящем резервировании все подсистемы однотипные. Интенсивность восстановления в случае скользящего резервирования определяется вместо (14) так:
m= (m – r + 1)mП
(18)
mП
– интенсивность восстановления подсистемы
В результате допущенных допущений интенсивность отказов численно равна параметру потока отказов.
Количественные характеристики надежности при постепенных отказах
Для аппаратуры, в которой имеют место постепенные отказы, обусловленные старением и износом, часто пользуются нормальным законом распределения. Т.к. время безотказной работы положительная величина, частота работы:
a(t) = C.
exp{-(t – T)2
/(2s 2
)} (1)
С – постоянная усеченного нормального распределения, которая определяется из нормирующего условия
Т и s 2
– среднее значение и среднее квадратичное отклонение (дисперсия)
Если s не велико по сравнению с Т, то можно пользоваться не усеченным нормальным распределением при
Тогда за время t исходное выражение количественного определения отказа элемента запишется:
g(t) = e–(
t
–
T
)
2
/(
2s2
)
dt (2)
Математическое ожидание времени исправной работы среднему времени исправной работы элемента и определяется экспериментально по результатам испытания партии или элементов.
(3)
tk
– время работы k-ого элемента до выхода из строя
n – число испытываемых элементов
Вместо Т м.б. выбран любой контролируемый параметр
(4)
- дисперсия значений времени исправной работы различных элементов в испытуемой партии.
Если сделать замену
x = (t – T)/ s, то
g(x) =0,5 + e–
x
2
/
2
dx = 0,5 + Ф(x) (5)
где I член представляет половину площади ограниченной кривой Гауса, II член – интеграл времени.
Если выражение (1) нормировано относительно
x = (t – T)/ s, то
g(x) = 0,5 – Ф(x) (6)
Вероятность исправной работы элементов, подверженных постепенным отказам м.б. записана следующим образом:
P(t) = (7)
n – число подгрупп с однотипными элементами.
Параметры надежности при хранении систем
Отказы аппаратуры и входящих в нее элементов наблюдаются не только в процессе работы, но и при хранении, - введем параметр, характеризующий надежность системы при хранении:
Сохраняемость a(t) - вероятность того, что системы сохраняет работоспособность в течении заданного срока хранения; в определенных условиях a(t) является аналогом вероятности безотказной работы при хранении.
a(t) характеризует те же параметры, что и вероятность безотказной работы:
lХР
– интенсивность отказов.
ТХР
– средняя наработка на отказ при хранении.
lХР
= 1/ТХР
Она = математическому ожиданию времени м/ 2-мя последующими отказами
a(t) = е–
lХР
t
ТХР
=
Контроль в ЭВМ
Контроль в ЭВМ – процессы, обеспечивающие обнаружение ошибок в работе ЭВМ, которые вызваны отказом или сбоем аппаратуры, ошибкой оператора, ошибкой в программе или другими причинами. Контроль необходимо организовывать так, чтобы по возможности контролировались все функции проверяемого объекта. Степень диагностирования определяется полнотой контроля. Количественно полнота контроля оценивается отношением, показывающим относительное число элементов системы, охваченных данным способом контроля. В отдельных случаях целесообразно оценивать полноту контроля как относительное число отказов, которые обнаруживаются данным способом контроля к общему числу отказов.
По признаку применяемых средств контроль в ЭВМ разделяется на:
1) аппаратурный
2) программный
3) смешанный
(1) отличается большим быстродействием, но требует дополнительных аппаратных средств.
(2) Дополнительных аппаратных средств не требует, кроме некоторого дополнительного объема памяти для размещения программного контроля. «-» связан с некоторым расходом дополнительно процессорного времени для выполнения контроля.
Целесообразно сочетать (1) и (2) средства контроля.
По характеру контроля в ЭВМ делят на:
а) оперативный
б) тестовый
(а) осуществляется в ходе решения эксплуатационных задач и позволяет в процессе их решения немедленно обнаруживать ошибку в ходе ее работы. (а) является не полным, т.к.выполняется для случайных неприспособленных для решения контроля задач.
(б) осуществляется в специально отведенные промежутки времени на основе решения спец тестовых задач, он основан на тестах, которые обеспечивают полный контроль всех элементов объекта за минимальное время.
«-»(б): потеря дополнительного процессорного времени
«+»(б): при тестовом контроле упрощается анализ результатов; обеспечивается полнота контроля.
(б) непригоден для обнаружения сбоев аппаратуры в процессе ее эксплуатации.
(б) имеет место тогда, когда результаты тестирования нужны для оценки частоты сбоев в исследуемой аппаратуре.
По способу организации различают контроль:
1) прямой
2) обратный
3) смешанный
При (1) основной вычислительный процесс , с исходными данными x и результатами y, сопровождается //-ым вычислительным процессом П.
В случае безотказной работы результаты процессов О и П д. совпадать, что определяется устройством сравнения М2. В случае, когда результаты не совпадают М2 выдает сигнал об ошибке н.
Метод позволяет выявлять только сбои и отказы аппаратуры: если процессы О и П осуществляются по одной и той же программе; если они осуществляются по разным, но функционально эквивалентным программам (1) позволяет выявлять ошибки в программах.
«-»(1): - большая трата аппаратных средств; - она м.б. , если О и П выполняются последовательно на одной и той же аппаратуре. Здесь контроль б. выявлять только сбои, а не отказы аппаратуры; - за счет точности.
Для некоторых задач, которые характеризуются взаимно однозначным соответствием м/ исходными данными и результатом, эффективнее применять (2).
При (2) //-ый процесс П1
, с исходными данными y и результатом x, осуществляет обратное преобразование результата контролируемого процесса О.
«-»(2): кроме ограниченности класса решаемых задач и в том, что время, затраченное на получение контролируемого решения, даже в случае применения дополнительной аппаратуры будет не ниже суммарного времени выполнения процессов О и П.
В отдельных случаях целесообразно применять смешанный контроль
При (3) исходные данные x и результаты y основного вычислительного процесса подвергаются преобразованиям П2
и П3
, которые в случае безотказной работы дают сопоставимые результаты.
Все методы контроля имеют свои недостатки, используются комбинации.
Надежность системы с учетом влияния контролирующих устройств
Надежность систем с контролем зависит от достоверности контроля. Она м.б. оценена через вероятности ошибок контроля, которые м.б. Iи II рода.
Iрода: отклонение правильной гипотезы
II рода: принятие ложной гипотезы
Пусть F – наличие неисправностей в контролируемом объекте
- отсутствие неисправностей
D – сигнал о наличие неисправности
- отсутствие сигнала
Имеется 4 сложных события:
Эти события образуют полную группу событий, их вероятности удовлетворяют условию: Р(DF) + Р(D) + Р(F) + Р() = 1
Т.о. любая из 4 вероятностей м.б. найдена при условии, что 3 остальных известны. Вероятности событий м.б. оценены следующим образом: рассматривая множество состояний 6 контролируемого объекта, предполагая, что контролирующее устройство находится в исправном состоянии, можно 6 разбить на 4 подмножества GDF
, GD
, GF
, G.
Т.к. все события несовместимы по правилу сложения вероятностей имеем:
pX
– вероятность состояния x контролируемого объекта. Оно определяется множеством отказов, которые произошли в данном объекте. Допустим, что эти отказы произойдут независимо друг от друга по правилу умножения вероятностей:
pX
= Пpi
П(1 – lj
) iНX
, jНX
pi
– вероятность того, что в объекте произошел i-ый отказ
НX
– множество номеров отказов, соответствующих состоянию x объекта
Надежность ПО (программного обеспечения)
- м.б. определена как свойство программы, которое выражается в выполнении заданных функций в заданных условиях и на заданной вычислительной машине. Отказ ПО обусловлен несоответствием ПО поставленным задачам. Несоответствие может возникнуть по 2 причинам:
1. разработчиком нарушена спецификация
2. спецификация является неточной
Т.к. не всегда возможно составить точную спецификацию, предполагается классифицировать программы по степени точности:
1) программы, функции которых полностью определяются спецификацией
2) программы, функции которых характеризуются сопоставлением вычислительных и измеренных результатов: моделирующие программы (реализуют математическую модель физического объекта)
3) программы, действующие в постоянно изменяющейся среде (ОС-ы)
Теория надежности аппаратуры частично применима к проблеме надежности ПО. Учитывая следующие различия м/ надежностью аппаратуры и ПО:
– элементы ПО не стареют из-за износа или усталости
– для контроля ПО имеется намного больше способов, чем для аппаратуры
– в ПО имеется на много больше объектов для контроля
– в аппаратуре исполнение стандартных элементов распространено намного шире, чем в системе ПО
– количество документации на ПО >> количества документации на аппаратуру.
Классификация ошибок программирования
Ошибки программ м.б. разделены на ошибки, обусловленные ограниченными возможностями программы и на логические ошибки. Наиболее часто встречающиеся делятся на:
1) ошибки в числовых значениях
2) недостаточные требования к точности
3) ошибочные символы (знаки)
4) ошибки оформления
5) основы разработки программ неполные или неточные
6) двусмысленность требования
Способы обеспечения и надежности программ
1. усовершенствование технологии программирования
2. выбор алгоритмов, нечувствительных к различного рода нарушениям вычислительного процесса
3. резервирование программ:
- инверсионное программирование
- дуальное программирование
и другие методы введения структурной избыточности
4. контроль и тестирование программ с последующей коррекцией
Выбор алгоритмов, нечувствительных к нарушениям вычислительного процесса, основан на исследовании их чувствительности. Мерой чувствительности являются погрешности, вызванные вышеназванными нарушениями.
Результаты вычислений могут искажаться погрешностями:
- исходных данных
- округлением
- методическими программами
- обусловленными отказами, сбоями и ошибками в программе
Модели надежности ПО
Модель Шумана.
Основана на следующих допущениях:
· общее число команд в программе на машинном языке постоянно
· в начале компоновочных испытаний число ошибок = некоторой постоянной величине и по мере не исправления ошибок их становится меньше
· в ходе испытания программы новые ошибки не вносятся
· ошибки изначально различимы. По суммарному числу исправленных ошибок можно судить об оставшихся
· интенсивность отказов программы числу оставшихся ошибок
На основе данных допущений получим:
er
(x) = e(0) – ec
(x) (1)
x – продолжительность отладки программы
e(0) – отношение числа ошибок Е0
, имеющихся в программе в момент времени x = 0 к общему числу команд на машинном языке I.
e(0) = Е0
/I
ec
(x) – число остаточных ошибок в момент времени x, отнесенное к общему числу команд I.
lS
(t) = kS
.
er
(x) (2)
t – время работы системы
kS
– коэффициент пропорциональности
lS
(t) – интенсивность отказов в течении интервала времени t
Определив l программы (частоту появления ошибок) найдем выражение для вероятности безотказной работы
P(t) = exp[–lS
(t)dx] = exp[–kS
.
er
(x)dx] (3)
Т.к. в данной модели частота появления ошибок считается независимой от t, она принимается постоянной, среднее время безотказной работы программы =:
Т0
= 1/lS
(t) = 1/(kS
.
er
(x)) (4)
Оценивание параметров модели:
Подставляя (1) в (4) получим следующее выражение для среднего времени безотказной работы:
Т0
= (5)
(5) содержит 2 неизвестных параметра: kS
- коэффициент пропорциональности и Е0
, которые можно оценить, используя метод согласования моментов.
Если рассматривать 2 периода отладки программы x1
и x2
такие, что x1
< x2
, получаем:
(6)
(7)
Т1
, Т2
– продолжительности работы системы, которые соответствуют x1
и x2
n1
и n2
– число ошибок в ПО, обнаруженных в период времени x1
x2
Из (6) и (7)
Е0
= (8)
где
Т0
i
– среднее время безотказной работы, соответствующее периоду отладки xi
Т0
i
= Тi
/ni
Подставляя (8) в (6), имеем:
КS
= (9)
Марковская модель.
Основана на допущении: система проходит через последовательность «исправных» (Up) и неисправных (down) состояний. Состояние называется исправным, если после начала компоновки и тестирования программы, ошибка еще не появилась или уже исправлена, а следовательно ошибка еще не появилась.
Диаграмма состояний:
Запишем д.у. состояния для этой системы:
n
–
k
(t)= –lk
Pn
–
k
(t)+mk
–1
Nm
–
k
+1
(t) (10)
m
–
k
(t) = –mk
Pm
–
k
(t)+lk
Pn
–
k
(t) (11)
Pm
–
k
(0) = 0 k = 1, 2… (12)
Pn
(0) = 1 (13)
Решение уравнений (10) и (11) можно получить используя любой из методов численного интегрирования.
После того как будут получены вероятности всех состояний, неготовность системы определится с помощью формулы:
U(t) = Pm
–
k
(t)(14)
Т.к. вероятности зависят от kMAX
, то при больших значениях kMAX
можно получить величину U(t) близкую к истинной.
Модель Елинского-Моранды.
данная модуль как и Шумана основана на допущении об экспоненциальном распределении времени безотказной работы ПО. Предполагается, что частота появления ошибок ~ числу остаточных ошибок:
lУМ
(xi
) = KУМ
[E0
– (i – 1)] (15)
KУМ
– коэффициент пропорциональности
xi
– интервал времени м/ i и u(i-1) ошибкой
С помощью (15) можно найти вероятность безотказной работы:
P(ti
) = exp[–KУМ
(E0
– i + 1)ti
] (16)
Среднее время безотказной работы:
Т0
=P(ti
)dti
= (17)
Модель Шика-Волвертона.
Основа модели – положение о том, что интенсивность появления ошибок ~ не только количеству оставшихся в программе ошибок, но и времени, потраченному на отладку.
"–" рассмотренных моделей:
- при неточном определении первоначального числа ошибок в программе, интенсивность отказов делается отрицательной;
- здесь предполагается, что после обнаружения ошибка ликвидируется и не вносятся новые ошибки.
В целях преодоления "–" была предложена модель, основанная на допущениях о том, что поток возникновения ситуаций, в которых возможен отказ, является Пуассоновским с параметром l. Однако, по мере обнаружения и исправления ошибок, отказы в этих ситуациях возникают с вероятностью <1. Другими словами, этот поток отказов представляется в виде разреженного потока, с переменным коэффициентом разряжения pi
, i – номер отказа.
В простейшем случае:
pi
= 1 – (1 – pН
)qi
–1
(18)
где 0<q<1
pН
= p1
– начальный коэффициент разряжения потока.
Данная модель подходит не только для прогнозирования интенсивности следующего отказа, но и для прогнозирования параметра потока отказов.
Из (18) , что изображение параметра потока по Лапласу:
w*(S) = (19)
Приближенное значение оригинала:
w(t) = (1–p1
)l– ((1–p1
)l)2
(1–q)t + ((1–p1
)l)3
(1–q)(1–q2
)t2
/2!–...–(–1)n
.
((1–p1
)l)n
+1
(1–q) ––…(1–qn
)tn
/n!
с погрешностью не более:
Dw(t) = (–1)n
+1
((1–p)l)n
+2
(1–q)…(1–qn
+1
En
+1
)/(n+1)! (20)
Приведенные модели представляют интерес прежде всего для прогнозирования отказов в процессе эксплуатации и отладки. Здесь значение параметров определяется в рабочем режиме.
Метод введения структурной избыточности в программе
Т.к. надежность программ, которая м.б. достигнута технологическими методами, ограничена, вызвана необходимость надежности программ за счет времени резервирования.
Для этого готовятся 2 или несколько версий программ для решения одной задачи. Желательно, чтобы версии имели существенные различия, т.е. основываться на различных алгоритмах или хотя бы д.б. выполнены различными программами.
ошибки м.б. обнаружены по расхождению результатов, которые получены при одних и тах же исходных данных по различным версиям программ. Эти ошибки м.б. обнаружены в ходе отладки версий или при сравнении результатов.
Существует идея //-го (одновременного) или последовательного во времени выполнения различных версий программ непосредственно в процессе эксплуатации. Если таких версий 2, то принято говорить о дуальном программировании.
Если обнаружено расхождение в результатах, необходимо определить по к-л дополнительным критериям, какой из результатов правильный.
при n-версионном программировании подготавливается n версий программ, и правильный результат определяется по мажоритарному признаку при помощи подходящих аппаратных или программных средств.
Дуальное и n-версионное программирование целесообразно использовать в том случае, если имеет место нагруженное резервирование вычислительной аппаратуры.
Модифиционное дуальное программирование на ряду с достаточно точной, но сложной основной программой, использует менее точную, но простую резервную программу. Если при одинаковых исходных данных результаты отличаются на величину > допустимой, делается предположение о том, что отказала основная программа. В качестве правильного результата принимается результат, полученный при помощи резервной программы.
средняя погрешность работы 2-ух программ несколько , но зато вероятность отказа .
Обозначим погрешность I программы d1
, а II – d2
. Пусть вероятность отказа I программы – q1
, II– q2
. При независимости этих программ возможны следующие несовместные события:
1) обе программы работают безотказно
p = 1 – q1
– q2
+q1
q2
2) откажет основная программа, тогда:
q01
= q1
(1 – q2
) = q1
– q1
q2
3) отказ резервной программы
q10
= q2
(1 – q1
) = q2
– q1
q2
4) откажут основная и резервная программы
q11
= q22
(погрешность d3
)
Следовательно, средняя погрешность не отказавшей системы из 2-х программ:
В случае, когда имеется только основная программа: погрешность d1
вероятность отказа q1
Метод контрольных функций
Наряду с вычислительной функцией по иной программе определяется некоторая функция, которая находится с основной, в некоторых соотношениях, которые называются контрольными
соотношениями.
Простейшим примером применения контрольных соотношений является вычисление функций sinxи cosx по отдельным соотношениям.
Структурные методы тестирования программ
Тестирование
– проверка работы программы по результатам ее выполнения на специально подобранных наборах исходных данных или тестах.
Существуют следующие методы тестирования:
1. полное
2. выборочное
3. структурное выборочное
(3) основывается на разделении пространства исходных данных на классы. Каждый класс позволяет подтвердить определенный свойства или работоспособность отдельных элементов структуры программы.
Здесь основная задача: построение генератора тестовых наборов.
Исходя из тестируемой программы Т выбирается набор путей П в структуре программы, который удовлетворяет критериям К (критерий тестирования). Наиболее часто К основываются на структуре программы.
Достаточно простое требование может заключаться в том, что выбранные пути должны перекрывать (задействовать) все операторы или команды программы. Затем генерируются ограничения О, которые позволяют реализовать тот или иной путь на графе программы.
О преобразуются модулем ПВ в ограничения к исходным данным. Тогда с помощью алгоритма А генерируются тестовые наборы числовых значений исходных данных ТН, которые удовлетворяют отдельным ограничениям.
Структура генератора тестов:
Критерии выбора путей на структуре программы состоит в том, что все операторы должны перекрываться хотя бы один раз.
Здесь, тестирующиеся команды расположены по порядку их следования в программе. Такое тестирование называется статическим
. При этом тестируются не все возможные пути на графе программы и ошибки управления программой могут оставаться необнаруженными.
ТЕСТИРОВАНИЕ ВЕТВЕЙ.
Заключается в том, что выбранные пути должны перекрывать все ветви структуры программы и все разветвления (динамическое тестирование).
Данный подход гарантирует однократное тестирование всех ветвей. Значит число ошибок возникает из-за неточностей при формулировке условий выхода из циклов предполагается вводить дополнительное требование, чтобы каждый цикл испытывался двумя тестами:
1) привел бы к исполнению цикла с возвратом
2) проходил бы цикл без возврата.
ВЕРТИФИКАЦИЯ ПРОГРАММ:
- это доказательство их правильности при помощи математических методов доказательства теорем. Для этого программа представляется в виде последовательности ряда более или менее простых утверждений, доказательство которых не представляет труда.
СИМВОЛИЧЕСКОЕ ТЕСТИРОВАНИЕ
В отличие от верификации, тестирование заключается в проверке правильности числовых результатов работы. Программы при специально подобранных значениях входных переменных (тестовых наборов).
В некоторых случаях тестирование может производится символически: выполнение процедур, которые основаны на символических входах (обозначение входных переменных, позволяющих выразить выходы программы также в символическом виде).
Для различных путей существуют различные входы и выходы.
«+» (символического тестирования предоставления числовым): если числовой текст позволяет проверить работу программы на отдельных числовых значениях входных наборов, то символическое тестирование оперирует множеством исходных данных, которые определены ограниченными.
Символическое выражение путей программы м.б. получены либо прямой подстановкой, либо обратной.
Прямая
соответствует действиям, проделываемым при реализации определенного пути в структуре программы. При этом, символическое исполнение осуществляется для каждого исполняемого оператора, с запаздыванием промежуточных символических выражений.
В случае обратной
: ограничения на входные переменные строятся снизу вверх при прохождении пути на графе программы в обратном направлении. В результате получаются такие же ограничения как и при прямой подстановке.
«+» обратной: не требуется память для запоминания символических записей переменных.
«+» прямой: имеется возможность раннего обнаружения несуществующих путей с противоречивыми ограничениями на входных данных.
При символическом тестировании определенную трудность предоставляют циклические участки программы, т.к. для данных участков число итераций неизвестно.
Наиболее часто проблема м.б. преодолена подстановкой некоторого заранее оцененного числа итераций. При этом полученные ограничения могут оказаться неточными.
Второе затруднение связано с наличием в программе модулей. Данная проблема преодолевается символическим исполнением модулей.
Третья проблема: работа с массивами.
Генерирование структурных тестов.
Названных выше недостатков лишено структурное тестирование. Генерирование тестов заключается в выборе множества путей, полностью перекрывающих граф программы и в определении тестовых данных, на которых эти пути выполняются.
Граф программы
(граф управления) – это структурная модель программы, которая показывает связь м/ ее элементами. Вершины – операторы разветвления и объединения; дуги – операторы обработки и передачи данных.
Граф представляется в виде упакованной матрицы смежности (УМС) А.
А = {aij
}
с v вершинами – есть матрица vl, l – max степень выхода i-ой вершины
dВХ
(vi
) – степень входа и dВЫХ
(vi
) – степень выхода некоторой вершины графа означает соответственно количество входящих и выходящих из вершины дуг.
Каждая строка i УМС заполняется в произвольном порядке номерами вершин, которые являются смежными с вершиной i.
Представление графов в виде УМС имеет следующие преимущества:
1) для больших графов число столбцов УМС значительно <, чем число столбцов соответствующей матрицы смежности.
2) относительно просто моделируется процесс движения по графу для построения путей.
3) снижается время обработки графов.
За критерий тестирования взят критерий ветвей, где под ветвью
программы понимается некоторая последовательность операторов, которые выполняются строго 1 за другим.
Для построения min покрытия граф разбивается на ДД пути с использованием УМС исходного графа.
Множество вершин, у которых степень выхода dВЫХ
(vi
)>1, вх и вых вершины обозначаются как Д вершины. Тогда путь ДД
– это простой путь м/ двумя Д вершинами, такой, что в его пределах нет Д вершин.
Затем определяют циклы, петли и из графа исключаются замыкающие их дуги.
Алгоритм построения min покрытия графа состоит из следующих этапов:
1) просматриваемая i-ая вершина фиксируется, определяется смежная вершина j-ая, номер которой является максимальным среди номеров смежных вершин.
i[1, N-1] N – количество вершин графа.
2) просматривается дуга vi
vj
. Если количество выходов dВЫХ
(vi
)>1, а dВХ
(vj
)>1, то дуга g(vi
,vj
) исключается.
3) Еслт количество dВЫХ
(vi
)=1, dВХ
(vj
)>1 и если на пути не имеется дуги типа g, то исключается рассматриваемая дуга типа h (дуга vi
vj
).
4) Подставляется i=j и повторяются этапы 1-3, пока j не станет = номеру конечной или выходной вершины. Пути фиксируются в виде последовательностей значений j.
5) Повторяя-ся 1-4 до тех пор, пока в построенном пути не останется дуг типа g и h.
Однако тестирование всех путей в структуре программы является нецелесообразным.
Компромиссным решением будет тестирование выборки путей, обеспечивающей испытания важнейших взаимодействий м/ частями программы.
На графе, описывающем программу, такие взаимодействия м.б. смоделированы путем введения пар вершин, которые должны взаимодействовать по крайней мере при одном тесте.
Функциональные методы тестирования программ.
Оглавление
Законы распределения случайной величины (СВ) и их события.1
Законы распределения, используемые в теории надежности.2
Показатели готовности аппаратуры.. 3
Прогнозирование показателей надежности. 3
Расчеты показателей надежности систем с последовательной структурой. 3
Расчеты показателей надежности систем с параллельной структурой. 3
Показатели надежности систем с комбинированной структурой. 3
Определение параметров готовности аппаратуры.. 3
Надежность резервных вычислительных систем. Резервирование в ЭВМ и ВС.. 3
Резервирование на уровне ЭВМ... 3
Резервирование на уровне устройств. 3
Резервирование на уровне кодов. 3
Резервирование в специализированных и управляющих ЭВМ... 3
Описание резервных систем.. 3
Надежность резервированных ВС с последовательно-параллельной структурой при нагруженном резерве.3
Определение вероятности безотказной работы.. 3
Определение средней наработки на отказ. 3
Надежность резервированных ВС с последовательно-параллельной структурой при ненагруженном резерве.3
Надежность ВС со сложной структурой резервирования. 3
Применение сложных структур резервирования. Метод избыточного кодирования с обнаружением и исправлением ошибок. 3
Мажоритарное резервирование. 3
Расчет надежности ВС-ем и надежность нерезервированных восстанавливаемых систем.. 3
Приближенный метод расчета надежности ВС.. 3
Количественные характеристики надежности при постепенных отказах. 3
Параметры надежности при хранении систем.. 3
Контроль в ЭВМ... 3
Надежность системы с учетом влияния контролирующих устройств. 3
Классификация ошибок программирования. 3
Способы обеспечения и
надежности программ.. 3
Модели надежности ПО.. 3
Модель Шумана.3
Марковская модель.3
Модель Елинского-Моранды.3
Модель Шика-Волвертона.3
Метод введения структурной избыточности в программе. 3
Метод контрольных функций. 3
Структурные методы тестирования программ.. 3
Генерирование структурных тестов.3