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