Cтраница 1
![]() |
Модель системы массового обслуживания управляющей ЭВМ для обработки программ с приоритетом. [1] |
Прерванные программы завершаются полностью. [2]
Состояние прерванной программы запоминается в специальном регистре, называемом словом состояния старой программы, а уюво состояния новой программы ( Program Status Word - PSW) 1ринимает значение слова состояния соответствующей подпрограм-лы обработки прерывания. По информации, содержащейся в PSW, ентральный процессор определяет адрес следующей выполняемой команды. После того как прерывание будет обработано, управление / гожет быть возвращено прерванной программе или же передано гекоторой другой программе. Поскольку вся информация, необхо-гимая для работы прерванной программы, была автоматически за-юмнена в ее PSW, то выполнение этой программы может быть про-юлжено сразу же после возврата ей управления. [3]
Выполнение прерванной программы может быть продолжено, в этом случае управление будет передано команде, следующей за командой ввода-вывода. [4]
![]() |
Замена слова состояния программы при прерывании. [5] |
Если выполнение прерванной программы необходимо продолжить, старое PSW для этой программы вновь заносится в регистр PSW. Биты 40 - 63 старого PSW определяют адрес команды, начиная с которой должно продолжаться выполнение прерванной программы. [6]
Если продолжение прерванной программы связано с завершением какого-либо события, то задача переводится в режим ожидания, а система выбирает очередную работу. [7]
Супервизор подготавливает прерванную программу к дальнейшей обработке передачей соответствующего ССП в область новых ССП. Очередной сигнал прерывания вызовет загрузку этого ССП в процессор, и выполнение программы будет продолжено. Супервизор может инициировать программу путем загрузки ССП в процессор с помощью команды ЗАГРУЗИТЬ ССП А, где А - адрес ячейки основной памяти, начиная с которой размещается ССП. Данная команда является привилегированной. [8]
![]() |
Типичная последовательность прерывания. [9] |
Возврат в прерванную программу осуществляется командой возврат из прерывания. В МП 8080 для возврата из прерывания используется команда RET. С прерываниями связаны также команды EI и DI. Команда EI разрешает МП распознавать и реагировать на прерывания, а команда DI заставляет МП игнорировать все прерывания. [10]
Возврат к прерванной программе осуществляет заключительная часть прерывающей программы, в которой команды передачи данных с автоинкрементной прямой адресацией по указателю стека производят передачу из стека сохраненных в нем состояний общих регистров в соответствующие регистры. Последней командой прерывающей программы - командой Возврат из прерываний - первое слово вектора состояния прерванной программы загружается из стека в счетчик команд, а второе слово - в регистр слова состояния процессора. Передача каждого слова сопровождается увеличением УС на два. После этого восстанавливается выполнение прерванной программы. [11]
Для того чтобы прерванная программа могла быть продолжена после обслуживания очередного запроса на прерывание с того места, на котором она была приостановлена, состояние ЦП должно быть восстановлено. Состояние программно-доступных регистров может быть сохранено в памяти МС, а затем восстановлено непосредственно перед возвратом в прерванную программу. Этот процесс называется контекстным переключением и выполняется как программными, так и аппаратными средствами. [12]
Предполагается, что прерванные программы соревнуются за право получения машинного времени с вновь поступающими запросами. [13]
Предполагается, что прерванные программы соревнуются за право получения машинного времени с вновь поступающими запросами. [14]
Запоминает слово состояния прерванной программы в определенных ячейках постоянно фиксированной области памяти. [15]