Селектор (інформатика)
Селектор (англ. selector) — число, що зберігається в сегментному регістрі; це 16-бітна структура даних, яка є ідентифікатором сегменту. Селектор вказує не на сам сегмент в пам'яті, а на його дескриптор у таблиці дескрипторів[ru]. Селектор знаходиться у сегментному регістрі (CS, DS, ES, FS, GS, SS).
У реальному режимі вміст кожного сегментного регістра являє собою номер параграфа — 16-байтова ділянка пам'яті, вирівняна на межу 16 байт.
У захищеному режимі кожний сегментний регістр поділяється на три частини, як зображено нижче:
15 3 2 1 0 +--------------------+ | Index | TI | RPL| +--------------------+
Біт TI в даному випадку вказує, яка таблиця дескрипторів повинна використовуватись (нуль відповідає глобальній таблиці дескрипторів, одиниця — локальній таблиці дескрипторів).
Поле Index є номером (індексом) дескриптора, який повинен використовуватися при вираховуванні лінійної адреси.
Поле RPL використовується для контролю прав доступу програми до сегмента[en] і є запрошуваним рівнем переваг. Частим випадком RPL є теперішній рівень переваг — CPL, значення якого в будь-який момент знаходиться в сегментному регістрі CS.
Ця стаття має кілька недоліків. Будь ласка, допоможіть удосконалити її або обговоріть ці проблеми на сторінці обговорення.
|
Це незавершена стаття про телекомунікації. Ви можете допомогти проєкту, виправивши або дописавши її. |