Основы вычислительных систем
Рассмотрим структуру записей в памяти компьютера, описывающих соответствующие процессы. Любой процесс, управляемый хранящейся в памяти программой, имеет два важных параметра:
· адрес, по которому выбирается следующая команда;
· адрес страницы (блока) данных, который следует прибавлять к каждой ссылке на данные во время обращения.
Периферийный процесс характеризуется типом устройства и адресом данных, участвующих в обмене. Кроме того, каждый процесс может быть "свободным" или "занятым", пока не выполнится определенное условие. Каждому процессу в памяти компьютера соответствует запись примерно следующего формата (рис. 5.5)
Процесс | Тип требуемого процессора | Параметры… | Статус
|
Рис. 5.5. Структура записи процесса
Статус процесса указывает, готов ли процесс к обработке или он ждет выполнения некоторого условия.
Действия управляющей процедуры сводятся к обработке этих записей. Рассмотрим некоторые события процесса и действия управляющей процедуры на эти события (табл. 5.1)
Таблица 5.1. Примеры действий управляющей процедуры
№ п/п | Событие процесса | Реакция управляющей процедуры |
1 | Сигнал (запрос) образования нового процесса | Формирует новую запись формата (рис.7.5) и добавляет ее в список записей процессов |
2 | Запрос прерывания процесса до выполнения некоторого условия | Проверяет, выполнено ли требуемое условие. Если нет, то находится соответствующая этому процессу запись и отмечается, что процесс ждет выполнения данного условия. |
3 | Сигнал прекращения процесса | Находит и убирает нужную запись, подключая ее к списку "свободного места". Затем выбирает запись, в поле "статус" которой имеется пометка "готов", и запускает соответствующий ей процесс. |
4 | Сигнал изменения значения семафора | Изменяет значение семафора. Проверяет все записи прерванных процессов, не ждут ли они изменения состояния этого семафора и если да, то изменяет их статус на "готов". |
Для ускорения обработки управляющей процедурой всех записей последние хранятся не в виде последовательных записей (массива), а в виде списковой структуры. При организации списковой структуры проблема "сборки мусора" решается автоматически, ибо свободная запись сразу подключается к списку "свободного места".
Операции над процессами служат для их создания, обработки и уничтожения. Наиболее типичные операции над процессами: создать новый процесс; уничтожить процесс; приостановить процесс; активизировать процесс; установить приоритет процесса; определить состояние процесса.
Автоматический контроль функционирования ЭВМ предполагает получение каким-либо способом информации об ошибках. Причем для исправления ошибок требуется более полная информация. Программные методы базируется на использовании специальных методов и пакетов контролирующих программ. Различают тестовый и программно-логический контроль. Тестовый контроль осуществляется в ЭВМ периодически с помощью программ-тестов.