Кеш-память
Материал из Википедии — свободной энциклопедии
Кеш-память (от англ. cache, дословно — «заначка», «кубышка») — память ЭВМ с быстрым доступом, где хранится часть данных с другого носителя с более медленным доступом или данные, для получения которых требуются вычисления. Иногда для краткости кеш-память называют просто «кеш».
Кеш-память позволяет обращаться к часто требуемым данным быстрее, чем это происходило бы без её использования. Процесс организации доступа через кеш-память называется кешированием, а та память, которая кешируется, называется основной памятью.
Содержание |
[править] Кеширование оперативной памяти
Наиболее часто термин кеш-память используется для обозначения кеш-памяти, находящейся между регистрами центрального процессора (ЦП) и оперативной памятью (ОЗУ).
Кеш-память может давать значительный выигрыш в производительности, потому что в настоящее время тактовая частота ОЗУ на порядок меньше тактовой частоты ЦП. Тактовая частота для кеш-памяти обычно всего лишь в два раза меньше, чем у ЦП.
[править] Уровни кеша
Разделение кеш-памяти на несколько уровней (до 3 в настоящее время) производится по следующему правилу: кеш-память уровня N+1 всегда больше по размеру и медленнее по скорости обращения, чем кеш-память уровня N.
Самой быстрой памятью является кеш-память первого уровня (она же L1-cache), по сути, она является неотъемлемой частью процессора, поскольку расположена на одном с ним кристалле и входит в состав функциональных блоков, без нее процессор не сможет функционировать. Память L1 работает на частоте процессора и обращение к ней занимает в общем случае один такт ядра, объем этой памяти обычно невелик — не более 64Кб. Второй по быстродействию является L2 (в отличие от L1 ее можно отключить с сохранением работоспособности процессора), кеш второго уровня, она обычно расположена либо на кристалле, как и L1, либо в непосредственной близости от ядра, например, в процессорном картридже (только в слотовых процессорах), в старых процессорах ее располагали на системной плате. Объем L2 побольше — от 128Кб до 1—2Мб.
[править] Политика записи при кешировании
При чтении данных кеш-память даёт однозначный выигрыш в производительности. При записи данных выигрыш можно получить только ценой снижения надёжности. Поэтому в различных приложениях может быть выбрана та или иная политика записи кеш-памяти..
Существуют две основные политики записи кеш-памяти — сквозная запись (write-through) и отложенная запись (write-back).
- сквозная запись подразумевает, что при изменении содержимого ячейки памяти, запись происходит синхронно и в кеш и в основную память.
- отложенная запись подразумевает, что можно отложить момент записи данных в основную память, а записать их только в кеш. Производительность, по сравнению со сквозной записью, повышается, но это может поставить под угрозу целостность данных в основной памяти, поскольку программный или аппаратный сбой может привести к тому, что данные так и не будут переписаны из кеша в основную память. Кроме того, в случае кеширования оперативной памяти, когда используются два и более процессоров, нужно обеспечивать согласованность данных в разных кешах.
[править] Кеширование внешних накопителей
Многие периферийные устройства хранения данных используют кеш для ускорения работы, в частности, жёсткие диски используют кеш-память от 1 до 16 Мб (модели с поддержкой NCQ/TCQ используют её для хранения и обработки запросов), устройства чтения CD/DVD/BD-дисков так же кешируют прочитанную информацию для ускорения повторного обращения.
Операционная система так же использует часть оперативной памяти в качестве кеша дисковых операций (в том числе для внешних устройств, не обладающих собственной кеш-памятью, например, USB-flash, дисковод для дискет).
[править] Кеширование интернет-страниц
Процесс сохранения часто запрашиваемых документов на промежуточных прокси-серверах или машине пользователя, с целью предотвращения их постоянной загрузки с сервера-источника и уменьшения трафика. Т.е. перемещение информации поближе к пользователю. Управление кэшированием осуществляется при помощи HTTP-заголовков