Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
AOS_otvety_1.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
3.29 Mб
Скачать

2 Базисных свойства страничной организации:

  1. размер страницы = степени двойки

Степень – это количество младших разрядов смещения;

Все остальные разряды – номер страницы.

2 16 – значит 16 разрядов – это смещение.

  1. смещения виртуальное и физическое равны (они отображаются непрерывно);

Преобразование виртуальных номеров страниц в физические при страничной организации:

  1. Надо получить адрес нужного дескриптора в Таблице Страниц

Есть:

  • адрес начала таблицы страниц (АТ) – хранится в спец регистре процессора

  • длина записи в таблице страниц (Л) – системная константа

  • номер виртуальной страницы Р – это старшие разряды виртуального адреса (известен размер страницы)

Адрес дескриптора = АТ + (Р * Л);

  1. Из дескриптора извлекается номер физической страницы – Н

  2. К номеру физической страницы добавляется смещение С (младшие разряды виртуального адреса)

Типичная машинная инструкция требует 3-4 обращения к памяти (взять команду, данные, записать результаты). Каждое обращение – требует преобразования адреса либо обработку страничного прерывания. Это снижает производительность системы, поэтому нужна оптимизация виртуальной памяти:

  • Аппаратный механизм получения физического адреса по виртуальному

  • Размер страницы = степени двойки (можно заменить сложение конкатенаций, это проще);

  • Кэширование таблицы страниц (хранение наиболее часто используемых записей в регистрах);

Также для производительности важна частота ошибок страниц. Она зависит от размера страницы и алгоритмов вытеснения страниц из памяти.

Основной смысл алгоритмов: вытеснение страниц, к которым дольше всего НЕ БУДЕТ обращений.

  • Случайный выбор (т.к. предсказать сложно, дает неплохие результаты за счет отсутствия всяческих вычислений)

  • Страница, которая дольше всего не использовалась

  • Страница, к которой было меньше всего обращений за период времени (для каждой страницы ведется счетчик обращений)

Кроме того, используется принцип УПРЕЖДАЮЩЕЙ загрузки:

  • В память загружается не одна страница, а вместе с прилежащими к ней.

Второй важный критерий – размер страницы.

  • Чем больше размер страницы – тем меньше страничных прерываний

  • Чем больше размер – тем меньше записей в таблице страниц, тем меньше размер таблицы страниц, а она ведь хранится в памяти!

  • Но чем больше страница – тем больше фиктивная область

Типичный размер страницы – несколько килобайт – в Интел Пентиум – 4 килобайта.

Еще можно хранить в памяти не всю таблицу страниц:

Организуется несколько уровней таблицы страниц:

  • Виртуальные адреса делятся на разделы, а разделы делятся на страницы.

  • Размер раздела – тоже степень двойки

  • У каждого раздела своя таблица страниц

  • Размер таблицы страниц раздела = размеру страницы

  • Инфа о разделах собрана в таблицу разделов, именно она всегда в памяти

  • Адрес таблицы разделов – в специальном регистре процессора (игла в яйце, яйцо в утке….)

Итого:

  • Экономится память

  • Снижается производительность (добывание страницы занимает больше усилий и времени)

Размер страницы 2Н

Размер раздела – 2К

Н разрядов – смещение

К разрядов – номер виртуальной страницы

Что осталось – номер раздела

Также страничную организацию памяти можно использовать и без выгрузки разделов на диск. Она высоко реактивна и дает низкую фрагментацию – используется в ОС Novell Netware 3 и 4;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]