Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Регістр адреситаблиці сторінок
+ p d
Таблиця в ОЗП
АсЗП
p| сегмента (спочатку)
p' p' d
(якщо дескриптору сторінки немає у кеш-пам'яті)
ОЗП Figure: Використання асоцiативної пам’ятi для кешування рядкiв таблицi сторiнок
Сергiй Стасюк Системне програмне забезпечення Порiвняння сегментної i сторiнкової органiзацiї вiртуальної пам’ятi
При використаннi сторiнок керування пам’яттю виглядає простiшим (а значить i швидшим): для отримання реальної адреси використовується конкатенацiя, а не складання; не потрiбний контроль за порушенням меж сторiнки, оскiльки це просто не можливо; проблема розмiщення сторiнок в пам’ятi зводиться до записування сторiнки у будь-який сторiнковий кадр (на вiдмiну вiд сегментної органiзацiї, коли застосовуються вибiр “дiрки” першої вiдповiдної за розмiром, найбiльш вiдповiдної i найменш вiдповiдної). На користь сегментної органiзацiї говорить той факт, що їй не властива внутрiшня фрагментацiя, тодi як завжди є сторiнка, остання для даної роботи, яка зайнята не повнiстю.
Сергiй Стасюк Системне програмне забезпечення Порiвняння сегментної i сторiнкової органiзацiї вiртуальної пам’ятi
При сторiнковiй органiзацiї програми роздiляються на окремi, змiстовно не пов’язанi фрагменти, дiлення ж на сегменти є логiчним. Так, сегмент для розмiщення деякого масиву матиме розмiр, що вiдповiдає цьому масиву. Роздiлення програм i даних мiж декiлькома процесами в сегментнiй системi реалiзується простiше. Якщо, наприклад, масив в сторiнковiй системi має розмiр 2, 5 сторiнки, ми вказуємо для кожної сторiнки ознаку реєнтерабельностi, але робота з неповною сторiнкою може бути дуже проблематичною. Бiльше того, якщо динамiчна структура даних розширюється з переходом на нову сторiнку, то ознаки спiльного використання сторiнок необхiдно проставляти пiд час виконання процесiв, тодi як в сегментнiй системi такi ознаки є константами.
Сергiй Стасюк Системне програмне забезпечення Сегментно-сторiнкова органiзацiя пам’ятi
Для усунення недолiкiв i об’єднання обох розглянутих вище методiв використовується їх комбiнацiя. При цьому сегменти мiстять цiле число сторiнок невеликого розмiру. Необов’язково, щоб усi сторiнки сегменту знаходилися в ОЗП одночасно, а сумiжнi сторiнки вiртуальної пам’ятi необов’язково мають бути сумiжними в реальнiй пам’ятi. Вiртуальна адреса V – це впорядкована трiйка V = < s, p, d >, де s – номер сегменту, p – номер сторiнки, d – зсув вiдносно початку сторiнки. Реальна адреса представляється парою r = < f, d >, де f – номер сторiнкового кадру.
Сергiй Стасюк Системне програмне забезпечення Сегментно-сторiнкова органiзацiя пам’ятi
00200 Регістр адреси таблиці сегментів
+ 15
+ 00300
s’
f f d
ОЗП r
Таблиця сегментів роботи Таблиця сторінок сегменту Figure: Схема сегментно-сторiнкового перетворення адрес Для пошуку номеру сторiнкового кадру по парi < s, p > можна використати асоцiативне вiдображення.
Сергiй Стасюк Системне програмне забезпечення Дiї ОС при невдалому перетвореннi адрес
Перегляд таблицi сегментiв може показати, що сегменту немає в ОЗП, тодi ОС знаходить потрiбний сегмент на ЗЗП, формує для нього таблицю сторiнок i завантажує необхiдну сторiнку в ОЗП – це так зване переривання по вiдсутностi сегменту. Можуть також виникати переривання по вiдсутностi сторiнки, по виходу за межi сегменту i по захисту сегменту.
Сергiй Стасюк Системне програмне забезпечення Приклад МП 80386
У 80386 механiзми сегментацiї i розбиття на сторiнки можуть використовуватися як незалежно, так i обоє одночасно. Розмiр сегменту може досягати 4ГiБ, а число сегментiв для одного завдання – 16000. Мiсткiсть вiртуальної пам’ятi до 64ГiБ. Розмiр сторiнки 4КiБ. Адреса реальної пам’ятi в захищеному режимi – 32 розряди. Внутрiшньокристальний кеш мiстить iнформацiю, необхiдну для доступу до 32-х сторiнок пам’ятi, до яких нещодавно виконувалося звернення. Коефiцiєнт попадання – 95-98%.
Сергiй Стасюк Системне програмне забезпечення
сегмент зсув 15 0 31 0
63 0 Базова адреса 32 + Номер каталогу
22 21
|