Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОС (ШПОРЫ).doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
267.26 Кб
Скачать

7. Внешние (асинхронные) и внутренние (синхронные) прерывания

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

Внешние прерывания вызываются асинхронными событиями, которые происходят вне прерываемого процесса:

прерывания от таймера;

прерывания от внешних устройств (прерывания по вводу-выводу);

прерывания по нарушению питания;

прерывания с пульта оператора вычислительной системы;

прерывания от другого процессора или другой вычислительной системы.

Внутренние прерывания вызываются событиями, которые связаны с работой процессора и являются синхронными с его операциями:

при нарушении адресаци;

при наличии в поле кода операции незадействованной двоичной комбинации;

при делении на ноль;

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

от средств контроля (обнаружение ошибки четности, ошибок в работе различных устройств);

попытка использования команды, запрещенной в данном режиме (привилегированные команды – команды ввода-вывода, переключения режима работы центрального процессора, команды инициализации некоторых системных регистров процессора).

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

Программное управление специальными регистрами маски (маскирование сигналов прерывания) позволяет реализовать различные дисциплины обслуживания:

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

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

  • по принципу стека (по дисциплине LCFS – Last Come First Served – последним пришел, первым обслужен), т.е. запросы с более низким приоритетом могут прерывать обработку прерывания с более высоким приоритетом. Для этого маска не накладывается ни на один из сигналов прерывания и не выключается система прерываний.

Для правильной реализации последних двух дисциплин нужно обеспечить полное маскирование системы прерываний при выполнении шагов 1-4 и 6-7. это необходимо для того, чтобы не потерять запрос и правильно его обслужить. Многоуровневое прерывание должно происходить на этапе обработки прерывания, а не на этапе перехода с одного процесса вычислений на другой.

9. Вычислительный процесс и ресурсы

Последовательный процесс (задача – task) – это отдельная программа с ее данными, выполняющаяся на последовательном процессоре (т.е. таком процессоре, в котором текущая команда выполняется после завершения предыдущей).

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

Концепция процесса предполагает два аспекта:

  • процесс является носителем данных;

  • процесс выполняет задачи, связанные с обработкой данных.

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