
- •1. Віртуальна пам’ять. Види віртуальної пам’яті.
- •3 Види вірт.Памяті:
- •2. Перетворення лінійної адреси у фізичну при сторінковій організації пам’яті.
- •3. Визначення ос наявності або відсутності сегмента у пам’яті.
- •4. Визначення ос наявності або відсутності сторінки у пам’яті.
- •5. Механізм включення віртуальної пам’яті.
- •6. Плоска модель пам’яті.
- •9. Дескриптор сегменту. Види дескрипторів....
- •10. Таблиця сегментів переривань та її призначення.
- •11. Виключення. Види виключень.
- •12. Структури даних.Опис структур
- •13. Доступ до примірників структур даних.
- •14. Записи даних. Застосування записів даних.
- •15. Доступ до примірників записів даних. Див. Пункт 14.
- •16. Порядок виконання команд після повернення з обробки відмови.
- •17. Структура tss та її призначення. Бітова карта введення/виведення, її призначення.
- •18. Перемикання задач. Умови повернення в основну задачу.
- •19. Дескриптор сегменту. Види дескрипторів.
- •20. Класифікація дескрипторів користувача.
- •21. Шлюзи. Призначення шлюзів. Види шлюзів
- •22. Байт доступу. Його структура та призначення.
- •23. Система привілеїв та її застосування.
- •24. Захист пам’яті.
- •25. Рівні привілеїв дескриптора.
25. Рівні привілеїв дескриптора.
Є режим проца – захищений режим. Захищений він того, що є певні механізми, котрі організовують захист. Захист може діяти як на рівні сторінок, так і на рівні сегментів. Смисл в тому, щоб програма не влізла в чужу область пам’яті (точнш в область пам’яті більш привілейованої проги, зокрема системи) і не змінила його. Для цього вводять рівні привілегій. Є такі рівні привілегій:
рівень привілегій запита – записано в 2 молодших бітах селектора сегментів – RPL. Визначає запитувані привілегії і дозоляє звертатись до сегмента програмам із вищими пріоритетами на рівні пріоритету запита – фактично пониження пріоритету проги для сегмента;
рівень привілегій дескриптора – записано в бітах 6-5 дескриптора сегментів – DPL. Поле визначає рівень привілегій сегмента або шлюза, вказує, по крайній мірі, кий рівень привілегій повинна мати програма щоб звернутися до цього сегмента або шлюзу;
рівень привілегій програми – коли селектор завантажено в регістр CS, тобто туди записано селектор сегмента коду, то його обзивають CPL.
Код рівнів привілегій
0 – максимальний – ОС;
1 – дрова, сервіси системи;
2 – оболонка, сервіси системи;
3 – для юзерських прог.
Фактично у всіх порівняннях порівнюють саме рівень DPL із максимумом двох чисел RPL і CPL. Визначають ефективний рівень привілегій EPL=max(CPL,RPL).
CPL і RPL – однозначні. А DPL – ні. В залежності від того що описує дескриптор він може визначатися як (далі на рос.)
Сегмент данных. DPL определяет наибольший номер уровня привилегий, который программа или задача может иметь для доступа к этому сегменту. Например, если DPL сегмента данных равен 1, то только программы, работающие на уровнях 0 и 1 (т.е. имеющие CPL 0 или 1) могут обращаться к этому сегменту.
Неподчинённый (т.е. обычный) сегмент кода, без использования шлюза вызова. DPL определяет уровень привилегий, который должна иметь программа или задача для доступа к этому сегменту. Например, если DPL неподчинённого сегмента кода равен 0, то только программа, работающая на CPL = 0 может обратиться к этому сегменту.
Шлюз вызова. DPL определяет номер наибольшего уровня привилегий, который может иметь текущая программа или задача для доступа к этому шлюзу вызова (правило доступа - такое же, как и для сегмента данных).
Подчинённый или неподчинённый сегмент кода, доступный через шлюз вызова. DPL определяет наименьший номер уровня привилегий, который должна иметь программа или задача для доступа к этому сегменту. Например, если DPL подчинённого сегмента кода равен 2, то к нему будут иметь доступ только программы с CPL 2 или 3.
TSS. DPL определяет наибольший номер уровня привилегий, с которого программа или задача может обратиться к этому TSS (правила доступа - такие же, как и для сегмента данных).