logo
AOM / Мельник А

11.5.1. Функції системи переривання програм

Роботу комп'ютера можна представити як послідовність подій: виконання операцій, запити на введення-виведення, зміна станів зовнішніх об'єктів, якими керує комп'ютер, і т. д. Частина цих подій є програмно визначеною, тобто передбаченою в програмі, інша частина подій є програмно незалежною, тобто моменти виникнення подій наперед не­відомі. До програмно незалежних належать:

■ зупинення виконання програми, пов'язане з перевищенням виділеного часу для її виконання;

Останні три названі вище та подібні події, які ініційовані апаратними засобами та фіксуються програмою, виділяють в окремий клас подій зважаючи на їх важливість та те, що вони не є передбачуваними. Наприклад, в багатопрограмних комп'ютерних сис-

406

темах, до яких на даний час належать всі універсальні комп'ютери, необхідна фіксація таких подій з метою захисту однієї програми від модифікації іншою. Програми взаємо­діють з операційною системою комп'ютера через ці події.

Комп'ютер реагує на програмно визначені події відповідно до вказівок програми. Для реакції на програмно незалежні події в комп'ютер введено спеціальні апаратно-про­грамні засоби, які дістали назву системи переривання програм (СПП). Ці засоби є не­від'ємною частиною сучасних комп'ютерів. Без них поява будь-якої програмно незалеж­ної події приведе до необхідності повторного запуску програми.

Переривання програм - це властивість комп'ютера тимчасово переривати виконан­ня поточної програми на час виконання деяких подій і передавати керування програмі, яка спеціально передбачена для даної події.

Сигнали, які сповіщають про появу програмно незалежних подій, називають запи­тами переривання.

Програми, на виконання яких є запити, називають переривальними програмами, тобто такими, що переривають інші програми. А програми, які виконувались до появи запитів, називають перериваними програмами, тобто такими, що перериваються.

Часова діаграма процесу переривання наведена на рис. 11.8.

Тут tp- час реакції системи переривання на запит переривання; t3- час запам'ято­вування стану перериваної програми, tвпп - час виконання переривальної програми, tв- час виходу з переривальної програми та повернення до перериваної програми (від­новлення її стану).