Типи системних дескрипторів

Коли S (тип дескриптора) встановлено в дескриптор є системним.

Процесор розпізнає наступні типи дескрипторів.

  1. дескриптор LDT
  2. дескриптор TSS
  3. дескриптор шлюзу виклику
  4. дескриптор шлюзу пастка
  5. дескриптор шлюзу завдання
  6. дескриптор шлюзу переривання
  1. Системні дескриптори, які вказують на вхід до системних сегментах (LDT і TSS)
  2. Дескриптори шлюзів, які містять самі покажчики до точок входу в процедурах в сегментах коду і селектора їх дескриптора.

Дескрипторного сегментні таблиці - область сегментних дескрипторів. Дескрипторній таблиці може бути різних розмірів і може містити до 8192 (2 ^ 13) 8 байтниє дескрипторів.

Величина ліміту = 0 відповідає 1 байт, тому тому дескриптор сегмента 8 байт, межа GDT повинен бути на 1 менше тобто 8N-1.

1-ий дескриптор в GDT не використовується в процесорі. Селектор сегмента для цих «нульових» дескрипторів не генерує виключення, коли завантажений в регістр сегмента даних (DS. ES, FS, GS), але завжди генерує виняток в захищеному режимі, коли робиться спроба доступу до пам'яті, використовуючи дескриптор.

LDT розміщується в системному сегменті тому GDT повинна містити сегментний дескриптор для LDT сегмента. Якщо система підтримує декілька LDT, кожна таблиця повинна мати окремий селектор сегмента і сегментний дескриптор в GDT. Сегментний дескриптор для LDT може бути розміщений в будь-якому місці GDT.

Поле DPL в дескрипторі для LDT не використовується.

І так при перемиканні задач для доступу до сегментів стану завдань є два види дескрипторів.

По-перше, дескриптори сегментів стану завдань можуть перебувати тільки в глобальній дескрипторній таблиці і зазвичай мають найвищий рівень привілеїв (DPL = 0).

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

По-друге дескриптор шлюзу завдання має свій рівень привілеїв і при зверненні до нього діє механізм захисту

[CPL, RPL]<,=DPL шлюза задачи

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

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

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

Зв'язок між цими блоками під час виконання завдання здійснюється через апаратно-програмний інтерфейс. активізується системними командами CALLі JMP

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

Для того, щоб здійснювати зв'язок між модулями усередині завдання оформленими в свою чергу як самостійні завдання, вводяться апаратні засоби у вигляді прапорів, що вказують на вкладеність одного завдання в іншу.

Типи системних дескрипторів

Схожі статті