Популярные статьи
  • Что такое жёсткий диск и в чём его сходство с подробнее
  • Что такое процессор компьютера — все точки подробнее
  • Надоел русский язык? Меняем язык в After Effects на подробнее
  • Что такое ssd накопитель и в чём его прикол? подробнее

05.06.2018
Блог
Автор: Рубрика:

Что такое кэш в компьютере и зачем его придумали?

Лого

Здравствуйте мои уважаемые читатели. Сегодня я в общих чертах отвечу на вопрос что такое кэш в компьютере? Это позволит вам получить общее представление, и даст возможность самим определить какие детали этой тематики для вас представляют наибольший интерес.

Сам термин «кэш» происходит от слов cacher, cachе и означает, нечто спрятанное про запас. Впервые это слово в компьютерной среде прозвучало в 1968 году со страниц журнала «IBM Systems Journal», где по желанию редактора им был заменен термин «высокоскоростной буфер». Сейчас термин «кэш» получил широкое распространение. И о его существовании знают даже те, кто не до конца разобрался в возможностях своей цифровой техники.

Что такое кэш в компьютере

 

Где применяется буферизация информации?

Изначально кэш использовался в компьютерных устройствах. Его самым главным преимуществом была доступность информации и возможность ее считывания на высокой скорости. В ПК кэш предстал в нескольких аппаратных и программных вариациях:

  • Информация, записанная на жестком диске, хранится в виде блоков размещенных в разных местах. Ее считывание занимает гораздо больше времени, чем требуется процессору ее же обработки.
 

Поэтому гораздо выгоднее сначала извлечь данные, соединить их вместе в кэше и быстро передать ЦПУ готовый для обработки блок. Раньше винчестеры для этой цели оснащались собственной энергозависимой памятью на 8 или 16 Мб. Сейчас используются HDD с 32 и 64 МБ, а в современных серверных жестких дисках размер кэша достигает 128 и 256 Мб;

Hard disk

  • Специалисты, занимающиеся архитектурой чипов знали, что существует ряд команд которые выполняются ЦПУ с регулярной периодичностью и используют одну и ту же информацию.

И для того чтобы не обращаться постоянно к более медленным хранилищам данных (ОЗУ, HDD) в самом процессоре предусмотрели несколько уровней небольшого кэша – SRAM. Начальный L1 наиболее быстрый, но мене вместительный. L2 побольше, по медленнее. Старший уровень кэша L3 еще теряет в скорости, но прибавляет в объеме.

Кэши 7ми ядер

  • Кроме того программный кэш стал широко использоваться различными приложениями (особенно играми и браузерами). Нужные или наиболее часто используемые файлы (история запросов и веб-страницы, промежуточные результаты работы) подгружались в более доступное место, что обеспечивало высокое быстродействие системы.

Временные файлы

Сейчас, в силу повсеместного распространения смартфонов на Андроид (активно использующих кэширование) многие столкнулись с проблемой нехватки места на своих устройствах. Это происходит в недорогих гаджетах с плохо оптимизированной операционной системой.

Пользователям приходится периодически запускать программы-клинеры или самим очищать кэш браузера. Иногда к таким действиям прибегают и владельцы персональных компьютеров, обнаружившие непомерно разросшийся объем папок с cache-файлами.

 

Способы работы с кэш-памятью

И если за порядком с программным кэшем приходится следить самим пользователям, то аппаратная буферизация данных в силу ограниченного объема сверхоперативной памяти происходит по определенным алгоритмам.

Поскольку кэш обеспечивает удобный доступ, то поиск нужной информации изначально проводится в нем самом. Делается это с помощью тегов, присваиваемых блокам данных. Если таковые сразу обнаружены в кэше, то это называется попаданием.

Примерная схема

Когда мы имеем с многоуровневым кэшем, то информация может перемещаться по нему двумя способами:

  • сквозным (она дублируется в подуровнях, например в L3 – L2 – L1);
  • отложенным, при котором размещается только в начальном уровне L1.

Практически во всех случаях запись новой информации связана с освобождением для нее соответствующего места. Но для этого процессору необходимо определить, какие данные, ранее находящиеся в кэше, можно стереть или переместить в другое место (например, на уровень выше). Для этого существует несколько алгоритмов замещения:

  • для удаления выбирают блок, который дольше остальных оставался невостребованным (LRU);
  • вытесняется буфер, использованный последним (MRU);
  • замена происходит вместо буфера с наименьшей частотой использования (LFU);
  • комбинационный алгоритм, совмещающий LFU и LRU;

 

Конечно, работа кэша не видна и мы не можем ее контролировать. Но зато теперь вы знаете, как он работает и вообще, что такое кэш в компьютере.

Можете быть уверены, что этот компонент никогда вас не подведет. Ведь его эффективности разработчики уделяют особое внимание.

На этом наша беседа о кэш-памяти подошла к завершению. Я рад, если в ней вы узнали что-то новое или прояснили для себя отдельные моменты.

До скорых встреч, мои дорогие читатели!

Этой статьей стоит поделиться

Оставить коментарий

:|:x:shock::oops::mrgreen::lol::idea::evil::cry::cool::arrow::???::?::!: