Мегаобучалка Главная | О нас | Обратная связь


Отказоустойчивость операционных систем



2019-10-11 468 Обсуждений (0)
Отказоустойчивость операционных систем 0.00 из 5.00 0 оценок




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

 

Рис 1. Монолитная и микроядерная архитектуры.

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

 

Рис 2. Постановка задачи повышения показателей отказоустойчивости.

Формально задачу повышения показателей отказоустойчивости можно выразить как увеличение размерности множеств локализуемых сбоев L и восстановимых сбоев R, входящих во множество всех возможных сбоев E .Расчет показателей отказоустойчивости системы может быть выполнен в два этапа: На первом этапе проводится расчет множества вероятных ошибок E при динамике роста объемов системы. Рост ошибок N объясняется предположением, что при увеличении размеров системы увеличивается количество ошибок, при этом D является количеством областей изоляции отказов системы:

 

На втором этапе рассчитывается показатель отказоустойчивости F. Для расчета множества локализуемых сбоев L использовался коэффициент степени локализуемости ошибок L, для расчета множества восстановимых сбоев R использовался коэффициент степени восстановимости локализованных сбоев R. Показатели L и R стремятся к единице в зависимости от объемов изолируемой области. Другими словами, показатели соответствуют примерному объему системы и степени возможности определить и локализовать возможные ошибки и определить восстановимые. То есть, чем проще и меньше функциональная область, тем меньшее количество ошибок должно в ней содержаться. В соответствии с необходимостью повышения отказоустойчивости ОС и на основании проведенного анализа и выявленных недостатков, а также полученного нами ранее опыта проектирования и реализации ОС, была разработана «доменная» архитектура ОС .

 

 

Рис. 3. Доменная архитектура ОС.

Основное отличие доменной архитектуры от монолитной и микроядерной состоит в том, что традиционная организация ядра ОС значительно видоизменяется в пользу более глубокой декомпозиции. При этом аналогия ядра системы, как обработчика запросов приложений, переносится на так называемые доменные объекты. В системе может быть определено любое множество доменных объектов, каждый из которых отвечает за обработку запросов к дочерним объектам, в т.ч. и доменным. В свою очередь, для функционирования доменной ОС необходима специализированная среда выполнения (виртуальная машина). Рассмотрим частный пример обеспечения отказоустойчивости за счет дублирования (см. рис. 4): (1) Объект g обращается к объекту n. (2) Среда выполнения располагает информацией, что объект n ассоциирован с доменным объектом X, поэтому переводит управление на него. Доменному объекту X сообщается, кто совершил вызов, объект вызова, тип вызова или операции, и аргументы вызова. (3) На основе этих данных доменной объекта X передает управление в вызываемый объект n. (4) После обработки запроса объекта n значение возвращается обратно через доменной объект X в объект g. (5) Если происходит сбой в объекте n, то об этом сообщается его доменному объекту X путем передачи необработанного исключения.

 

Рис. 4. Обеспечение отказоустойчивости за счет дублирования

Далее доменной объект производит восстановительные действия, учитывая характер ошибки. Далее, оперируя со своей структурой маршрутизации, устанавливает, что все дальнейшие вызовы к объекту n должны переадресовываться его дублеру – объекту p. Описанный способ позволяет реализовать общие принципы обработки событий, связанных с отказами и сбоями. Для предварительной оценки показателей отказоустойчивости системных архитектур было проведено экспериментальное моделирование.

Рис. 5. Сравнение показателя отказоустойчивости F

На основе полученных результатов экспериментов можно сделать вывод, что доменная система при количестве доменных уровней: 1. D = 1, соответствует отказоустойчивости микро ядерной системы. 2. D > 1 способна уменьшить примерно в N раз множество вероятных ошибок по сравнению с микро ядерной системой и, соответственно, получить значение показателя отказоустойчивости, который будет стремиться к единице (к полному покрытию сбоев). Что дает возможность значительно повысить отказоустойчивость в сравнении с другими архитектурными подходами.

 

Заключение

Операцио́нная систе́ма, сокр. ОС (англ. operating system, OS) — комплекс управляющих и обрабатывающих программ, которые, с одной стороны, выступают как интерфейс между устройствами вычислительной системы и прикладными программами, а с другой стороны — предназначены для управления устройствами, управления вычислительными процессами, эффективного распределения вычислительных ресурсов между вычислительными процессами и организации надёжных вычислений. Это определение применимо к большинству современных ОС общего назначения.

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

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

Операционная система - фактически сердце и мозг компьютера, без нее компьютер беспомощен, да и не нужен, просто это будет груда железа.

 1.Соломон, Руссинович, Ионеску: Внутреннее устройство Windows 2018г

 2.Арнольд Роббинс: Bash. Карманный справочник системного администратора 2017г

 3.Николай Скрабцов: Аудит безопасности информационных систем 2017г

  4. Эндрю Таненбаум, Таненбаум Э. С., Бос Х. : Современные операционные системы 2015г

   5. Константин Коньков: Устройство и функционирование ОС Windows. Практикум к курсу "Операционные системы" 2014г

     

 

 



2019-10-11 468 Обсуждений (0)
Отказоустойчивость операционных систем 0.00 из 5.00 0 оценок









Обсуждение в статье: Отказоустойчивость операционных систем

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Модели организации как закрытой, открытой, частично открытой системы: Закрытая система имеет жесткие фиксированные границы, ее действия относительно независимы...
Почему человек чувствует себя несчастным?: Для начала определим, что такое несчастье. Несчастьем мы будем считать психологическое состояние...
Почему люди поддаются рекламе?: Только не надо искать ответы в качестве или количестве рекламы...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (468)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.008 сек.)