Приветствую Вас, Гость! Регистрация RSS
Четверг, 25.04.2024


Главная » Файлы » Доклады » Доклады

Регістри GDTR, LDTR, IDTR, TR і CPUID.Системні інструкції.
[ Скачать с сервера (3.86 Mb) ] 13.02.2018, 23:42
Існує 4 регістри для управління пам’яттю: GDTR, LDTR, IDTR, TR, які вказують розміщення структур даних, що призначені для управління сегментами пам’яті. Для зчитування та завантаження цих регістрів існують спеціальні інструкції.

Регістр GDTR(Global Destcriptor Table Register) призначений для зберігання 32-бітової базової адреси і 16-бітового обмежувача(table limit) таблиці для GDT. Базова адреса вказує лінійну адресу байта 0 GDT; обмежувач таблиці вказує кількість байтів в таблиці.
Інструкції LGDT і SGDT, відповідно, зчитують і записують регістр GDTR. При увімкненні живлення або скиданні процесора, базова адреса встановлюється в значення по замовченню – 0 і обмежувач – FFFFH. Нова базова адреса повинна бути завантажена в GDTR як частина процесу ініціалізації процесора для операцій захищеного режиму(protected mode).
Регістр LDTR(Local Destcriptor Table Register) зберігає 16-бітний селектор сегмента, 32-бітну базову адресу, 16-бітний обмежувач сегменту і атрибути дескриптора для LDT. Базова адреса вказує лінійну адресу байта 0 сегменту LDT; обмежувач сегменту вказує кількість байтів в сегменті.
Інструкції LLDT і SLDT, відповідно, зчитують і запам’ятовують частину регістру LDTR – сегментний селектор. Сегмент, який містить LDT повинен мати описувач сегменту (segment descriptor) в GDT. Коли інструкція LLDT зчитує селектор сегменту в LDTR, базова адреса, обмежувач і атрибути дескриптора з LDT автоматично завантажуються в LDTR.
При переключенні задачі, LDTR автоматично завантажується сегментним селектором і дескриптором для LDT нової задачі. Вміст LDTR автоматично не запам’ятовується до того, як не запишеться нова LDT інформація в регістр.
При увімкненні живлення або скиданні процесора, базова адреса встановлюється в значення по замовченню – 0 і обмежувач – FFFFH.
Регістр IDTR(Interrupt Descriptor Table Register) зберігає 32-бітову базову адресу і 16-бітовий табличний обмежувач для IDT. Базова адреса вказує лінійну адресу байту 0 IDT; табличний обмежувач вказує кількість байтів в таблиці.
Інструкції LIDT і SIDT, відповідно, зчитують і запам’ятовують регістр IDTR. При увімкненні живлення або скиданні процесора, базова адреса встановлюється в значення по замовченню – 0 і обмежувач – FFFFH. Базова адреса і обмежувач можуть бути змінені під час процесу ініціалізації процесора.
Регістр задач – TR(Task Register) - зберігає 16-бітовий селектор, 32-бітову базову адресу і атрибути дескриптора для TSS біжучої задачі. Він посилається на дескриптор TSS в GDT. Базова адреса вказує лінійну адресу байту 0 TSS; обмежувач сегменту вказує кількість байтів в TSS.
Інструкції LTR і STR, відповідно, зчитують і зберігають сегментний селектор – частину TR. Коли інструкція LTR зчитує сегментний селектор в регістр задач, базова адреса, обмежувач, атрибути дескриптора з дескриптора TSS автоматично зчитуються з TR. При увімкненні живлення або скиданні процесора, базова адреса встановлюється в значення по замовченню – 0 і обмежувач – FFFFH.
Коли відбувається переключення задачі TR автоматично завантажується сегментним селектором і дескриптором для нової задачі. Вміст TR автоматично не запам’ятовується до того, як не запишеться нова TR інформація в регістр.
Категория: Доклады | Добавил: opteuropa | Теги: курсовая работа, доповідь з права., курсач, скачать реферат, магістерська, курсова, КОНТРОЛЬНА, скачати доповідь, лабораторна робота, дипломн
Просмотров: 396 | Загрузок: 9 | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *:
Украина онлайн

Рейтинг@Mail.ru

подать объявление бесплатно