Разница между кэш-памятью и виртуальной памятью

Кэш-память против виртуальной памяти
 

Разница между кэш-памятью и виртуальной памятью существует в целях, для которых эти два используются, и в физическом существовании. Кэш-память - это тип памяти, используемый для улучшения времени доступа к основной памяти. Он находится между процессором и основной памятью, и может быть несколько уровней кэшей, таких как L1, L2 и L3. Тип оборудования, используемого для кэш-памяти, намного дороже, чем оперативная память, используемая для основной памяти, поскольку кэш-память намного быстрее. По этой причине емкость кеш-памяти очень мала. Виртуальная память - это метод управления памятью, используемый для эффективного использования оперативной памяти (основной памяти) при одновременном предоставлении отдельного пространства памяти для каждой программы, которое даже больше, чем фактическая емкость физической оперативной памяти (основной памяти). Здесь жесткий диск используется для расширения памяти. Элементы в физической памяти переносятся туда и обратно вместе с жестким диском.

Что такое кэш-память?

Кэш-память является тип памяти это находится между CPU (центральным процессором) и RAM (оперативной памятью). Целью кэш-памяти является уменьшение времени доступа к памяти ЦП из ОЗУ. Кеш-память намного быстрее, чем оперативная память. Таким образом, время доступа к кешу намного меньше времени доступа к оперативной памяти. Но стоимость памяти, используемой для кэш-памяти, намного выше стоимости памяти, используемой для оперативной памяти, и, следовательно, емкость кэш-памяти очень мала. Тип памяти, используемой для кэш-памяти, называется SRAM (статическая оперативная память).

Всякий раз, когда ЦП хочет получить доступ к памяти, он сначала проверяет, находится ли то, что ему нужно, в кэш-памяти. Если да, он сможет получить к нему доступ с наименьшей задержкой. Если он не находится в кеше, то запрошенный контент будет скопирован из ОЗУ в кеш, и только к нему будет обращаться только ЦП. Здесь при копировании содержимого из кэша в кэш копируется не только содержимое запрошенного адреса памяти, но и соседнее содержимое. Таким образом, в следующий раз высока вероятность того, что попадание в кэш произойдет, поскольку большинство компьютерных программ получают доступ к близлежащим данным или к последним доступным данным в большинстве случаев. Таким образом, из-за кеша средняя задержка памяти уменьшается.

В CPU есть три типа кэшей: Кеш инструкций хранить инструкции программы, Кеш данных хранить элементы данных, а Буфер перевода в сторону хранить отображения памяти. Для кэширования данных, как правило, существуют многоуровневые кэши. То есть есть несколько кешей как L1, L2 и L3. Кэш-память первого уровня - это самая быстрая, но самая маленькая кэш-память, ближайшая к процессору. Кэш L2 медленнее, чем L1, но больше, чем L1, и находится после кэша L1. Из-за этой иерархии лучшее среднее время доступа к памяти может быть достигнуто при меньших затратах.

Что такое виртуальная память?

Виртуальная память техника управления памятью используется в компьютерных системах. Не существует аппаратного обеспечения, называемого виртуальной памятью, но это концепция, которая использует оперативную память и жесткий диск для обеспечения виртуального адресного пространства для программ. Первая RAM разбита на части, называемые страницами, и они идентифицируются по адресам физической памяти. На жестком диске зарезервирована специальная часть, где в Linux это называется swap, а в Windows - файл подкачки. Когда программа запускается, ей предоставляется виртуальное адресное пространство, которое может быть даже больше, чем фактическая физическая память. Пространство виртуальной памяти также разделено на куски, называемые страницами, и каждая из этих страниц виртуальной памяти может быть сопоставлена ​​с физической страницей. Таблица с именем page table отслеживает это отображение. Когда в физической памяти заканчивается свободное пространство, определенные физические страницы помещаются в эту специальную часть жесткого диска. Когда какая-либо страница, помещаемая на жесткий диск, снова необходима, она переносится в физическую память путем помещения другой выбранной страницы из физической памяти на жесткий диск..

В чем разница между кэш-памятью и виртуальной памятью?

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

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

• Управление кэш-памятью осуществляется полностью аппаратно. Виртуальная память управляется операционной системой (программным обеспечением).

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

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

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

Резюме:

Кэш-память против виртуальной памяти

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

Изображения предоставлены:

  1. Процесс кэш-памяти по Hellisp (CC BY-SA 3.0)
  2. Виртуальная память от Ehamberg (CC BY-SA 3.0)