- •Билет 1 Принцип построения пэвм
- •Билет 13 Преобразование логического адреса в физический при включённой страничной адресации
- •Билет 14 Управление клавиатурой через порты
- •Билет 15 Привилегии и защита программ
- •Билет 16 Дескрипторы сегментных регистров
- •Билет 18 Таблица дескрипторов idt
- •Билет 20 Характеристики vga адаптеров
- •Билет 21 Пять компонентов защиты (см 15-1)
- •Билет 22 Классы приоритетов
- •Билет 23 Управление выводом данных на принтер
- •Билет 24 Физические и логические адреса, стек и зарезервированные области памяти
- •Билет 25 Защищённый режим
- •Билет 26 Привилегии ввода/вывода
- •Билет 27 Байт прав доступа, его структура для дескрипторов различного типа
Билет 13 Преобразование логического адреса в физический при включённой страничной адресации
В процессе преобразования линейных адресов в физические задачи могут быть размещены в памяти по одному из двух путей:
1) единая линейно-физическая область отображения поделена между всеми задачами. Этот вариант размещения возможен тогда, когда страничная организация не разрешена. В этом случае все линейные адреса совпадают с физическими адресами. При разрешенной страничной организации такой тип отображения в памяти возможен при использовании одного каталога страниц для всех задач. Используемая линейная область может превысить физически доступную область, если операционная система также дополнена страничной виртуальной памятью;
2) работа с совмещением нескольких линейно-физических отображений. Подобный тип отображения адресов имеет место при использовании нескольких каталогов страниц для каждой задачи. Поскольку PDBR (регистр базы каталога страницы в CR3) загружается из TSS с каждым переключением страниц, то каждая задача может иметь несколько разных каталогов страниц.
Исключения и их обработка
Билет 14 Управление клавиатурой через порты
Управление клавиатурой возможно через порты 60h, 61h, 64h; прерывание INT 09h; прерывание INT 15h; функции DOS (INT 21h). Доступ к клавиатуре через порты ввода-вывода является самым низкоуровневым методом доступа. Такой метод используется обычно только прерываниями INT 09h, INT 15h и драйверами клавиатуры.
С помощью порта 61h можно определить, доступен ли контроллер клавиатуры, и разрешить (запретить) доступ к нему. Причем, если значение, возвращаемое из порта 61h, содержит в седьмом разряде нуль, то контроллер клавиатуры не доступен. Пример работы с портом 61h из прерывания INT 09h:
Порт 60h предназначен для чтения данных с клавиатуры и сохранен для совместимости с клавиатурой PC XT.
С помощью порта 64h можно читать данные с клавиатуры (коды клавиш и статус), программировать и осуществлять настройку клавиатуры.
Команды контроллера клавиатуры: EDh Установить индикаторы состояния; EEh Эхо (средство диагностирования); F0h Выбрать альтернативный режим; EFh-F1h Резерв - холостые команды (NOP); F2h Идентификатор расширенной клавиатуры; F3h Установить частоту повторения клавиши; F4h Разрешить клавиатуру; F5h Запрет по умолчанию; F6h Установить условия по умолчанию; F7h-FAh Установить все клавиши; FBh-FDh Установить отдельные клавиши; FEh Послать повторно; FFh Сброс.
Рекомендуется использовать порт 60h для чтения сканкодов, а 64h – для определения статуса и программирования клавиатуры. Такое разделение функций обеспечит максимальную гибкость программам.
При программировании контроллера клавиатуры необходимо первоначально в порт 64h записать код команды, сделать задержку и затем записать байт данных.
Приоритет обработки прерываний
Организация IBM PC XT/AT и совместимых с ними РС, реализованных на базе МП Intel 80x86, основывается на открытой архитектуре, в основу которой положен принцип развитой иерархической системы прерываний базового микропроцессора. Это качество позволяет обеспечить гибкий механизм доступа к ресурсам РС системных и пользовательских программ. В системах, построенных на базе Intel 80x86, прерывания могут генерироваться собственно микропроцессором, аппаратурой, входящей в состав РС, а также программой.
Система прерываний PC AT:
1 Аппаратные прерывания: Маскируемые, Немаскируемые;
2 Программные прерывания: BIOS прерывания (DSR, ISR), DOS прерывания, Пользовательские прерывания;
3 Исключительные ситуации: Ошибки, Ловушки, Аварийные завершения.
Когда одновременно приходят запросы на выполнение нескольких прерываний, они обслуживаются в строго определенной последовательности, приведенной в табл1 для МП 80286 и в табл2 для МП 80386. Выполнение прерывания включает в себя сохранение в стеке флажков, адреса возврата (CS:IP) и настройку CS:IP на первую команду программы обработки прерывания. Если в это время произойдет разрешение другого прерывания, оно будет выполнено перед тем, как начнет выполняться первая команда программы обработки текущего прерывания. Следовательно, в этом случае последнее прерывание будет обслужено первым.
Табл1. Приоритет обработки внутренних прерываний в МП 80286
1 Исключительная ситуация из-за ошибки в команде; 2 Прерывание пошагового режима; 3 NMI; 4 Переполнение сегмента сопроцессора; 5 INTR; 6 Команда INT
Табл2. Приоритет обработки внутренних прерываний в МП 80286
1 Исключительная ситуация из-за ошибки в команде; 2 Ловушки команд INTO (арифм переполнение), INT n, INT 3; 3 Ловушка отладки в данной команде; 4 Ошибка отладки в следующей команде; 5 NMI; 6 INTR.