Чи завжди таблиці сторінок у пам’яті?

Деякі таблиці сторінок зберігаються в пам'яті, тоді як інші переміщуються на диск. У наведеному вище прикладі таблиця сторінок першого рівня має бути в оперативній пам’яті, доки виконується процес. Якщо процес не може знайти цю першу таблицю, він не зможе знайти будь-які дані за допомогою віртуальні адреси

віртуальні адреси

В обчислювальній техніці віртуальний адресний простір (VAS) або адресний простір є набір діапазонів віртуальних адрес, які операційна система робить доступними для процесу.

https://en.wikipedia.org › wiki › Virtual_address_space

.18 березня 2024 р

Таблиці сторінок зберігаються в пам'яті Оскільки таблиці сторінок дуже великі, ми не зберігаємо жодного спеціального вбудованого обладнання в MMU для зберігання таблиці сторінок поточного процесу. Натомість ми зберігаємо таблицю сторінок для кожного процесу десь у пам’яті.

Початкова адреса, де зберігається таблиця сторінок в основній пам’яті, зберігається в регістрі, який називається базовим регістром таблиці сторінок (PTBR).. Щоразу, коли процесу надається ЦП для виконання, диспетчер завантажує PTBR з початковою адресою таблиці процесів цього процесу.

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

У системах x86 таблиці сторінок – це структури, які використовуються центральним процесором, але вони занадто великі, щоб зберігати їх у регістрах, тому вони зберігаються в оперативній пам'яті. Будь-який процес має карту пам'яті, в якій є дві великі зони: простір користувача і простір ядра.

Основним сховищем для таблиць, оптимізованих для пам’яті, є основна пам’ять. Рядки в таблиці зчитуються з пам’яті та записуються в пам’ять.