Помощь в учёбе, очень быстро...
Работаем вместе до победы

Исправление ошибок и устойчивость к ошибкам

РефератПомощь в написанииУзнать стоимостьмоей работы

В TSPS применяются и пассивные, и активные методы обнаружения ошибок и средства исправления ошибок для сокращения числа сбоев системы. Основной принцип состоит в обнаружении определенных типов ошибок по возможности раньше, поскольку в противном случае их воздействие быстро распространится по всей системе и система в конце концов выйдет из строя. При" исправлении последствий этих ошибок утрата… Читать ещё >

Исправление ошибок и устойчивость к ошибкам (реферат, курсовая, диплом, контрольная)

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

Хотя методы исправления / устойчивости и имели ограниченный успех в нескольких системах, в большинстве случаев их лучше избегать. Число возможных ошибок в большой системе так велико, что может считаться практически бесконечным. Разрабатывая методы исправления / устойчивости, мы вынуждены пытаться предугадать лишь несколько типов ошибок, чтобы реализовать средства, предназначенные для борьбы с ущербом от этих ошибок. В лучшем случае наша система будет исправлять ничтожный процент своих потенциальных ошибок. К тому же эти средства сами довольно сложны, так что благодаря им исходное количество ошибок в системе только возрастет. Более того, они сами будут, несомненно, содержать ошибки. Наконец, если некоторые средства исправления / устойчивости все-таки заработают, они тем самым станут маскировать ошибки (делая их менее заметными), и последние, возможно, никогда не будут устранены обслуживающим персоналом, а это — явно нежелательное следствие.

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

Пример: система обслуживания телефонных станций TSPS фирмы «Белл».

Система TSPS фирмы «Белл» демонстрирует некоторые примеры методов исправления ошибок и обеспечения устойчивости. Система предназначена для обслуживания телефонной сети, поэтому на нее накладываются строгие требования в отношении постоянной готовности: суммарное время простоя системы из-за отказов не должно превышать двух часов за 40 лет. В TSPS полный выход системы из строя — серьезное событие, в то время как такие случайные сбои, как разрыв телефонной связи, вполне допустимы. Отметим, что во многих системах требования прямо противоположны. Например, в системе обработки банковских чеков выход системы из строя менее серьезен, чем ошибка в данных.

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

Телефонная сеть представлена таблицами в основной памяти, которые хранятся как множество связанных линейных списков. Например, список на рис. 5.1 может представлять все соединения сети, находящиеся в активном состоянии. В этом списке наблюдается существенная избыточность. Например, каждый блок имеет свой тэг, последний блок определяется по двум признакам, и в поле состояния каждого блока в этом списке должно быть установлено значение «активно». Монитор (называемый в TSPS audit program) периодически просматривает списки. Если обнаруживается противоречие, например в поле СЛЕДУЮЩИЙ некоторого блока указан неправильный адрес (что обнаруживается по несоответствию тэга блока, находящегося по этому адресу), то список обрывается после последнего правильного блока и в каждом правильном блоке значение бита L (от английского слова lost — потеряно) устанавливается равным 1. Другая компонента монитора периодически просматривает последовательно блоки всех линий. Если бит L блока. равен 0 (что значит, что он «потерян»), блок включается в список незанятых линий соответствующего типа. Эти действия могут привести к разрыву телефонной связи, но сохраняют работоспособность всей системы.

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

Механизм исправления ошибок в TSPS ежедневно исправляет довольно много ошибок. Установка TSPS после трех лет работы выполняет в среднем от 10 до 100 реальных исправлений в день и примерно раз в два месяца — автоматический повторный запуск.

Показать весь текст
Заполнить форму текущей работой