Разделы:


Best links:

Дескрипторы и шлюзы

        Далее приводятся форматы дескрипторов шлюзов:

1. Шлюз задачи.

            dw       0

            dw       TSS_sel                        ; Селектор TSS

            db        0

            db        access_rights                ; Права доступа сегмента TSS

            dw       0

Image

Рис. 5.3. Формат шлюза задачи.

        Обратите внимание на то, что бит 4 в access_rights, соответствующий биту S в формате дескриптора, равен 0. Это значит, что дескриптор описывает системный объект и биты 0..3 в access_rights определяют тип этого объекта.         Первое и последнее слова (dw) в формате дескриптора содержат 0, т.к. любая задача определяется своим дескриптором, на который и ссылается селектор TSS (подробно о задачах см. в разделе "Мультизадачность").

2. Шлюз прерывания.

            dw       offset_low        ; Младшая часть смещения

            dw       selector                        ; Селектор сегмента кода

            db        0

            db        access_rights    ; Права доступа

            dw       offset_hi           ; Старшая часть смещения

        Шлюз прерывания через селектор и смещение задаёт адрес обработчика прерывания.

Image

Рис. 5.4. Формат шлюза прерывания.

3. Шлюз ловушки.

            dw       offset_low        ; Младшая часть смещения

            dw       selector                        ; Селектор сегмента кода

            db        0

            db        access_rights    ; Права доступа

            dw       offset_hi           ; Старшая часть смещения

        Шлюз ловушки через селектор и смещение задаёт адрес обработчика прерывания.

предыдущаяследующая