"justify"> Основна пам'ять сучасних комп'ютерів реалізується на мікросхемах статичних та динамічних запам'ятовуючих пристроїв з довільною вибіркою (ЗУПВ). Мікросхеми статичних ЗУПВ (СЗУПВ) мають менший час доступу і не вимагають циклів регенерації. Мікросхеми динамічних ЗУПВ (ДЗУПВ) характеризуються більшою ємністю і меншою вартістю, але вимагають схем регенерації і мають значно більший час доступу.
На відміну від динамічних статичні ЗУПВ не вимагають регенерації, і час доступу до них збігається з тривалістю циклу. Для мікросхем, що використовують приблизно одну і ту ж технологію, ємність ДЗУПВ в 4-8 разів перевищує ємність СЗУПВ, але останні мають у 8 - 16 разів меншу тривалість циклу і велику вартість.
Узгодження продуктивності сучасних процесорів зі швидкістю основної пам'яті обчислювальних систем залишається однією з найважливіших проблем.
Для організації кеш-пам'яті більшою мірою важливо зменшення затримки пам'яті, ніж збільшення смуги пропускання. Однак при збільшенні смуги пропускання пам'яті можливе збільшення розміру блоків кеш-пам'яті без помітного збільшення втрат при промахах.
Збільшення розрядності основної пам'яті. Кеш-пам'ять першого рівня у багатьох випадках має фізичну ширину шин даних, відповідну числу розрядів в слові, оскільки більшість комп'ютерів виконують звернення саме до цієї одиниці інформації. У системах без кеш-пам'яті другого рівня ширина шин даних основної пам'яті часто відповідає ширині шин даних кеш-пам'яті. Подвоєння або учетверение ширини шин кеш-пам'яті і основної пам'яті подвоює або учетверяется відповідно смугу пропускання системи пам'яті.
. 7.4 Віртуальна пам'ять - як засіб організації захисту даних
Загальноприйнята в даний час концепція віртуальної пам'яті з'явилася досить давно. Вона дозволила вирішити цілу низку актуальних питань організації обчислень, до числа яких належить забезпечення надійного функціонування мультипрограмних систем.
Віртуальна пам'ять ділить фізичну пам'ять на блоки і розподіляє їх між різними завданнями. При цьому вона передбачає також деяку схему захисту, яка обмежує задачу тими блоками, які їй належать. Більшість, типів віртуальної пам'яті скорочують також час початкового запуску програми на процесорі, оскільки не весь програмний код і дані їй необхідні у фізичної пам'яті, щоб почати виконання.
Віртуальна пам'ять автоматично управляє двома рівнями ієрархії пам'яті: основний і зовнішньої (дискової) пам'яттю.
Крім того, віртуальна пам'ять спрощує завантаження програм, забезпечуючи механізм автоматичного переміщення програм, що дозволяє виконувати одну і ту ж програму в довільному місці фізичної пам'яті.
Системи віртуальної пам'яті можна розділити на два типи: системи з фіксованим розміром блоків, званих сторінками, і системи з змінним розміром блоків, званих сегментами. Розглянемо обидва типи організації віртуальної пам'яті.
. 7.5 Сторінкова організація пам'яті
У системах з сторінкової організацією основна і зовнішня пам'ять (головним чином дисковий простір) діляться на блоки, або сторінки, фіксованої довжини. Кожному користувачеві надається деяка частина адресного простору, яка може перевищувати основну пам'ять комп'ютера і яка обмежена тільки можливостями адресації, закладеними в системі команд. Ця частина адресного простору називається віртуальною пам'яттю користувача. Кожне слово в віртуальної пам'яті користувача визначається віртуальною адресою, що складається з двох частин: старші розряди адреси розглядаються як номер сторінки, а молодші - як номер слова (або байта) усередині сторінки.
Кожен елемент таблиці сторінок містить номер фізичної сторінки основної пам'яті і спеціальний індикатор. Одиничний стан цього індикатора свідчить про наявність цієї сторінки в основній пам'яті. Нульовий стан індикатора означає відсутність сторінки в оперативній пам'яті.
Пошук в таблицях сторінок, розташованих в основній пам'яті, і завантаження TLB можуть здійснюватися або програмним способом, або спеціальними апаратними засобами. З цією метою в процесорі передбачається додатковий регістр захисту, що містить описувач (дескриптор) таблиці сторінок або базовогранічную пару. База визначає адресу початку таблиці сторінок в основній пам'яті, а межа - довжину таблиці сторінок відповідної програми.
Одне з рішень проблеми скорочення довжини таблиць засноване на введенні багаторівневої організації таблиць. Окремим випадком багаторівневої організації таблиць є сегментація при сторінковій організації пам'яті. Необхідність збільшення адресного простору користувача пояснюється бажанням уникнути необхідності переміщення частин програм і даних в межах адре...