Повышение эффективности функционирования вычислительных систем на основе аналитических методов оценки влияния сбоев программного обеспечения тема диссертации и автореферата по ВАК РФ 05.13.01, кандидат физико-математических наук Ключников, Константин Константинович

  • Ключников, Константин Константинович
  • кандидат физико-математических науккандидат физико-математических наук
  • 2011, Москва
  • Специальность ВАК РФ05.13.01
  • Количество страниц 105
Ключников, Константин Константинович. Повышение эффективности функционирования вычислительных систем на основе аналитических методов оценки влияния сбоев программного обеспечения: дис. кандидат физико-математических наук: 05.13.01 - Системный анализ, управление и обработка информации (по отраслям). Москва. 2011. 105 с.

Оглавление диссертации кандидат физико-математических наук Ключников, Константин Константинович

Введение

1 Оценка времени работы программы с контрольными точками

1.1 Время работы программы при сбоях.

1.2 Метод контрольных точек.

1.3 Оптимальный выбор контрольной точки

1.4 Дополненная модель.

1.5 N контрольных точек.

1.6 Старение работы программы, моделируемое распределением Вейбулла.

2 Вероятностное распределение времени работы программы с контрольными точками

2.1 Модель с нулевым временем восстановления после сбоя

2.2 Модель с ненулевым временем восстановления после сбоя

3 Готовность веб-сервера с перезапуском

3.1 Величина готовности.

3.2 Оценка готовности веб-сервера.

3.2.1 Математическая модель оценки готовности веб-сервера без перезапуска.

3.2.2 Математическая модель оценки готовности веб-сервера с перезапуском.

3.2.3 Численные результаты.

Рекомендованный список диссертаций по специальности «Системный анализ, управление и обработка информации (по отраслям)», 05.13.01 шифр ВАК

Введение диссертации (часть автореферата) на тему «Повышение эффективности функционирования вычислительных систем на основе аналитических методов оценки влияния сбоев программного обеспечения»

Большинство вычислительных систем, используемых для технических, инженерных, коммерческих, научных целей, имеют сложную архитектуру. Множество компонентов и их взаимодействие зачастую приводит к тому, что ошибка, возникающая в работе одной из компонент, приводит к сбою1 всей системы. В исследованиях надежности вычислительных систем 80-х годов прошлого века говорится о том, что более 60% сбоев происходит по причине неполадок в оборудовании. Однако, уже в середине 90-х годов исследователи снизили эту долю до 10% и основное их внимание сфокусировалось на программном обеспечении, ошибки в котором являлись причинами сбоев как минимум в 70% случаев [8]. Обычной практикой предотвращения сбоев программного обеспечения (всюда далее ПО) является локализация ошибок в исходном коде ПО и их исправление. Разработчики прилагают огромные усилия к тестированию ПО, в ходе которого большинство ошибок локализуется и исправляется.

Тот класс ошибок в программе, которые приводят к сбоям в ее работе на заранее определенном наборе входных данных (который может быть априори неизвестным разработчику), в западной литературе получил название „ВоЬгЫ^в"2 [9]. Сбои, вызванные ошибками данного класса, имеют детерминированный характер возникновения. Детерминированность здесь означает то, что если на каком-то наборе входных данных произошел сбой ПО, то на этом же наборе он произойдет и в следующий раз. Для устранения ошибок данного класса разработчику в болыпин

1 Согласно ГОСТ 27.002-89, характерным примером сбоя служит остановка ЭВМ, устраняемая повторным пуском программы с места останова или ее перезапуском сначала.

2В честь создателя первой квантовой теории атома Нильса Бора. стве случаев достаточно лишь определить фрагменты программного кода, в котором содержатся эти ошибки.

Кроме детерминированных сбоев, в ПО также бывают сбои, чьё возникновение носит случайный характер. Более того, в большинстве случаев, если воспроизвести условия (входные данные, параметры настройки программы), при которых произошел этот сбой, то во второй раз его может не произойти. В западной литературе класс ошибок в ПО, по причине которых происходят случайные сбои получил название Не1зепЫ^83[10, 11]. Причиной возникновения случайных сбоев в ПО является определенный характер его взаимодействия с другими компонентами вычислительной системы: операционной системой, оборудованием, другими программами. В некоторых случаях взаимодействие ПО с перечисленными компонентами имеет случайный характер. Ниже приведены примеры ситуаций, в которых могут возникать случайные сбои4.

Пример 1. (неинициализированные переменные). Неинициализированной переменной является переменная, которая была объявлена в коде программы, но значение ей присвоено не было. Если разработчик ПО не инициализировал переменную, то ей присваивается некоторое значение, записанное в области памяти, аллоцированной под данную переменную. В большинстве случаев это есть значение, оставшееся после завершения работы некоторой другой программы. Присутствие в коде ПО большого количества неинициализированных переменных является ошибкой, которая способна привести к случайному сбою.

3В честь В. Гейзенберга, автора принципа неопределенности квантовой механики. В некоторых работах их именуют „Мапс1е1Ь1^з", в честь исследователя фракталов Б. Мандельброта.

4Одним из способов обнаружения случайных сбоев является периодический мониторинг состояния исполняемой программы.

Пример 2. (состояние гонки). Состояние гонки возникает в многозадачной системе, в которой процессы взаимодействуют с некоторым разделяемым ресурсом (например, разделяемой областью оперативной памяти). Процессы должны работать с разделяемым ресурсом по взаимоисключающему принципу, иначе этой может стать причиной случайного сбоя ПО. Одним из трагических примеров ее проявления является аппарат лучевой терапии ТЬегас-25, в котором из-за состояния гонки между управляющей программой и обработчиком клавиатуры случилось переоблучение, которое вызвало гибель четверых пациентов.

Локализация ошибок „ЬМвепЫ^э" усугубляется и тем, что сбои, произошедшие по их причине, случаются по истечении длительного времени [10]. Обычно, если исполняется фрагмент программы, содержащий ошибку класса „Не18епЬ1^8", то система ведет себя некоторым образом, отличным от того, что декларировано инструкцией и пользователь может этого не замечать. Дальнейшее исполнение программы может также перейти на фрагменты кода, содержащие ошибки, и в результате вызвать сбой. Такая функциональная цепочка от исполнения первого фрагмента программы, содержащего ошибку, до сбоя носит название распространение ошибки [10].

Таким образом, по причине длительного времени распространения ошибки, восстановить и повторить действия пользователя, по причине которых началось распространение ошибки, оказывается сложной задачей. Все попытки повторить последовательность лишь нескольких последних действий пользователя, приведших к сбою, к его повторному возникновению приводят не всегда.

Так как большинство ошибок исправляется на этапе тестирования

ПО, то разумно было бы предположить, что основное количество сбоев, выявленных на этапе эксплуатации ПО, имеют случайную природу. Тем не менее, в работах исследователей проблем надежности ПО данные о распределении количества сбоев на детерминированные и случайные различаются. Например, в работе [14] сказано, что случайный характер имеют 29% сбоев. В работе [13] был проведен анализ характера возникновения сбоев и их классификация и показано, что 9% всех сбоев ПО являются случайными.

По причине длительного времени распространение ошибки до момента сбоя, влиянию случайных сбоев в большей степени подвержены программы с длительным временем работы. Примерами таких программ являются приложения математического и статистического расчета и анализа, компьютерного моделирования, автоматизации инженерных расчетов. Данные программы (всюду далее аналитические программы), как правило, работают на выделенном сервере, к которому конечные пользователи имеют доступ через персональные компьютеры. Пользователь, имеющий доступ к серверу приложения, может запускать на нем аналитическую программу для решения возникшей задачи. Если случается сбой в работе аналитической программы, то возникает необходимость ее повторного запуска, и время работы программы до сбоя проходит безрезультатно. По этой причине сбои в работе аналитической программы могут существенно увеличить время ее работы.

Одной из распространенных архитектур вычислительных систем, на которых исполняются перечисленные выше аналитические программы, является многоуровневая архитектура5 (см. Рис.1). Помимо аналитической программы, на сервере приложения также работает веб-сервер, ко

5В простейшей конфигурации физически сервер приложений может быть совмещен с базой данных на одном компьютере, к которому по сети подключается один или несколько терминалов. торый предоставляет пользователям веб-интерфейс для работы с аналитической программой и осуществляет их авторизацию.

Рис. 1. Вычислительная система с многоуровневой архитектурой

Если рассматривать данную вычислительную систему в целом, то сбои в ее работе могут также происходить по причине неполадок в аппаратном обеспечении сервера и персональных компьютеров, ошибок в сетевых протоколах. Методы их предотвращения отличаются от тех, которые применяются для программного обеспечения, поэтому в диссертации не рассматриваются.

Поскольку случайные сбои происходят на этапе эксплуатации ПО, то возникает задача предотвратить их возникновение. В работе [15] был рассмотрен метод, суть которого состоит в одновременном исполнении нескольких версий одной и той же программы, написанных разными разработчиками. Метод, рассмотренный в работе [16], был менее ресурсоемким и заключался в чередующимся исполнении разных версий одной программы с возможностью контроля ошибок. Данные методы хоть и являются эффективными, но их реализация достаточно дорогостоящая. Другой метод, рассмотренный в работах [17, 18], заключался в исполнении одинакового кода программы на разных вычислительных системах.

Существуют методы, для реализации которых не требуются дополнительные ресурсы. Два таких метода рассматриваются в диссертации:

• метод перезапуска;

• метод контрольных точек.

Перезапуск является эффективным методом для программ с длительным временем работы. Самый распространенный пример таковых программ это веб-сервер. Поскольку процесс распространения ошибки до момента сбоя длится достаточно долго, то с течением продолжительного времени вероятность сбоя веб-сервера возрастает. Чтобы предотвратить возникновение сбоя в веб-сервере осуществляют его перезапуск, который заключается в остановке веб-сервера и его повторном запуске. В большинстве случаев перезапуск сокращает количество сбоев при дальнейшей работе веб-сервера.

Анализ случайных сбоев в известном HTTP-сервере APACHE6 с открытым исходным кодом был в подробности проведен в работе [13]. Предотвратить большинство случайных сбоев HTTP-сервера APACHE (см. Рис.2) можно перезапуском сервера или его подсистем. Другим распространенным ПО, рассмотренным в работе [13], является СУБД MySQL.7 В СУБД

6По данным исследования компании Netcraft является самым распространенным веб-сервером в мире. В мае 2009 г. APACHE работал на 46% всех веб-серверов.

7 Свободная система управления базами данных, используется как решение для малых и средних приложений. MySQL является собственностью компании Oracle, осуществляющей разработку и поддержку приложения.

Описание сбоя Исправление сбоя

Обращение к DNS-серверу возвращает ошибку. Перезапуск DNS-сервера.

Во время пиковой нагрузки на сервер подпроцессы APACHE. полностью запоняют таблицу родительского процесса Администратор должен остановить все подпроцессы APACHE.

Пользователь нажимает в интернет-браузере кнопку СТОП в период открытия веб-страницы. После перезапуска сервера данный сбой (вызванный ошибкой типа состояние гонки) не повторяется.

Подпроцессы APACHE полностью занимают все сетевые порты. Перезапуск APACHE.

Медленный ответ от DNS-сервера. Либо перезапуск DNS-сервера, либо устранение проблем в сети.

Медленное соединение с сетью. Перезапуск APACHE.

Рис. 2. Случайные сбои HTTP-сервера APACHE

MySQL отмечены два вида случайных сбоев, являющихся следствием состояния гонки.

Одним из решений, автоматизирующим процесс перезапуска вычислительной системы, является продукт компании IBM Director. Алгоритм его работы состоит в периодическом контроле параметров вычислительной системы, и если параметры выходят за область допустимых значений, то инициируется процесс перезапуска.

В отчете компании ЮС8 приведены данные о средних потерях, которые несет каждая коммерческая компания при сбоях ПО вычислительных систем. При сбое ПО системы, предоставляющей некоторый сервис клиентам, час ее простоя оценивается в среднем в 25 000$ потерянной прибыли, а в год каждая компания в среднем несет потерю прибыли в 650 000$. В том же отчете говорится, что при внедрении продукта IBM Director доступность систем в среднем повышается на 25%, что приносит 162 500$ дополнительной прибыли. Метод перезапуска находит применение и для крупных вычислительных систем: телекоммуникационные international Data Corporation (IDC) — аналитическая фирма, специализирующаяся на исследованиях рынка информационных технологий. системы [20], серверные кластеры [21], аэрокосмические системы [22].

В течение совершения перезапуска веб-сервер недоступен пользователям, поэтому если совершать перезапуск часто, то это может привести к существенному увеличению времени простоя веб-сервера. В этой связи возникает задача выбора оптимального интервала времени между перезапусками веб-сервера. Один из подходов решения данной задачи состоит в построении математической модели, описывающей поведение веб-сервера и последующей разработке критериев оценки эффективности метода перезапуска. В работе T. Dohi [130] был рассмотрен ценовой критерий оценки эффективности метода перезапуска. Решалась задача минимизации величины отношения суммарной стоимости простоя системы в течение интервала времени к величине этого интервала. S. Mercier и M. Roussignol [122] исследовали вероятностные модели вычислительной системы с перезапуском. В их работе поведение системы описывалось некоторым случайным процессым с конечным числом состояний, а интервалы времени между наблюдениями за системой были независимыми случайные величины с произвольным распределением. Доказывалось, что метод перезапуска повышает готовность системы. В работе R. Cleroux [125] для системы с перезапуском исследовано поведение величины отношения времени простоя в течение интервала времени к величине этого интервала. Однако, в силу сложности построенной модели, задача минимизации не решена, а лишь предложен алгоритм для ее численного решения.

В диссертации в качестве математической модели, описывающей поведение веб-сервера с перезапуском, используется цепь Маркова, а результатом исследования построенной математической модели являются достаточные условия убывания и достаточные условия возрастания величины предельной готовности веб-сервера.

Для снижения влияния случайных сбоев на работу аналитической программы применяется метод контрольных точек. Суть этого метода состоит в записи состояния исполняемой программы в некоторый момент времени, который называется контрольной точкой. Тогда, если в дальнейшем происходит сбой в работе программы, то ее исполнение продолжается с момента записи последней контрольной точки. Тем самым, периодическое сохранение промежуточного результата работы аналитической программы позволяет сократить суммарное время ее исполнения. Под записью состояния исполняемой программы понимается процесс, который сохраняет на внешний носитель содержимое программного стека, статических и динамических сегментов данных, файлов и т.д. Среди работ предшественников, посвященных технической реализации отказоустойчивого ПО с контрольными точками, можно выделить исследования В. Г Хорощевского [92], В. О. Чуканова, Ю. В. Бородакий [93].

Реализуется метод контрольных точек в большинстве случаев либо в виде отдельной утилиты, исполняемой на сервере приложения9, либо в виде библиотеки функций, подключаемой к аналитической программе на этапе компиляции10. Существуют также реализации метода контрольных точек на уровне ядра операционной системы.11

В диссертации исследуется применение метода контрольных точек

9Примсром является утилита Libckpt (http://www.cs.utk.edu/ plank/plank/www/libckpt.htral) для Unix операционных систем, разработанная в университете Теннесси.

10В качестве примера можно привести библиотеку функций Porch (http://supertech.csail.mit.edu/porch/), разработанную в- Массачусетском технологическом институте.

11Примером является библиотека функций ЕРСКРТ (http://www.research.rutgers.edu/ edpin/epckpt/), разработанная для Linux операционных систем. для аналитической программы с длительным временем исполнения. К данному классу программ относятся различные приложения моделирования сложных процессов и обработки данных:

• приложения интеллектуального анализа данных12;

• приложения инженерных расчетов, анализа и симуляции физических процессов.13

• моделирование процессов молекулярной динамики;14

• моделирование процессов гидродинамики.15

Следует отметить, что применение метода контрольных точек не всегда снижает время работы программы. Например, в случае когда запись контрольных точек происходит часто, а длительности времени записи и времени восстановления программы после сбоя велики, то время работы программы может и возрасти. В этой связи возникает необходимость разработки критериев оценки эффективности метода контрольных точек и их оптимизации. В диссертации формируется математическая модель оценки времени работы программы с контрольными точками и разрабатываются критерии оценки эффективности метода контрольных то

12 (англ. Data Mining) — выявление скрытых закономерностей или взаимосвязей между переменными в больших массивах необработанных данных. Наиболее распространенными приложениями являются SPSS, SAS, KXEN.

13CAE (англ. Computer-aided engineering). Расчётная часть чаще всего основана на численных методах решения дифференциальных уравнений (метод конечных элементов, метод конечных объёмов, метод конечных разностей и др.). Примером такового приложения является открытая интегрируемая платформа для численного моделирования SALOME (http://www.salome-platform.org/).

14Англ. Carr-Parrinello Molecular Dynamics application (www.cpmd.org). Метод, в котором временная эволюция системы взаимодействующих атомов или частиц отслеживается интегрированием уравнения их движения.

15Англ. NekSOOO computational fluid dynamics application (http://nek5000.mcs.anl.gov/). Один из численных методов и алгоритмов решения задачи моделирования течения жидкости. чек. Данный подход к решению задачи оценки эффективности метода контрольных точек использовал профессор Дюкского университета К. S. Trivedi [23]. В своих работах он исследовал задачу минимизации среднего времени работы программы в предположении, что интервалы времени между сбоями есть независимые случайные величины, распределенные по закону Вейбулла. Результат, полученный в его работе, состоял в численном решении задачи поиска оптимального интервала между контрольными точками. В работе X. Chen, М. R. Lyu [118] также исследовались численные методы нахождения оптимального интервала между контрольными точками. В работе Y. Huang [117] найдена верхняя оценка для оптимального интервала между контрольными точками.

Таким образом, существующие работы на данную тему сводились к задачам численного анализа рассматриваемых величин, моделируемого посредством ЭВМ. Аналитическое решение задач отсутствовало вследствие либо сложности построенной модели, либо вследствие отсутствия ограничений на параметры рассматриваемых моделей. Главное отличие результатов данной диссертации от результатов предшественников состоит в том, что для всех величин в рассматриваемых моделях получены формулы, а их исследование и оптимизация проведены аналитическими методами. В отличие от численных методов, дающих лишь частные решения задачи при некоторых конкретных значениях параметров, аналитические методы позволяют получить общее решение задач оптимизации, а также исследовать свойства полученных решений. Цель работы состоит в исследовании и оптимизации критериев оценки эффективности методов снижения влияния сбоев программного обеспечения на работу вычислительных систем. Основные задачи работы:

• формализовать задачу поиска оптимального расположения контрольных точек и найти такое расположение контрольных точек, при котором среднее время работы программы будет минимальным;

• найти оптимальное количество контрольных точек;

• оценить верхний и нижний интервалы времени работы программы с контрольными точками;

• формализовать задачу поиска оптимального интервала между последовательными перезапусками веб-сервера, при котором увеличивается его готовность;

• найти условия, при которых перезапуск уменьшает или увеличивает готовность веб-сервера.

Научная новизна.

1. Предложена математическая модель оценки среднего времени работы программы в предположении, что интервалы времени между последовательными сбоями в работе программы есть независимые случайные величины с экспоненциальным распределением. Решена оптимизационная задача расположения контрольных точек, при котором среднее время работы программы достигает минимума. При некоторых значениях параметров модели найдено оптимальное количество контрольных точек.

2. Исследовано асимптотическое поведение величины среднего времени работы программы. Найдено соотношение между параметрами модели, при выполнении которого величина среднего времени работы программы имеет конечный предел.

3. В рамках построенной математической модели оценки среднего времени работы программы найдена функция вероятностного распределения случайной величины времени работы программы и исследованы ее свойства. Также получена двухсторонняя оценка квантили найденного распределения.

4. Предложена модель марковской цепи, описывающей поведение вебсервера. Найдены достаточные условия, при которых метод перезапуска уменьшает или увеличивает величину предельной готовности веб-сервера.

Диссертация имеет следующую структуру. В Главе 1 рассматривается математическая модель оценки влияния сбоев на работу программы с контрольными точками. Критерием оптимизации здесь является математическое ожидание случайной величины времени работы программы. В предположении, что интервалы времени между соседними сбоями являются независимыми случайными величинами распределенными экспоненциально решается задача поиска оптимального расположения контрольных точек, при котором математическое ожидание времени работы программы достигает минимума. Аналитическое решение задачи минимизации математического ожидания времени работы программы по количеству контрольных точек получено не было, поэтому проведен анализ численных результатов для некоторых значений параметров модели. Также в данной главе исследовано асимптотическое поведение математического ожидания времени работы при N оо. В качестве обобщения случая экспоненциального распределения интервалов времени между сбоями, в конце Главы 1, рассмотрен случай, когда интервалы времени между сбоями имеют распределение Вейбулла и проведено сравнение этих результатов с результатами, полученными для случая экспоненциального распределения.

Исследованию распределения вероятностей времени работы программы посвящена Глава 2. При тех же самых предположениях относительно интервалов времени между сбоями, здесь найдена функция распределения времени работы программы, а также получена двухстороняя оценка квантили этого распределения. Для более наглядного представления свойств функции вероятностного распределения времени работы программы рассмотрены графики функции распределения для некоторых значений параметров модели.

Глава 3 посвящена исследованию математической модели, описывающей работу веб-сервера с перезапуском. Критерием оптимизации здесь является величина предельной готовности. В предположении, что поведение веб-сервера описывается марковской цепью, рассматривается задача увеличения величины предельной готовности. Найдены достаточные условия, при которых применение перезапуска увеличивает или уменьшает готовность веб-сервера. В конце главы приведены численные результаты, показывающие, что при невыполнении некоторых условий, метод перезапуска уменьшает величину готовности.

Похожие диссертационные работы по специальности «Системный анализ, управление и обработка информации (по отраслям)», 05.13.01 шифр ВАК

Заключение диссертации по теме «Системный анализ, управление и обработка информации (по отраслям)», Ключников, Константин Константинович

Заключение

Большинство современных вычислительных систем, имея сложную архитектуру, подвержены сбоям, которые могут происходить как по причине неполадок оборудования, так и вследствие некорректной работы программного обеспечения. Согласно данным исследований надежности вычислительных систем, проведенным за последние годы, большинство сбоев происходит по причине ошибок в программном обеспечении. Возникновение сбоев в программном обеспечении может иметь как детерминированный, так и случайный характер. В случае с детерминированными сбоями, проблема локализации и исправления ошибок, по причине которых они происходят, решается обычными методами тестирования ПО. В случае со случайными сбоями, существуют методы, позволяющие снизить их влияние на ПО. Для снижения влияния случайных сбоев в диссертации рассматриваются методы контрольных точек и перезапуска. Цель диссертации состоит в исследовании оптимизации критериев оценки эффективности этих методов.

Основные задачи, решаемые в диссертации - это оценка среднего времени работы программы с контрольными точками, исследование ее вероятностного распределения, а также оптимизация готовности системы с перезапуском. Для случая экспоненциального распределения интервалов времени между сбоями найдена величина среднего времени работы программы. С целью уменьшения среднего времени работы программы рассматривается метод контрольных точек, и решается задача выбора оптимального расположения контрольных точек. Для случая N контрольных точек доказано, что равномерное расположение контрольных точек является оптимальным. Также исследовано поведение величины среднего времени работы программы при N —> оо. В качестве обобщения в диссертации рассмотрен случай, когда интервалы времени между сбоями имеют распределение Вейбулла. Для этого случая найдена величина среднего времени работы программы и проведено сравнение результатов со случаем экспоненциального распределения интервалов между сбоями. Другая задача, решаемая в диссертации - это исследование вероятностного распределения времени работы программы с N контрольными точками. В диссертации получено выражение для функции вероятностного распределения времени работы программы, а также найдена двухсторонняя оценка для квантили этого распределения.

Другая задача, решаемая в диссертации, состоит в оценке готовности веб-сервера с перезапуском. Получены достаточные условия, при выполнении которых готовность веб-сервера с перезапуском увеличивается, а также достаточные условия, при которых перезапуск уменьшает величину готовности.

Дальнейшим развитием результатов диссертационной работы может являться исследование математических моделей с иными предположениями. Например, исследование вероятностного распределения времени работы программы в предположении, что интервалы времени между сбоями имеют распределение с тяжелыми хвостами (например, распределение Вейбулла). Более общим направлением развития результатов диссертации может являться задача получения функции распределения времени работы программы при произвольном непрерывном распределении интервалов между сбоями. Также может быть рассмотрена задача применения результатов диссертационной работы на практике.

Список литературы диссертационного исследования кандидат физико-математических наук Ключников, Константин Константинович, 2011 год

1. К.К. Ключников. Время исполнения программы в присутствии случайных сбоев // Дискретная математика, Выпуск №4, 2007, стр. 150-157.

2. К.К. Ключников. Минимизация времени исполнения программы // Информационные технологии моделирования и управления, №5(39) 2007, стр. 574-578.

3. К.К. Ключников. Старения процесса исполнения программного приложения // Открытое образование. №4 2007, стр. 38-43.

4. К. К. Ключников. Методы снижения влияния сбоев в работе бил-линговой системы // Мобильные системы, №08 2007, стр. 46-48.

5. К.К. Ключников. Асимптотическое поведение метода контрольныхточек, минимизирующего среднее время исполнения программы // Системы управления и информационные технологии, №3.1(29) 2007, стр. 155-158.

6. К. К. Ключников. Анализ вероятностного распределения случайной величины времени работы программы в присутствии случайных сбоев // Автоматика и телемеханика, №7, 2009, стр. 175-185.

7. М. Sullivan and R. Chillarege. Software Defects and Their Impact on System Availability A Study of Field Failures in Operating Systems // Proc. 21st IEEE Int. Symp. Fault-Tolerant Computing, 1991, pp. 2-9.

8. J. Gray Why do Computers Stop and What Can Be Done About It? // Proc. Fifth Symp. Reliability in Distributed Software and Database Systems, Jan. 1986, pp. 3-12.

9. M. Grottke and K. S. Trivedi. Fighting Bugs: Remove, Retry, Replicate, and Rejuvenate // IEEE Computer, Vol. 40, No. 2, 2007, pp. 107-109.

10. M. Winslett. Bruce Lindsay Speaks Out // ACM SIGMOD Record, June 2005, pp. 71-79.

11. I. Lee and R. K. Iyer. Software Dependability in the Tandem GUARDIAN System // IEEE Trans. Software Eng., vol 21 no 5, May 1995, pp. 455-467.

12. S. Chandra, P.M. Chen. Whither Generic Recovery from Application Faults? A Fault Study using Open-Source Software // Proceedings of the 2000 Int. Conf. on Dependable Systems and Networks.

13. I. Lee, R. Iyer. Faults, Symptoms, and Software Fault Tolerance in the Tandem GUARDIAN Operating System //In International Symposium on Fault-Tolerant Computing (FTCS), pp. 20-29, 1993.

14. A. Avizieriis. The n-version approach to fault-tolerant software // IEEE Trans, on Software Engineering, vol. SE-11, No. 12, December 1985, pp. 1491-1501.i

15. B. Randell. System structure for software fault tolerance // IEEE Trans, on Software Engineering, vol. SE-1, June 1975, pp.220-232.

16. Y. Huang and C.M.R. Kintala. Software Implemented Fault Tolerance: Technologies and Experience // Proceedings of 23rd International Simposium on Fault-Tolerant Computing. Toulouse, France, June 1993, pp.2-9.

17. E.N. Elnozahy, L. Alvisi, Y.-M. Wang, D.B. Johnson. A Survey of Rollback-Recovery Protocols in Message-Passing Systems // Technical Report CMU-CS-99-148, Carnegie Mellon University, June 1999.

18. L. Li, K. Vaidyanathan and K. S. Trivedi. An Approach to Estimation of Software Aging in a Web Server // Proc. International Symposium Empirical Software Engineering, October 2002, pp. 91-100.

19. A. Avritzer, E.J. Weyuker. Monitoring smoothly degrading systems for increased dependability // Empirical Software Engineering, vol.2, no.l, pp. 59-77, 1997.

20. V. Castelli, R.E. Harper, P. Heidelberger, S.W. Hunter, K.S. Trivedi, K. Vaidyanathan, W.P. Zeggert. Proactive management of software aging // IBM Journal of Research and Development, vol. 45, no. 2, pp.311-332, 2001.

21. A.T. Tai, L. Alkalaj, S.N. Chau. On-board preventive maintenance: a design-oriented analytic study for long-life applications // Performance Evaluation, vol.35, no.3-4, pp. 215-232, 1999.

22. S. Garg, Y. Huang, C. Kintala and K. S. Trivedi. Minimizing Completion Time of a Program by Checkpointing and Rejuvenation // ACM SIGMETRICS 1996, May 1996, pp. 252-261.

23. E. Gelenbe. On the Optimum Checkpoint Interval // Journal of the Association for Computing Machinery, Vol. 26, No. 2, April 1979, pp. 259-270.

24. J. Hong, S. Kim, Y. Cho. Cost Analysis of Optimistic Recovery Model for Forked Checkpointing // IEICE TRANS. INF. SYST., VOL.E85-A, N0.1 JANUARY 2002, pp. 1-8.

25. D. Nurmi, R. Wolski, J. Brevik. Model-Based Checkpoint Scheduling for Volatile Resource Environments // UCSB Computer Science Technical Report Number 2004-25, Santa Barbara, CA, 93106.

26. D. Nurmi, J. Brevik, R. Wolski. Minimizing the Network Overhead of Checkpointing in Cycle-harvesting Cluster Environments // IEEE1.ternational Conference on Cluster Computing (Cluster 2005),Boston, Massachusetts, USA, September 27 30, 2005, pp. 1-10.

27. Nitin H. Vaidya. On staggered checkpointing //In Eighth IEEE Symposium on Parallel and Distributed Processing(SPDP), October 1996, pp. 572-580.

28. Nitin H. Vaidya. On checkpoint latency // Technical Report: TR95-015, December 1995.

29. Y. M. Wang and W. K. Fuchs. Lazy checkpoint coordination for bounding rollback propagation //In Symposium on Reliable Distributed Systems, October 1993, pp. 78-85.

30. Y. M. Wang, Y. Huang and W. K. Fuchs. Progressive retry for software error recovery in distributed systems //In Digest of papers: the 23rd International Symposium Fault-Tolerant Computers, 1993, pp. 138144.

31. R. E. Strom and S. A. Yemini. Optimistic recovery: An asynchronous approach to fault-tolerance in distributed systems // Digest of papers: The 14-th Int. Symp. Fault-Tolerant Comp., 1984, pp.374-379.

32. J. S. Plank, M. Beck, G. Kingsley and K. Li. Libckpt: Transparent checkpointing under Unix // In Usenix Winter 1995 Technical Conference, New Orleans, January 1995.

33. J. S. Plank. Efficient Checkpoiting on MIMD Architectures // PhD thesis, Dept. of Computer Science, Princeton University, June 1993.

34. Y. M. Wang, Y. Huang, K. P. Vo, P. Y. Chung and C. Kintala.

35. Checkpointing and Its Applications //In Proc. IEEE Fault-Tolerant Computing Symp. (FTCS-25), June 1995, pp.22-31.

36. J. S. Plank, K. Li, M. Puening. Diskless Checkpointing // Technical Report UT-CS-97-380, University of Tennessee, December 12 1997.

37. J. S. Plank and M. G. Thomason. The average availability of the parallel checkpointing systems and its importance in selecting runtime parameters //In 29-th International Symposium on Fault-Tolerate Computing, Madison, WI, June 1999, pp. 250-259.

38. J. S. Plank and M. G. Thomason. Processor Allocation and Checkpoint Interval Selection in Cluster Computing Systems // Journal of Parallel and Distributed Computing in 2001, pp. 1570 1590.

39. A. L. Goel Software reliability models: Assumptions, limitations and applicability //In IEEE Tran. Software Engineering, vol SE-11, Dec 1985, pp. 1411-1423.

40. T. Heath, P. M. Martin and T. D. Nguyen. The shape of failure // Proceedings of the First Workshop on Evaluating and Architecting System dependability (EASY), July 2001, pp. 1-4.

41. Y. Ling, J. Mi and X. Lin. A variational calculus approach to optimal checkpoint placement // IEEE Trans, on Computers, Volume 50, Issue 7, Jul 2001, pp. 699 708.

42. I. Lee, D. Tang, R. K. Iyer and M. C. Hsueh. Measurement-based evaluation of operating system fault tolerance //In IEEE Trans, on Reliability, Volume 42, Issue 2, June 1993, pp. 238-249.

43. A. Acharya and B. R. Badrinath. Checkpointing Distributed Applications on Mobile Computers // Proc. Third Int. Conf. Parallel and Distributed Information Systems, Sept. 1994, pp. 73-80.

44. B. Bhargava, S. R. Lian and P. J. Leu. Experimental Evaluation of Concurrent Checkpointing Rollback-Recovery Algorithms // Proc. Int. Conf. Data Engineering, 1990, pp.182-189.

45. G. Cao and M. Singhal. Low-Cost Checkpointing with Mutable Checkpoints in Mobile Computing Systems // Proc. 18th Int. Conf. Distributed Computing Systems, May 1998, pp. 464-471.

46. G. Cao and M. Singhal. On Coordinated Checkpointing in Distributed Systems // IEEE Trans. Parallel and Distributed System, December 1998, pp. 1213-1225.

47. Philip F. Chimento, K. S. Trivedi . The Completion Time of Programs on Processors Subject to Failure and Repair // IEEE TRANSACTIONS ON COMPUTERS, VOL. 42, NO. 10, OCTOBER1993, pp. 1184-1194.

48. F. Cristian and F. Jahanian. A Timestamp-Based Checkpointing Protocol for Long-Lived Distributed Computations // Proc. IEEE Symp. Reliable Distributed Systems, 30 Sep-2 Oct 1991, pp. 12-20.

49. H. Karl, M. Werner. An Optimal Checkpointing Interval for RealTime Systems // Technical Report Informatik-Berichte Nr. 92, Institut fur Informatik, Humboldt-Universitat, Berlin, 1997.

50. Y. Deng and E. K. Park. Checkpointing and Rollback-Recovery Algorithms in Distributed Systems //J. Systems and Software, April1994, pp. 59-71.

51. E. N. Elnozahy, D. B. Johnson and W. Zwaenepoel. The Performance of Consistent Checkpointing // Proc. 11th Symp. Reliable Distributed Systems, Oct. 1992, pp. 86-95.

52. S. T. Huang. Detecting Termination of Distributed Computations by External Agents // Proc. Ninth International Conference Distributed Computing Systems, 1989, pp. 79-84.

53. J. L. Kim and T. Park. An Efficient Protocol for Checkpointing Recovery in Distributed Systems // IEEE Trans. Parallel and Distributed Systems, Aug. 1993, pp. 955-960.

54. D. Johnson. Distributed System Fault Tolerance Using Message Logging and Checkpointing // PhD Thesis, Rice University, Dec. 1989.

55. R. Koo and S. Toueg. Checkpointing and Rollback-Recovery for Distributed Systems // IEEE Trans. Software Eng., Jan. 1987, pp. 23-31.

56. P. Krishna, N. H. Vaidya and D. K. Pradhan. Recovery in Distributed Mobile Environments // Proc. IEEE Workshop Advances in Parallel and Distributed System, Oct. 1993, pp. 83-88.

57. D. Manivannan and M. Singhal A Low-Overhead Recovery Technique Using Quasi-Synchronous Checkpointing // Proc. 16th Int. Conf. Distributed Computing Systems, May 1996, pp. 100-107.

58. R. Prakash and M. Singhal. Low-Cost Checkpointing and Failure Recovery in Mobile Computing Systems // IEEE Trans. Parallel and Distributed Systems, Oct. 1996, pp. 1035-1048.

59. Malhotra M., Trivedi K. S. Power-hierarchy of dependability-model types // IEEE Transactions on Reliability, Volume 43, Issue 3, Sep 1994, pp. 493-502.

60. Goyal A., Lavenberg S. S. Modeling and analysis of computer system availability // IBM Journal of Research and Development, Volume 31, Issue 6, December 1987, pp. 651 664.

61. Birnbaum Z. W. On the importance of different components in a multicomponent system // In: Multivariative Analysis:II. Academic Press, New York, 1969, pp. 581-592.

62. A. E. Gera. The modified exponentiated-Weibull distribution for lifetime modeling //In Proc. Annual Reliability and Maintainability Symp., 1997, pp. 149-152.

63. D. B. Kececioglu and W. Wang. Parameter estimation for mixed-Weibull distribution //In Proc. Annual Reliability and Maintainability Symp., 1998, pp. 247-252.

64. S. Srinivasan and R. Subramanian. Probabilistic Analysis of Redundant System's // Springer-Verlag, 1980, Lecture Notes in Economics and Mathematical Systems.

65. L. C. Tang, Y. S. Sun, T. N. Goh and H. L. Ong. Analysis of step-stress accelerated-life-test // IEEE Trans. Reliability, vol 45, 1996, pp. 69-74.

66. K. S. Trivedi. Probability and Statistics with Reliability, Queueing and Computer Science Applications // 2nd. edition. New York: Wiley, 2002.

67. Y. Cao, H. Sun, K. S. Trivedi, J. J. Han. System Availability With Non-Exponentially Distributed Outages // IEEE Trans, on Reliability, vol 51, no 2, June 2002, pp. 193-198.

68. Chen D-Y, Trivedi K. S. Analysis of periodic preventive maintenance with general component failure distribution / / Pacific Rim International Symposium on Dependable Computing (PRDC'01), Seoul, Korea, December 2001.

69. Vaurio J. K. On time-dependent availability and maintenance optimization of standby units under various maintenance policies // Reliab. Engng. Syst. Saf, 1997, vol. 56, pp. 79-89.

70. Légat V., Zaludova A. H., Cervenka V., J urea V. Contribution to optimization of preventive maintenance // Reliab. Engng. Syst. Saf. 1996, vol. 51, pp. 259-266.

71. Sahner R. A., Trivedi K. S., Puliafito A. Performance and reliability analysis of computer systems // Dordrecht: Kluwer Academic Publishers, 1996.

72. Sim S. H., Endrenyi J. Optimal preventive maintenance with repair // IEEE Trans. Reliab, 1988, vol. 37 issue 1, pp. 92-96.

73. Hosseini M. M., Kerr R. M., Randall R. B. An inspection model with minimal and major maintenance for a system with deterioration and Poisson failures // IEEE Trans. Reliab, 2000, vol. 49, issue 1, pp. 88-98.

74. Pulcini G. On the overhaul effect for repairable mechanical units: a Bayes approach // Reliab. Engng. Syst. Saf., October 2000, volume 70, issue 1, pp. 85-94.

75. Aven Т., Dekker R. A. A useful framework for optimal replacement models. Reliab // Engng. Syst. Saf., October 1997, volume 58, Number 1, , pp. 61-67.

76. Marseguerra M., Zio E. Optimizing maintenance and repair policies via a combination of genetic algorithms and Monte Carlo simulation // Reliab. Engng. Syst. Saf., April 2000, volume 68, number 1, pp. 69-83.

77. D. Chen, K. S. Trivedi. Closed-form analytical results for condition-based maintenance // Reliability Engineering and System Safety, April 2002, vol. 76, num. 1, pp. 43-51.

78. A. Goyal, S. S. Lavenberg and K. S. Trivedi. Probabilistic Modeling of Computer System Availability // Annals of Operations Research, vol. 8, num. 1, December 1987, pp. 285-306.

79. M. D. Beaudry. Performance-related reliability measures for computing systems // IEEE Trans, on Computers, vol. 27, issue 6, June 1978, pp. 540-547.

80. JI. Э. Элъсголъц. Дифференциальные уравнения и вариационное исчисление // Изд. УРСС, 2000 г.

81. A. Goyal and А. N. Tantawi. A measure of guaranteed availability and its numerical evaluation // IEEE Trans. Comput., vol C-37, 1988, pp. 25-32.

82. G. Rubino and B. Sericola. Interval availability analysis using operational periods // Perform. Eval., vol 14, 1992, pp. 257-272.

83. E. de Souza c Silva and H. R. Gail. Calculating cumulative operational time distributions of repairable computer systems // IEEE Trans. Comput., vol. C-35,1986, pp. 322-332.

84. G. Rubino and B. Sericola. Interval availability distribution computation //In Proc. IEEE 23-th Fault-Tolerant Computing Symp., Toulouse, France, 1993, pp. 49-55.

85. G. Rubino and B. Sericola. Interval Availability Analysis Using Denumerable Markov Processes: Application to Multiprocessor Subject to Breakdowns and Repair // IEEE Trans, on Computers, vol. 44, no. 2, February 1995, pp. 286-291.

86. J. K. Muppala, M. Malhotra and K. S. Trivedi. Markov dependability models of complex systems: Analysis techniques // In S. Ozekici, editor, Reliability and Maintenance of Complex Systems, Berlin, Germany, 1996, pp. 442-486. Springer.

87. J. K. Muppala, S. P. Woolet and K. S. Trivedi. On modeling performance of real-time systems in the presence of failures //In Readings in Real-Time Systems, Los Alamitos, CA, USA, 1993, pp. 219-239.

88. K. Shen and M. Xie. On the increase of system reliability by parallel redundancy // IEEE Transactions on Reliability, vol. 39, issue 5, December 1990, pp. 607-611.

89. S. Garg, A. van Moorsel, K. Vaidyanathan, K. Trivedi. A Methodology for Detection and Estimation of Software Aging // Proc. Ninth International Symp. Software Reliability Eng., Nov. 1998, pp. 282-292.

90. M. Abramowitz and I. A. Stegun. Handbook of Mathematical Functions with Formulas, Graphs, and Mathematical Tables // New York: Dover, 1972.

91. Y. Bao, X. Sun and K. Trivedi. Adaptive Software Rejuvenation: Degradation Models and Rejuvenation Schemes // Proc. International Conference Dependable Systems and Networks, June 2003, pp. 241-248.

92. А. Е. Александрович, Ю. В. Вородакий, В. О. Чуканов. Проектирование высоконадежных информационно-вычислительных систем // Издательство „Радио и связь", 2004 г.

93. Y. Hong, D. Chen, L. Li and К. S. Trivedi. Closed Loop Design for Software Rejuvenation // Proc. Workshop Self-Healthing, Adaptive and Self-Managed Systems (SHAMAN 2002), June 2002.

94. A. Avizienis, J.-C. Laprie and B. Randell. Fundamental Concepts of Dependability // LAAS Technical Report No. 01-145, LAAS, France, Apr. 2001.

95. Y. Huang, P. Jalote and C. Kintala. Two Techniques for Transient Software Error Recovery // Lecture Notes in Computer Science, vol. 774, 1994, pp. 159-170.

96. J. Gray. A Census of Tandem System Availability between 1985 and 1990 // IEEE Trans. Reliability, vol. 39, Oct. 1990, pp. 409-418.

97. K. Vaidyanathan and K. S. Trivedi. A Measurement-Based Model for Estimation of Resource Exhaustion in Operational Software Systems // Proc. 10th IEEE Int. Symp. Software Reliability Eng., Nov. 1999, pp. 84-93.

98. S. S. Gokhale, K. S. Trivedi. A time/structure based software reliability model // Annals of Software Engineering 8(1999) pp. 85-121.

99. J. Gray and D. P. Siewiorek. High-availability computer systems // IEEE Computer Mag, Sept. 1991, pp. 39-48.

100. J: Huang, C. R. Miller and O. G. Okogbaa. Optimal preventive replacement intervals for the Weibull life distributions: Solutions and applications //In Proceedings of annual reliability and maintainability symposium, 1995, pp. 370-377.

101. S. Yamada, M. Ohba and S. Osaki. S-Shaped Reliability Growth Modeling for Software Error Detection // IEEE Trans, on Reliability, R-32(5), Dec. 1983, pp. 475-485.

102. J-C. Laprie, J. Arlat, C. Beounis and K. Kanoun. Architectural issues in software fault-tolerance // Software Fault Tolerance. Ed. M. R. Lyu, John, Wiley&; sons ltd., 1995, pp. 47-80.

103. K. Vaidyanathan and K. S. Trivedi. A Comprehensive Model for Software Rejuvenation // IEEE Transactions on Dependable and Secure Computing, vol 2 no 2, April-June 2005, pp. 124-137.

104. International Telecommunication Unit. http://www.itu.int/ITU-R

105. J. Gray Why do Computers Stop and What Can Be Done About It? // Proc. Fifth Symp. Reliability in Distributed Software and Database Systems, Jan. 1986, pp. 3-12.

106. H. Sun, X. Zang and K. S. Trivedi. A BDD-based Algorithm for Reliability Analysis of Phased-Mission Systems // IEEE Transactions on Reliability vol 48 no 1, March 1999, pp. 50-60.108. http://www.ee.duke.edu/kst/ Software Packages for Modeling.

107. M. Malhotra and K. S. Trivedi. Dependability Modeling Using Petri-Nets // IEEE Transactions on Reliability vol 44 no 3, September 1993, pp. 428-440.

108. L. Bernstein. Innovative Technologies for Preventing Network Outages // AT&T Technical Journal, Vol. 72, No.4, July 1993, pp. 4-10.

109. J. Gray and A. Reuter. Transaction Processing: Concepts and Techniques // Morgan Kaufmann Publishers, San Mateo, CA, 1993.

110. G. Arfken. Mathematical Methods for Physicists // 3rd ed. Orlando, FL: Academic Press, 1985.

111. A. H. Колмогоров, С. В. Фомин. Элементы теории функций и функционального анализа // Издательство „Наука", Москва 1976.

112. Б. В. Гнеденко, Ю. К. Беляев, А. Д. Соловьев. Математические методы в теории надежности // Издательство „Наука", Москва 1965.

113. Дж. JI. Дуб. Вероятностные процессы // Издательство ИНОСТРАННОЙ ЛИТЕРАТУРЫ, Москва 1956.

114. Tadashi Dohi, Naoto Kaio. The Optimal Age-Dependent Checkpoint Strategy for a Stochastic System Subject to General Failure Mode // Journal of Mathematical Analysis and Applications 249, 2000, p. 80-94.

115. Y. Huang Autonomic Web-Based Simulation // Dissertation for the degree of Doctor of Philosophy, Notre Dame, Indiana, March 2005.

116. X. Chen, M.R. Lyu. Performance and Effectiveness Analysis of Checkpointing in Mobile Environments // Proceedings of the 22nd International Symposium on Reliable Distributed Systems, 6-18 Oct. 2003, pp. 131 140.

117. A. Boukas. Minimal Operation Time of Energy Devices // Applied Mathematics E-Notes, 5(2005), pp. 269-274.

118. И.В. Машечкин, А.А. Смирнов. Поиск мест создания консистентных контрольных точек в параллельных программах путем анализа трассы программы // Вестн. Моск. ун-та. Сер. 15. Вычислительная математика и кибернетика. 2007. №2, стр. 46-52.

119. S. Mercier and М. Roussignol. Asymptotic failure rate of a Markov deteriorating system with preventive maintenance // Journal of Applied Probability, vol.40, Num. 1(2003), pp. 1-19

120. Y. Bao, X. Sun, and K.S. Trivedi. A Workload-based analysis ofsoftware aging, and rejuvenation // IEEE Trans, on Reliability, vol.54, no.3, Sept. 2005, pp. 541-548.

121. H. Liao, L.Y. Chang, E.A. Elsayed. Maintenance of Continuously Monitored Degrading Systems // European Journal of Operational Research, vol. 175, issue 2, 1 December 2006, pp. 821-835.

122. R. Cleroux. On Modelling Preventive Replacements of Randomly Deteriorating Systems // Investigación Operativa,6, 1998, pp.55-66.

123. C.T. Chen, M.H. Lin, C.P. Wang, J. Yuan. Study of Real time Dynamic Preventive Maintenance Policy for Deteriorating Production Systems // International Journal of The Computer, the Internet and Management, vol.l5#l, Jan.-Apr. 2007, pp.1-14.

124. A. Grail, C. Berenguer, L. Dieulle. A condition-based maintenance policy for stochastically deteriorating systems // Reliability Engineering and System Safety, vol. 76, no.2, May 2002, pp. 167180.

125. A. Grail, L. Dieulle, C. Berenguer, M. Roussingnol. Continuous-Time Predictive-Maintenance Scheduling for a Deteriorating System // IEEE Transactions on Reliability, vol. 51, no.2, June 2002, pp. 141 150.

126. V. Makis, X. Jiang. Optimal Replacement under Partial Observations // Mathematics of Operations Research, June 6, 2002, pp.1-13.

127. T. Dohi, K. Goseva-Popstojanova, K.S. Trivedi. Analysis of Software Cost Models with Rejuvenation // Fifth International Symposium on HASE 2000, pp. 25-34.

Обратите внимание, представленные выше научные тексты размещены для ознакомления и получены посредством распознавания оригинальных текстов диссертаций (OCR). В связи с чем, в них могут содержаться ошибки, связанные с несовершенством алгоритмов распознавания. В PDF файлах диссертаций и авторефератов, которые мы доставляем, подобных ошибок нет.