Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпора 2 варіант.docx
Скачиваний:
1
Добавлен:
05.12.2018
Размер:
186.42 Кб
Скачать

1.9 Поясніть як побудована асоціативна кеш-пам’ять?

Як було сказано вище, різні рядки основної пам'яті конкурують за право

зайняти одну і ту ж область в кеш-пам'яті. Якщо програмі, яка застосовує кеш-

пам'ять, зображену на рис. 4.26, а, часто потрібні слова з адресами 0 і 65 536,

то будуть мати місце постійні конфлікти і кожне звернення потенційно

потягне за собою витіснення якоїсь певної рядка кеш-пам'яті. Щоб

вирішити цю проблему, потрібно зробити так, щоб у кожному елементі кеш-пам'я-

ти містилося по дві і більше рядків. Кеш-пам'ять з п можливими елементами для

кожної адреси називається n-входові асоціативної кеш-пам'яттю. Чотирьох-

входові асоціативна кеш-пам'ять зображена на рис. 4.27.

Асоціативна кеш-пам'ять з множинним доступом по суті набагато складність

неї, ніж кеш-пам'ять прямого відображення, оскільки хоча елемент кеш-пам'яті і

можна обчислити з адреси основної пам'яті, потрібно перевірити п елементів

кеш-пам'яті, щоб дізнатися, чи є там потрібна нам рядок. Тим не менш практи-

ка показує, що двувходовая або четирехвходовая асоціативна кеш-пам'ять

дає хороший результат, тому впровадження цих додаткових схем цілком

виправдано.

1.10 Опишіть способи адресації віртуальної машини Java

Найпростіший спосіб визначення операнда - утримувати в адресній частині самоперанд, а не адресу операнда або яку-небудь іншу інформацію, що описує, де знаходиться операнд. Такий операнд називається безпосереднім операндом,

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

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

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

ні слова пам'яті.Часто потрібно вміти звертатися до слів пам'яті за відомим зсуву. Подоб-ні приклади ми бачили в машині IJVM, де локальні змінні визначають-ся по зсуві від регістру LV. Звернення до пам'яті по регістру і константізміщення називається індексного адресацією