Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпоры к экзамену,3 лабы(4 вар) / Ответы Гуров 2011 (1).doc
Скачиваний:
71
Добавлен:
10.05.2014
Размер:
1.01 Mб
Скачать

Обращение к более привилегированным программам через шлюз вызова

Структура дескриптора шлюза вызова

Дескриптор шлюза вызова – точка куда разрешён доступ

P– бит присутствия

DPL– уровень привилегий, определяет уровень привилегий программ, которым разрешён доступ к данной программе.

WC(wordcounter, счетчик слов) – количество слов, которое передаётся в новую программу в качестве параметров.

К данной программе разрешён доступ, лишь тем программам, у которых дескриптор шлюза вызова размещён в её таблице дескрипторов (не участвуют все регистры, кроме регистра TSS)

Нельзя попасть к программам которые не прописаны в шлюзе дескрипторов.

  1. Многозадачный режим работы микропроцессора, аппаратные средства поддержки многозадачности: регистр задачи, дескриптор сегмента состояния задачи, сегмент состояния задачи. Механизм переключения задач.

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

Для аппаратной поддержки многозадачности используется:

  1. Сегмент состояния задачиTSS

TSS– область памяти, в которой хранится информация о внутреннем состоянии МП, на момент переключения задачи.

К TSSразрешён доступ лишь на аппаратном уровне.

  1. ДескрипторTSS

  2. Регистр задачиTR– хранится селектор дескриптора TSS

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

TSS– сохраняет информацию, для переключения задач.

Содержимое tss:

  • Минимальная длина 104 байта

Обязательно сохраняется

  • Регистры – EAX, …….., EDI

  • Сегментные регистры: CS, DS,….

  • Регистр флагов: EFLAGS

  • Регистр указателя команд: EIP

  • Информация о положении стека: ESP0, SS0, ESP1, SS1, ESP2, SS2 (ESPx-сегментный регистр, SSx– указатель стека)

  • Сохраняется информация о более привилегированной программе

  • Регистр CR3 (базовый адрес каталога таблицы страницы)

  • Селектор возврата (TR предыдущей задачи)

  • LDTR

CR0 не сохраняется, т.к. страничный механизм включается глобально для всей системы.

Дополнительная часть tss:

  • Поле дополнительной информации ОС (переменное поле)

  • Битовая карта ввода-вывода (БКВВ) – каждому внешнему устройству в БКВВ соответствует 1 бит. Если этот бит = 0, то программа может обратится этому внешнему устройству, при любом значении поля IOPL в регистре флагов (указывает уровень привилегий для обращения к устройству).

Переключение задач осуществляется командами межсегментной передачи управления, в том случае, если происходит обращение к дескриптору TSS.

Структура команды межсегментной передачи управления

  • JMP– безусловный переход

  • CALL– переход с последующим возвратом назад

Если в CSне селектор сегментных кодов, аTSS, то МП переключает задачу.

Дескриптор TSSимеет структуру сегмента (начальный адрес, длина, байт доступа, атрибуты)

Структура байта доступа в дескрипторе tss

7

6

5

4

3

2

1

0

P

DPL

0

M

0

B

1

  • P– присутствие в памяти

  • DPL– уровень привилегий

  • M.

  • B=1при переключении на данную задачу, таким образом запрещается вызов одной и той же задачи (сама себя)

Схема переключения задач

Рисунок 5 - Переключение задач

  1. Селектор ищет в таблице дескриптор. Если это дескриптор TSS, то переключаем задачу, сохраняем информацию о текущей задаче. В МП в «Теневом регистре» находится дескриптор TSS текущего процесса.

  2. Переписываем информацию «Текущей задачи»

  3. В теневой регистр пишем новый дескриптор и остальную информацию.

  4. Информацию для возврата сохраняем в «новой задаче» (селектор возврата для CALL). При этом NT бит в регистре флагов EFLAGS=1 (NT=1 – бит вложенной задачи, только для CALL)

  5. Селектор пишет в TR «новой задачи»

Завершение задачиосуществляется командамиRETилиIRET. При этом МП анализирует битNTи еслиNT =1, то возврат осуществляется помеханизму переключения задач, приNT=0 обычным образом, т.е. выталкивания из стека регистров флагов, указателя команд и т.д.

  1. Назначение, принципы работы и организация кэш-памяти. Типы кэш-памяти. Способы организации кэширования (сквозная и обратная запись). Организация внутренней кэш-памяти.

КЭШ памятьпредставляет собой: организованное в виде Ассоциативно Запоминающего Устройства (АЗУ) быстродействующую буферную память, которая располагается между регистрами МП и относительно медленной оперативной памятью и хранит наиболее часто используемую информацию, совместно с её признаками (Тэгами), в качестве которых выступает часть адресного кода.

После формирования физического адреса МП сначала обращается в КЭШ память, если искомой информации нет (КЭШ промах), то происходит считывание из ОЗУ обычным образом, информация передаётся в МП и параллельно записывается в КЭШ память. Запись информации в КЭШ память происходит строками длинной от 16 до 24 байт. Это позволяет при обращении по соседним адресам извлечь информацию из КЭШ памяти, а не ОЗУ (КЭШ попадание).