Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Переход к использованию симметричных многопроцессорных систем



Контроллер прерываний (8259А) не предназначен для работы в симметричных многопроцессорных системах. По этой причине начиная с МП Pentium Over Drive (Pentium второго поколения) в системе прерываний используется новый усовершенствованный контроллер прерываний APIC (Advanced Programmable Interrupt Controller Enable). Для локальных запросов прерываний APIC использует индивидуальные линии LINT0 и LINT1 по одной на процессор. Общие (разделяемые) сигналы прерываний поступают к процессорам по интерфейсу APIC. При этомконтроллеры предварительно программируются для определения функций каждого из процессоров по обработке аппаратных прерываний.

Использование механизма защиты программ от взаимных помех

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

Программы обработки прерываний размещаются на более высоком уровне привилегий. Механизм защиты позволяет использование этих программ только командами перехода с возвратом и только с использованием шлюзов (см. 2.3. Программная модель 32-разрядного микропроцессора).

Кроме этого, механизм защиты позволяет при передачах управления использовать более защищенную процедуру переключения задач.

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

· дескриптор шлюза прерывания, или

· дескриптор шлюза исключения, или

· дескриптор шлюза задачи.

Максимальное число дескрипторов в таблице – 256.

Структуры шлюзов таблицы прерываний представлены на рис.5.4.

             
Селектор Offset (Смещение в сегменте) Атрибуты
а. Структура дескриптора шлюза прерывания  
Селектор Offset(Смещение в сегменте) Атрибуты
б. Структура дескриптора шлюза исключения  
Селектор поле не используется Атрибуты
с. Структура дескриптора шлюза исключения.  
Рис.5.4. Структура дескрипторов таблицы прерывания  
               

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

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

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

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

Вопросы для самопроверки:

1. Понятие исключения – отказ (fault). Приведите пример.

2. Понятие исключения – ловушка (trap). Приведите пример.

3. Понятие исключения – аварийное завершение (abort). Приведите пример.

4. Особенности работы контроллера прерывания в симметричных многопроцессорных системах.

5. Содержимое строк таблицы прерывания в защищенном режиме.

6. Отличия в процедуре прерывания при использовании дескрипторов ловушки и прерывания.





Дата публикования: 2014-11-03; Прочитано: 273 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.008 с)...