Академический Документы
Профессиональный Документы
Культура Документы
1.Кэш-память.
Кэш или кеш (англ. cache, от фр. cacher — «прятать»; произносится
[kæʃ] — «кэш») — промежуточный буфер с быстрым доступом к нему,
содержащий информацию, которая может быть запрошена с наибольшей
вероятностью. Доступ к данным в кэше осуществляется быстрее, чем выборка
исходных данных из более медленной памяти или удалённого источника,
однако её объём существенно ограничен по сравнению с хранилищем исходных
данных.
Кэш — это память с большей скоростью доступа, предназначенная для
ускорения обращения к данным, содержащимся постоянно в памяти с меньшей
скоростью доступа (далее «основная память»). Кэширование применяется
ЦПУ, жёсткими дисками, браузерами, веб-серверами, службами DNS и WINS.
133
ОЗУ - в строке 1 КП, строки ОЗУ с номерами 99, 199, …, 999 сохраняются в
строке 99 кэш-памяти (рис.2). Такая организация кэш-памяти обеспечивает
быстрый поиск в ней нужной информации: необходимо проверить ее наличие
только в одном месте. Однако емкость КП при этом используется не в полной
мере: несмотря на то, что часть кэш-памяти может быть не заполнена, будет
происходить вытеснение из нее полезной информации при последовательных
обращениях, например, к строкам 101, 301, 101 ОЗУ.
134
Некоторые эвристические оценки вероятности кэш-промаха при раз-
ных стратегиях замещения (в процентах) представлены в табл. 4.1.
Таблица 4.1. Вероятность кэш-промаха для различной кэш-памяти
Организация кэш-памяти
Размер 2-канальная 4-канальная 8-канальная
кэша,Кбайт ассоциативная ассоциативная ассоциативная
LRU Random LRU Random LRU Random
16 5.2 5.7 4.7 5.3 4.4 5.0
64 1.9 2.0 1.5 1.7 1.4 1.5
256 1.15 1.17 1.13 1.13 1.12 1.12
Анализ таблицы показывает, что:
увеличением емкости кэша, естественно, уменьшается вероят-ность кэш-
промаха, но даже при незначительной на сегодняшний день емкости кэш-
памяти в 16 Кбайт около 95 % обращений происходят к КП, минуя
оперативную память;
чем больше степень ассоциативности кэш-памяти, тем больше вероят-
ность кэш-попадания за счет более полного заполнения КП (время поиска
информации в КП в данном анализе не учитывается);
механизм LRU обеспечивает более высокую вероятность кэш-попа-
дания по сравнению с механизмом случайного замещения Ran-dom,
однако этот выигрыш не очень значителен.
Соответствие между данными в оперативной памяти и в кэш-памяти
обеспечивается внесением изменений в те области ОЗУ, для которых данные
в кэш-памяти подверглись изменениям. Существует два основных способа
реализации этих действий: со сквозной записью ( writethrough ) и с обратной
записью ( write-back ).
При считывании оба способа работают идентично. При записи кэши-
рование со сквозной записью обновляет основную память параллельно с об-
новлением информации в КП. Это несколько снижает быстродействие сис-
темы, так как микропроцессор впоследствии может вновь обратиться по этому
же адресу для записи информации, и предыдущая пересылка стро-ки кэш-
памяти в ОЗУ окажется бесполезной. Однако при таком подходе содержимое
соответствующих друг другу строк ОЗУ и КП всегда идентично. Это играет
большую роль в мультипроцессорных системах с общей опера-тивной памятью.
Кэширование с обратной записью модифицирует строку ОЗУ лишь
при вытеснении строки кэш-памяти, например, в случае необходимости
освобождения места для записи новой строки из ОЗУ в уже заполненную
КП. Операции обратной записи также инициируются механизмом поддер-
жания согласованности кэш-памяти при работе мультипроцессорной систе-мы
с общей оперативной памятью.
Промежуточное положение между этими подходами занимает способ,
при котором все строки, предназначенные для передачи из КП в ОЗУ,
предварительно накапливаются в некотором буфере. Передача осуществля-ется
либо при вытеснении строки, как в случае кэширования с обратной записью,
135
либо при необходимости согласования кэш-памяти нескольких
микропроцессоров в мультипроцессорной системе, либо при заполнении
буфера. Такая передача проводится в пакетном режиме, что более эффек-тивно,
чем передача отдельной строки[5,8,9].
137
3.Базовая память и ее виды
Базовая память - это минимальный объем оперативной памяти (ОЗУ),
который необходим компьютеру для работы. Этот термин фактически
применяется к нескольким компонентам внутри компьютерной системы, и
базовая система ввода / вывода (BIOS), материнская плата и видеокарта имеют
свои собственные базовые значения памяти. В то время как дополнительная
оперативная память позволила бы системе функционировать более эффективно,
базовая память является минимальным требованием для функционирования
каждого отдельного компонента. Эти суммы обычно поставляются
производителем заранее и остаются независимыми от любых других
компонентов.
Производители устанавливают базовую память, чтобы позволить ПК
быстрее загружаться, оставаться более безопасными и гарантировать, что
каждое критическое системное устройство всегда может иметь достаточно ре-
сурсов для обработки задач. Эти крошечные палочки ОЗУ подключены непос-
редственно к каждому компоненту для быстрого обмена. Поскольку они явля-
ются постоянным аппаратным компонентом, жизненно важным для системы, в
случае их повреждения компьютер не сможет правильно загружаться.
Хотя BIOS имеет очень низкую базовую память, компьютерная система не
может работать без нее. Здесь все начальные данные запуска хранятся на
персональном компьютере (ПК) вместе с предпочтительными настройками
пользователя для способа загрузки каждой аппаратной опции. Базовая память
для BIOS установлена на материнской плате на крошечном микрочипе,
который не намного больше, чем чертежная кнопка. Он не зависит от
системной памяти, чтобы защитить область от заражения вирусом.
Большинство видеокарт поставляются с предустановленной базовой
памятью 32 или 64 мегабайта (МБ), а топовые карты имеют гораздо больший
объем. В этом случае предварительно установленная память позволяет
компьютеру генерировать изображения на мониторе компьютера без какой-
либо внешней помощи со стороны других систем. Некоторые ПК используют
так называемую разделяемую память, которая будет включать в себя низкую
базовую память исключительно для видеокарты. В этой конфигурации память,
установленная на материнской плате, может быть занята видеокартой, когда
системные ресурсы могут это позволить.
Материнская плата обычно не имеет базовой памяти согласно практи-
ческому определению, но каждый компьютер и операционная система (ОС)
предъявляют минимальные требования к программам для загрузки. Многие
эксперты считают, что первый накопитель ОЗУ можно квалифицировать как
базовую память, даже если ее легко удалить. Большинство компьютеров
имеют от двух до четырех слотов памяти, и, по крайней мере, на одном из них
должна быть установлена оперативная память, чтобы компьютер мог
функционировать[8,9].
138
Довольно часто размещение всей программы в ОЗУ затруднено из-за
большого размера программы. В этом, однако, нет принципиальной
необходимости, поскольку в каждый момент времени для выполнения
требуются сравнительно небольшие участки программы. Таким образом, в ОЗУ
достаточно хранить только используемые в данный период части программ, а
остальные могут храниться во внешних ЗУ (ВЗУ). Сложность подобного
подхода в том, что процессы обращения к ОЗУ и ВЗУ существенно
различаются, и это усложняет задачу программиста. Выходом из такой
ситуации было появление в 1959 году идеи виртуализации памяти под которой
понимается метод автоматического управления иерархической памятью или
динамическое распределение памяти. Программисту кажется, что он имеет
дело с одноуровневой оперативной памятью большой емкости. Эту память
называют виртуальной или кажущейся[1,5].
Контрольные вопросы:
1. Что такое кэш память?
2. Охарактеризуйте типы кэш-памяти?
3. Дайте понятия одноуровневой и многоуровневой кэш-памяти?
4.Что такое базовая память?
5. Что такое виртуальная память?
6. За счет чего увеличивают общую емкость кэш-памяти?
7. Какое устройство выполняет преобразование виртуальных адресов в
физические?
8. На какой плате установлена базовая память для BIOS?
9.Какой случай называется попаданием кэша?
10. Какой случай называется промахом кэша?
140
Тестовые задания
1.Кэш — это память:
a) с большей скоростью доступа, предназначенная для ускорения
обращения к данным, содержащимся постоянно в памяти с меньшей
скоростью доступа;
b) с большей скоростью доступа, предназначенная для ускорения
обращения к данным, содержащимся постоянно в памяти с большей
скоростью доступа;
c) с меньшей скоростью доступа, предназначенная для ускорения
обращения к данным, содержащимся постоянно в памяти с меньшей
скоростью доступа;
d) с меньшей скоростью доступа, предназначенная для ускорения
обращения к данным, содержащимся постоянно в памяти с большей
скоростью доступа;
2.Каждая запись кэш памяти имеет идентификатор,который называется:
а) тегом; b)стеком; c)регистром; d)индексом;
3. Если в кэше найдена запись с идентификатором, совпадающим с
идентификатором затребованного элемента данных, то используются
элементы данных в кэше и этот случай называется:
а) попаданием кэша; b)промахом кэша;
с) попаданием тега; d)промахом тега;
4. Если в кэше не найдена запись, содержащая затребованный элемент
данных, то он читается из основной памяти в кэш, и становится доступным
для последующих обращений и этот случай называется:
а) промахом кэша; b)попаданием кэша;
с) попаданием тега; d)промахом тега;
5. Процент обращений к кэшу, когда в нём найден результат, называется:
а)уровнем попаданий; b)уровнем промаха; с)уровнем тега;d)уровнем стека;
6. Варианты обмена информацией между кэш-памятью различных уровней:
а) инклюзивная, эксклюзивная, неэксклюзивная;
b) неинклюзивная, эксклюзивная, неэксклюзивная;
с) уникальная; эксклюзивная, неэксклюзивная;
d) инклюзивная, эксклюзивная, уникальная;
7. Если каждая строка ОЗУ имеет только одно фиксированное место, на кото-
ром она может находиться в кэш-памяти, то такая кэш-амять называется:
а) памятью с прямым отображением;
b) полностью ассоциативной;
с) множественно - ассоциативной;
d) ассоциативной;
8. Кэш-память называется полностью ассоциативной:
а)если каждая строка ОЗУ может располагаться в любом месте кэш-
памяти;
b) если каждая строка ОЗУ может находиться по ограниченному
141
множеству мест в кэш-памяти;
с) если каждая строка ОЗУ имеет только одно фиксированное место, на
котором она может находиться в кэш-памяти;
d) если каждая строка ПЗУ имеет только одно фиксированное место, на
котором она может находиться в кэш-памяти ;
9. Эксклюзивная кэш-память предполагает:
а) уникальность информации, находящейся в различных уровнях кэша;
b) эксклюзивность информации, находящейся в различных уровнях кэша;
с) инклюзивность информации, находящейся в различных уровнях кэша;
d) неэксклюзивность информации, находящейся в различных уровнях кэша;
10. При стратегии замещения LRU:
а) замещается строка, к которой дольше всего не было обращений;
b) замещается самая давняя по пребыванию в кэш-памяти строка;
c) замещение проходит случайным образом;
d) замещается последняя по пребыванию в кэш-памяти строка;
11. При стратегии замещения FIFO:
а) замещается самая давняя по пребыванию в кэш-памяти строка;
b) замещается строка, к которой дольше всего не было обращений;
c) замещение проходит случайным образом;
d) замещается последняя по пребыванию в кэш-памяти строка;
12. При стратегии замещения Random:
а) замещение проходит случайным образом;
b) замещается строка, к которой дольше всего не было обращений;
c) замещается самая давняя по пребыванию в кэш-памяти строка;
d) замещается последняя по пребыванию в кэш-памяти строка;
13. С увеличением емкости кэша:
а) уменьшается вероятность кэш-промаха;
b) уменьшается вероятность кэш-попадания;
c) увеличивается вероятность кэш-промаха;
d) увеличивается вероятность кэш-попадания;
14. С увеличением степени ассоциативности кэш-памяти:
а) увеличивается вероятность кэш-попадания;
b) уменьшается вероятность кэш-промаха;
c) уменьшается вероятность кэш-попадания;
d) увеличивается вероятность кэш-промаха;
15. При записи кэширование со сквозной записью обновляет:
а) основную память; b) внешнюю память;
c) внутреннюю память; d) постоянную память;
16. Базовая память – это:
а) минимальный объем оперативной памяти;
b) минимальный объем внутренней памяти;
c) минимальный объем внешней памяти;
d) минимальный объем основной памяти;
142