Логічна адреса

 

Номер сегменту s Номер сторінки р всередині сегменту s Зміщення всередині сторінки d

 
 

 


Елемент d

 
 
 

 


Відмінність цього підходу полягає в тому, що віртуальні сторінки нумеруються не в межах усього адресного простору процесу, а в межах сегмента. Віртуальна адреса в цьому випадку виражається трійкою (номер сегмента, номер сторінки, зміщення у сторінці). Для кожного процесу створюється своя таблиця сегментів, а для кожного сегмента - своя таблиця сторінок. Тоді

1. За номером сегмента, заданому у віртуальній адресі, з таблиці сегментів витягається фізична адреса відповідної таблиці сторінок.

2. За номером віртуальної сторінки, заданої у віртуальній адресі, з таблиці сторінок витягається дескриптор, у якому зазначений номер фізичної сторінки.

3. До номера фізичної сторінки пристиковується молодша частина віртуальної адреси - зміщення.

 

Кеш пам'ять

Пам’ять ЕОМ - це ієрархія запам’ятовуючих пристроїв, які відрізняються середнім часом доступу до даних, об’ємом і вартістю зберігання 1 біта інформації.

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

Кешем часто називають ще й один із пристроїв - швидкий запам’ятовуючий пристрій. Він дорожчий і має порівняно невеликий обсяг порівняно з «повільним» - оперативною пам’яттю.

Якщо кешування використовують для зменшення середнього часу доступу до оперативної пам'яті, то в якості КЕШа використовують більш дорогу й швидкодіючу статичну пам’ять. Якщо ж кешуваннявикористовується для прискорення доступу до даних, що зберігається на диску, роль кеш-пам’яті грають буфери, що реалізовані в оперативній пам’яті.

Вміст кеш-пам’яті являє собою сукупність записів про всі завантажені в неї елементи даних з основної пам’яті. Кожен запис містить:

· елементи даних;

· адресу цього елемента в основній пам'яті;

· додаткову інформацію, що використовується для реалізації алгоритму і включає ознаку модифікації й ознаку дійсності даних.

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

Пошук потрібних даних у кеш-пам’яті здійснюється за вмістом - за взятим із запиту значенням поля адреси в оперативній пам’яті.

Далі можливі два варіанти дії:

1. дані виявлені в кеш-пам'яті (тобто має кеш-влучення), і вони зчитуються й передаються джерелу запиту;

2. потрібні дані відсутні (тобто відбувся кеш-промах), і вони зчитуються з основної пам’яті, передаються джерелу запиту й одночасно копіюються в кеш-пам’ять.

Ефективність кешувания залежить від імовірності влучення в кеш.

 

 

 


У процесі роботи вміст кеш-пам’яті постійно оновлюється. Витиснення даних означає або просто оголошення вільною деякої області кеш- пам’яті (скидання біта дійсності) або на додаток до цього копіювання даних в основну пам’ять, якщо вони модифікувалися.

Наявність у комп’ютері двох копій даних - в основній пам’яті й у кеші - породжує проблему узгодження даних. Існують два підходи до рішення цієї проблеми:

1. наскрізний запис (write through). При запиті до основної пам'яті (у тому числі при записі) проглядається кеш. Якщо дані по запитуваній адресі відсутні, запис виконується тільки в основну пам’ять. Якщо дані перебувають у кеші, запис робиться у кеш і у пам’ять.

2. зворотний запис (write back). Виконується перегляд кешу. Якщо даних там немає, то запис робиться в основну пам’ять. Інакше запис робиться тільки в кеш. При цьому встановлюється ознака модифікації. При витисненні даних з кешу ці дані будуть переписані в основну пам’ять.

Алгоритми пошуку й заміщення даних у кеші залежать від того, як основна пам’ять відображається на кеш. Використаються дві схеми відображення:

1. випадкове відображення;

2. детерміноване відображення.

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

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

При детермінованому способі відображення будь-який елемент основної пам’яті відображається в те ж саме місце кеш- пам’яті. У цьому випадку кеш- пам’ять розділена на рядки, кожен з яких призначений для зберігання одного запису про один елемент даних і має свій номер.

Між номерами рядків кеш- пам’яті й адресами оперативної пам’яті встановлюється відповідність «один до багатьох»: одному номеру рядка відповідає декілька (досить багато) адрес оперативної пам’яті.

Можна використати просте виділення декількох розрядів з адреси оперативної пам’яті, які інтерпретуються як номер рядка кеш-пам’яті. Таке відображення називається прямим. Наприклад, кеш розрахований на 1024 записа (1024 рядка). Тоді будь-яка адреса оперативної пам'яті може бути відображена на адресу кеш- пам’яті простим відділенням 10 двійкових розрядів.

При пошуку даних у кеші використовується швидкий прямий доступ до запису за номером рядка, отриманим з адреси оперативної пам’яті у запиті. Крім того, виконується додаткова перевірка на збіг тегу з відповідною частиною адреси із запиту. При збігу констатується кеш-влучення. Якщо немає, констатується кеш-промах і дані зчитуються з OП і копіюються в кеш.

 

 

 


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

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

Відповідно до описаної логіки роботи кеш-пам’яті, при виникненні запиту спочатку проглядається кеш, а потім, якщо відбувся промах, виконується звертання до основної пам’яті.

Однак, часто реалізується й інша схема роботи кеша: пошуку кеші й основної пам’яті починається одночасно, потім за результатом перегляду кеша, операція в основній пам’яті або продовжується, або переривається.








Дата добавления: 2015-04-29; просмотров: 843;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.012 сек.