Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
АРХІТЕКТУРА КОМП.doc
Скачиваний:
55
Добавлен:
28.10.2018
Размер:
453.12 Кб
Скачать

Сторінкова організація пам'яті

Основна думка зводиться до формування таблиць описання пам'яті, які визначають стан її окремих сегментів/сторінок тощо. У разі нестачі пам'яті операційна система може відвантажити частину даних з оперативної пам'яті на диск, а до таблиці описів внести зазначення на відсутність цих даних у пам'яті. При спробі звернення до відсутніх даних процесор сформує виключення (різновид переривання) і віддасть управління операційній системі, яка поверне дані до пам'яті, а потім поверне управління програмі. Таким чином для програм процес підкачки даних з дисків відбувається непомітно.

13. Кеш–пам’ять.

Обмін даними всередині процесора відбувається набагато швидше ніж обмін даними між процесором і оперативною пам'яттю. Тому, для того щоб зменшити кількість звертань до оперативної пам'яті, всередині процесора створюють так звану надоперативну або кеш-пам'ять. Коли процесору потрібні дані, він спочатку звертається до кеш-пам'яті, і тільки якщо там потрібні дані відсутні, відбувається звертання до оперативної пам'яті. Чим більший розмір кеш-пам'яті, тим більша ймовірність, що необхідні дані знаходяться там. Тому високопродуктивні процесори оснащуються підвищеними обсягами кеш-пам'яті. Розрізняють кеш-пам'ять першого рівня (виконується на одному кристалі з процесором і має об'єм порядку декілька десятків Кбайт), другого рівня (виконується на окремому кристалі, але в межах процесора, з об'ємом в сто і більше Кбайт) та третього рівня (виконується на окремих швидкодійних мікросхемах із розташуванням на материнській платі і має обсяг один і більше Мбайт)

Кеш (Cache) — спеціальний вид пам'яті або частина ОЗП, де зберігаються копії часто використовуваних даних. Забезпечує до них швидкий доступ. Кеш пам'яті зберігає вміст і адресу ділянки ОЗП, до якої часто звертається процесор. При звертанні процесора до адреси пам'яті, кеш перевіряє наявність у себе цієї адреси. Якщо він її знаходить, обмін даними виконується між процесором і кешем; якщо ні — між процесором і ОЗП. Кеш ефективний, коли швидкість роботи пам'яті менша за швидкість роботи процесора.

Кеш — це швидка буферна пам'ять невеликої місткості, що розташована поміж процесором і основною пам'яттю. Кеш працює на повній швидкості процесора і не пригальмовує його роботу. Кеш (cache в перекладі з англ. — тайник) лишається прозорим для програміста, тому що система інструкцій процесора, як правило, не містить команд роботи з кешем. При поясненні роботи кеша можна прийняти, що процесор також не «бачить» кеш і генерує адреси пам'яті так, ніби кеша немає. Проте кеш, як правило, існує, і на апаратному рівні перехоплює сигнали процесора читання/запис, а коли треба, то надає процесору швидкі копії інформаційних кодів, які тимчасово зберігає у власній робочій пам'яті. Якщо кеш спроможний підмінити собою пам'ять (у понад 96-98 відсотків випадків), тоді він за рахунок власних ресурсів задовольняє запит процесора. Процесор не пригальмовується і залишається працювати на повній швидкості. Коли «підміна» пам'яті неможлива (менше від двох-чотирьох відсотків випадків), тоді кеш залучає до роботипам'ять, обмін з якою суттєво пригальмовує процесор.

Усі завдання, пов'язані з перехопленням запитів від процесора на роботу із пам'яттю, вирішує частина апаратури кешу під назвою контролер кешу. Друга частина апаратури кешу містить невелику робочу пам'ять, де зберігають вміст копій комірок головної пам'яті, що брали участь в обслуговуванні останніх, тобто «найсвіжіших» запитів процесора. Важливо, що вміст комірок головної пам'яті копіюється до пам'яті кешу разом зі своїми адресами. Саме ці копійовані адреси і дозволяють контролеру кешу приймати рішення про спроможність буферної пам'яті задовольнити конкретний процесорний запит без залучення до обміну повільної головної пам'яті.