Відмінності між версіями «Принцип віртуальної пам'яті мікропроцесора i80286»
Ivanko (обговорення • внесок) (Створена сторінка: == Віртуальна пам'ять == Процесор i80286 може безпосередньо адресувати до 16 Мбайтів фізичної …) |
Ivanko (обговорення • внесок) (→Віртуальна пам'ять) |
||
Рядок 6: | Рядок 6: | ||
Операційна система веде облік сегментів, що знаходяться в пам'яті та на диску. Два поля дескриптора в полі доступу: біт присутності сегмента в пам'яті P і біт звертання до сегмента пам'яті A призначені для апаратної реалізації обліку сегментів. | Операційна система веде облік сегментів, що знаходяться в пам'яті та на диску. Два поля дескриптора в полі доступу: біт присутності сегмента в пам'яті P і біт звертання до сегмента пам'яті A призначені для апаратної реалізації обліку сегментів. | ||
При використанні віртуальної пам'яті непотрібні у даний момент сегменти записуються на жорсткий диск, а звільнене місце використовується потрібними даними. У дескрипторі таких "непотрібних" сегментів, у полі Base указується розміщення сегмента на жорсткому диску, одночасно у полі доступу біт Р встановлюється в 1. Коли відбувається звертання до даних розміщених у сегменті з бітом Р = 1 у полі доступу, викликається спеціальне виключення (#NP), процедура обробки котрого зчитує потрібні дані з пам'яті, змінює дескрипторні таблицю, та повторно виконує команду, котра звернулась до вказаних даних. | При використанні віртуальної пам'яті непотрібні у даний момент сегменти записуються на жорсткий диск, а звільнене місце використовується потрібними даними. У дескрипторі таких "непотрібних" сегментів, у полі Base указується розміщення сегмента на жорсткому диску, одночасно у полі доступу біт Р встановлюється в 1. Коли відбувається звертання до даних розміщених у сегменті з бітом Р = 1 у полі доступу, викликається спеціальне виключення (#NP), процедура обробки котрого зчитує потрібні дані з пам'яті, змінює дескрипторні таблицю, та повторно виконує команду, котра звернулась до вказаних даних. | ||
+ | |||
+ | ==Біт P поля доступів сегменту == | ||
+ | На рис. 1 наведені формати поля доступу всіх типів дескрипторів: дескрипторів сегментів коду, сегментів даних і системних сегментів. У всіх дескрипторів три старших біти поля доступу мають однакове призначення. | ||
+ | [[Файл:clip_image002.jpg|center|thumb|400px|Рис.1 Формати поля доступу дескриптора]] |
Версія за 20:41, 5 травня 2011
Віртуальна пам'ять
Процесор i80286 може безпосередньо адресувати до 16 Мбайтів фізичної пам'яті. Програми можуть вимагати для свого запуску об'єму пам'яті, що не існує у системі. Тоді операційна система може використати так звану віртуальну пам'ять. Основна ідея віртуальної пам'яті полягає у тому, щоб зберігати (та оновлювати) вміст великої віртуальної пам'яті на диску, "підкачуючи" окремі ділянки віртуальної пам'яті в реальну оперативну пам'ять. Можна, наприклад, зберігати усі використовувані програмою сегменти на диску, а у фізичну пам'ять записувати тільки сегменти, необхідні для виконання програми в даний момент. Операційна система веде облік сегментів, що знаходяться в пам'яті та на диску. Два поля дескриптора в полі доступу: біт присутності сегмента в пам'яті P і біт звертання до сегмента пам'яті A призначені для апаратної реалізації обліку сегментів. При використанні віртуальної пам'яті непотрібні у даний момент сегменти записуються на жорсткий диск, а звільнене місце використовується потрібними даними. У дескрипторі таких "непотрібних" сегментів, у полі Base указується розміщення сегмента на жорсткому диску, одночасно у полі доступу біт Р встановлюється в 1. Коли відбувається звертання до даних розміщених у сегменті з бітом Р = 1 у полі доступу, викликається спеціальне виключення (#NP), процедура обробки котрого зчитує потрібні дані з пам'яті, змінює дескрипторні таблицю, та повторно виконує команду, котра звернулась до вказаних даних.
Біт P поля доступів сегменту
На рис. 1 наведені формати поля доступу всіх типів дескрипторів: дескрипторів сегментів коду, сегментів даних і системних сегментів. У всіх дескрипторів три старших біти поля доступу мають однакове призначення.