Вектор переривань та процедура обслуговування переривань
Категория реферата: Топики по английскому языку
Теги реферата: реферати українською мовою, шпаргалки по истории
Добавил(а) на сайт: Живков.
1 2 3 4 5 6 7 8 9 | Следующая страница реферата
Вектор переривань та процедура обслуговування переривань
Контрольна робота з дисципліни „Програмне забезпечення автоматизованих систем”
Виконав ст. гр. КНз-21 Босак Андрій Олексійович
Луцький інститут розвитку людини Відкритого міжнародного університету розвитку людини „Україна”.
Луцьк 2005.
Звернення до функцій DOS і BIOS здійснюється за допомогою програмних переривань (команда ІNT).
Система переривань машин типу IBM PC у принципі не відрізняється від будь-якої іншої системи векторизованих переривань. Самий початок оперативної пам'яті від адреси 0000h до 03FFh відводиться під вектори переривань - чотирьохбайтові області, в яких зберігаються адреси програм обробки переривань (ПОП). У два старші байти кожного вектора записується сегментна адреса ПОП, в два молодші - відносна адреса точки входу в ПОП в сегменті. Вектори, як і відповідні їм переривання, мають номери, які називаються типами, причому вектор з номером 0 (вектор типу 0) розташовується починаючи з адреси 0, вектор типу 1−з адреси 4, вектор типу 2− з адреси 8 і т.д. Вектор з номером N займає, таким чином, байти пам'яті від N*4 до N*4+2. Всього у виділеній під вектори області пам'яті поміщається 256 векторів.
Одержавши сигнал на виконання процедури переривання з певним номером, процесор зберігає в стеку виконуваної програми слово прапорів, а також сегментну і відносну адресу програмного сегменту (вміст CS і IP) і завантажує CS і IP з відповідного вектора переривань, здійснюючи тим самим перехід на ПОП (рис 1).
Програма обробки переривання зазвичай закінчується командою повернення з переривання IRET, що виконує зворотні дії - завантаження IP, CS і регістра прапорів із стека, що приводить до повернення в основну програму в точку, де вона була перервана.
Запити на виконання процедури переривань можуть мати різну природу. Перш за все розрізняють апаратні переривання від периферійних пристроїв або інших компонентів системи і програмні переривання, що викликаються командою INT, яка використовується, зокрема, для програмного звернення до функцій DOS і BIOS. Сигнали, що збуджують апаратні переривання, можуть ініціюватися ланцюгами самого процесора, наприклад, при спробі виконання операції ділення на нуль (такі переривання називаються внутрішніми, або відмовами), а можуть приходити з периферійного устаткування (зовнішні переривання). Незалежно від джерела, процедура переривання, описана вище, завжди виконується однаково, як для апаратних, так і для програмних переривань.
Велика частина векторів переривань зарезервована для виконання визначених дій; частина з них автоматично заповнюється адресами системних програм при завантаженні системи. Вектори з наступними номерами можуть представляти особливий інтерес для користувача:
00h - ділення на 0;
0lh - покрокове виконання (при TF=1);
02h - немасковане переривання (виведення NMI процесора)
03h - команда INT без числового параметра;
04h - INTO - переривання по переповненню (ініціюється апаратно, але лише за наявності в програмі команди INTO);
08h - переривання від таймера (апаратне);
09h - переривання від клавіатури (апаратне);
0Ah - зарезервовано для підключення нестандартного пристрою (апаратне);
0Bh - другий послідовний порт COM2 (апаратне);
0Сh - перший послідовний порт СОМ1 (апаратне);
0Dh - жорсткий диск (апаратне); 0Eh - гнучкий диск (апаратне);
0Fh - паралельний порт (принтер LPT1) (апаратне);
10h - відеодрайвер BIOS;
13h - драйвер BIOS диска;
Рекомендуем скачать другие рефераты по теме: персонал диплом, реферат германия, реферат государственный.
1 2 3 4 5 6 7 8 9 | Следующая страница реферата