Повышение надежности и отказоустойчивости КС, блокировка ошибочных операций

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

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

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

Надежность КС достигается на этапах:

- разработки;

- производства;

- эксплуатации.

Для программных средств рассматриваются этапы разработки и эксплуатации. Этап разработки программных средств является определяющим при создании надежных компьютерных систем.

На этом этапе основными направлениями повышения надежности программных средств являются:

- корректная постановка задачи на разработку;

- использование прогрессивных технологий программирования;

- контроль правильности функционирования.

Корректность постановки задачи достигается в результате совместной работы специалистов предметной области и высокопрофессиональных программистов-алгоритмистов.

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

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

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

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

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

Удельный вес этапа эксплуатации ТС в решении проблемы повышения надежности КС в последние годы значительно снизился. Для определенных видов вычислительной техники, таких как персональные ЭВМ, уровень требований к процессу технической эксплуатации снизился практически до уровня эксплуатации бытовых приборов. Особенностью нынешнего этапа эксплуатации средств вычислительной техники является сближение эксплуатации технических и программных средств (особенно средств общего программного обеспечения). Тем не менее, роль этапа эксплуатации ТС остается достаточно значимой в решении задачи обеспечения надежности КС и, прежде всего, надежности сложных компьютерных систем.

Отказоустойчивость - это свойство КС сохранять работоспособность при отказах отдельных устройств, блоков, схем.

Известны три основных подхода к созданию отказоустойчивых систем:

- простое резервирование;

- помехоустойчивое кодирование информации;

- создание адаптивных систем.

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

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

Помехоустойчивое кодирование основано на использовании информационной избыточности. Рабочая информация в КС дополняется определенным объемом специальной контрольной информации. Наличие этой контрольной информации (контрольных двоичных разрядов) позволяет путем выполнения определенных действий над рабочей и контрольной информацией определять ошибки и даже исправлять их. Так как ошибки являются следствием отказов средств КС, то, используя исправляющие коды, можно парировать часть отказов. Исправляющие возможности кодов для конкретного метода помехоустойчивого кодирования зависят от степени избыточности. Чем больше используется контрольной информации, тем шире возможности кода по обнаружению и исправлению ошибок. Ошибки характеризуются кратностью, т.е. количеством двоичных разрядов, в которых одновременно искажено содержимое. Помехоустойчивые коды обладают различными возможностями по обнаружению и исправлению ошибок различной кратности. Так классический код Хемминга обнаруживает и исправляет однократные ошибки, а двукратные ошибки - только обнаруживает.

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

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

В адаптивных системах реализуется так называемый принцип элегантной деградации.

Этот принцип предполагает сохранение работоспособного состояния системы при некотором снижении эффективности функционирования в случаях отказов ее элементов.

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

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

Блокировка ошибочных операций. Ошибочные операции или действия могут вызываться отказами аппаратных и программных средств, а также ошибками пользователей и обслуживающего персонала. Некоторые ошибочные действия могут привести к нарушениям целостности, доступности и конфиденциальности информации. Ошибочная запись в ОП и на ВЗУ, нарушение разграничения памяти при мультипрограммных режимах работы ЭВМ, ошибочная выдача информации в канал связи, короткие замыкания и обрыв проводников - вот далеко не полный перечень ошибочных действий, которые представляют реальную угрозу безопасности информации в КС.

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

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

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

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: