P
pro·school.ru
Каталог школ

Оперативная и кэш-память: зачем нужны уровни памяти

💻 Информатика · 8 класс

Зачем компьютеру несколько видов памяти

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

Оперативная память

Оперативная память (сокращённо ОЗУ — оперативное запоминающее устройство) хранит данные и программы, пока компьютер включён. Она энергозависима: при выключении питания всё, что в ней было, исчезает. Поэтому документы сохраняют на диск.

Оперативную память называют ещё внутренней памятью, потому что без неё процессор не может работать: именно из неё он берёт команды и данные. Чем больше объём оперативной памяти, тем больше программ можно держать запущенными одновременно.

Кэш-память

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

Кэш бывает нескольких уровней. Самый маленький и быстрый уровень расположен прямо внутри процессора, уровень побольше — рядом с ним. Чем дальше уровень от ядра процессора, тем он медленнее, но вместительнее.

Правило. Чем выше скорость памяти, тем дороже она стоит и тем меньше её объём. Поэтому быстрой памяти ставят мало, а медленной — много.

Сравнение уровней памяти

Вид памятиСкоростьОбъёмЭнергозависимость
Регистры процессораНаивысшаяОчень малыйДа
Кэш-памятьОчень высокаяМалыйДа
Оперативная памятьВысокаяБольшойДа
Жёсткий дискНизкаяОчень большойНет

Как это работает на примере

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

1) нужно число X

2) есть ли X в кэше? нет → читаем из ОЗУ, кладём в кэш

3) следующий раз: X уже в кэше → берём быстро

Такое попадание в кэш называют кэш-попаданием, а отсутствие нужных данных — промахом. Чем чаще случаются попадания, тем быстрее работает программа. Именно поэтому циклы, которые много раз обращаются к одним и тем же данным, выполняются особенно быстро.

Частая ошибка. Путают оперативную память и жёсткий диск. ОЗУ — временная и быстрая, диск — постоянный и медленный. Несохранённый документ хранится только в ОЗУ и пропадёт при выключении, поэтому работу важно вовремя сохранять на диск.

Кратко о главном

  • Память устроена уровнями: быстрая и маленькая ближе к процессору.
  • ОЗУ хранит данные, пока есть питание, и теряет их при выключении.
  • Кэш — маленькая сверхбыстрая память для часто используемых данных.
  • Быстрая память дороже, поэтому её мало; медленной много.
  • При повторных обращениях кэш ускоряет работу за счёт кэш-попаданий.