Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаб4.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
269 Кб
Скачать
☆

Сторінковий розподіл

Віртуальний адресний простір кожного процесу ділиться на частини однакового, фіксованого для даної системи розміру – віртуальні сторінки.

Вся оперативна пам'ять машини також ділиться на частині такого ж розміру –фізичні сторінки.

Розмір сторінки обирається як ступінь двійки 2k: 512, 1024, 4096 байт і т.д. Це дозволяє спростити механізм перетворення адрес.

Віртуальна адреса

Номер віртуальної

сторінки (р)

Зміщення всередині

віртуальної сторінки (dv)

Таблиця сторінок

А трибути

Н омер фізичної сторінки

Номер фізичної

сторінки (n)

Зміщення всередині

фізичної сторінки (df)

Фізична адреса

Для кожного процесу ОС створює таблицю сторінок — інформаційну структуру, що містить записи про всі віртуальні сторінки процесу.

Запис таблиці, названий дескриптором сторінки й включає наступну інформацію:

  • номер фізичної сторінки, у яку завантажена дана віртуальна сторінка;

  • ознака присутності, установлюється в одиницю, якщо віртуальна сторінка перебуває в оперативній пам'яті;

  • ознака модифікації сторінки, що встановлюється в одиницю щоразу, коли здійснюється запис за адресою у даній сторінці;

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

При кожному звертанні до пам’яті виконується пошук номера віртуальної сторінки, потім по цьому номеру визначається потрібний елемент таблиці сторінок, і з нього витягається інформація, що описує сторінку. Далі аналізується ознака присутності, і, якщо сторінка перебуває в оперативній пам’яті, виконується перетворення віртуальної адреси у фізичну.

Якщо ж потрібна віртуальна сторінка в цей момент вивантажена на диск, то відбувається сторінкове переривання. Виконуваний процес переводиться в стан очікування, і активізується інший процес із черги процесів, що перебувають у стані готовності. Паралельно програма обробки сторінкового переривання знаходить на диску необхідну віртуальну сторінку й намагається завантажити її в оперативну пам’ять. Якщо в пам’яті є вільна фізична сторінка, то завантаження виконується негайно, якщо ж вільних сторінок немає, то на підставі прийнятої в даній системі стратегії заміщення сторінок вирішується питання про те, яку сторінку варто вивантажити з оперативної пам’яті.

Віртуальна адреса при сторінковому розподілі може бути представлена у вигляді пари (р, dv), де p — порядковий номер віртуальної сторінки процесу (нумерація сторінок починається з 0), a dv — зміщення у межах віртуальної сторінки.

Фізична адреса також може бути представлена у вигляді пари (n, df), де n — номер фізичної сторінки, a df — зміщення у межах фізичної сторінки. Завдання підсистеми віртуальної пам’яті складається у перетворенні пари (р, dv) в (n, df).

Оскільки об’єм сторінки обирається як ступінь двійки 2k , зміщення у сторінці s може бути отримано простим відділенням k молодших розрядів у двійковому коді адреси, а номер сторінки визначає решта старших розрядів адреси.

Звідси випливає проста схема перетворення віртуальних адрес у фізичні.

Молодші розряди фізичної адреси, що відповідають зміщенню, знаходять переносом такої ж кількості молодших розрядів з віртуальної адреси. Старші розряди фізичної адреси, що відповідають номеру фізичної сторінки, визначаються з таблиці сторінок.

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