1.4. Программный, аппаратный и комбинированный контроль

В зависимости от метода, положенного в основу контроля СВТ, различают два основных вида контроля:

  • программный;
  • аппаратурный.

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

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

  • программно-логический
  • тестовый.

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

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

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

Все тесты подразделяются на

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

самостоятельными программами и выполняются без помощи операционной системы

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

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

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

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

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

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

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

В целом эффективность системы контроля СВТ характеризуется следующими показателями:

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

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