Разница между кешем и буфером LookAside трансляции[TLB]

StackOverflow https://stackoverflow.com/questions/1973473

  •  21-09-2019
  •  | 
  •  

Вопрос

В чем разница между кэшем и буфером LookAside трансляции [TLB]?

Это было полезно?

Решение

Из Вики:

В информатике А. кэш (произносится /kæʃ/, каш) — это набор данных, дублирующих исходные значения, хранящиеся в другом месте или вычисленные ранее, где исходные данные дорого извлекать (из-за более длительного времени доступа) или вычислять по сравнению со стоимостью чтения кеша.Другими словами, кэш работает как область временного хранения, где часто используемые данные могут храниться для быстрого доступа.Как только данные будут сохранены в кеше, их можно будет использовать в будущем, получив доступ к кэшированной копии, а не повторно извлекая или пересчитывая исходные данные.

тогда как

А Резервный буфер перевода(TLB) — это кэш ЦП, который оборудование управления памятью использует для повышения скорости трансляции виртуальных адресов.Это был первый кэш, внедренный в процессоры.Все современные настольные и серверные процессоры (например, x86) используют TLB.TLB имеет фиксированное количество слотов, содержащих записи таблицы страниц, которые сопоставляют виртуальные адреса с физическими адресами.Обычно это память с адресацией по содержимому (CAM), в которой ключом поиска является виртуальный адрес, а результатом поиска является физический адрес.

Также взгляните на этот.

Другие советы

Cache сохраняет фактическое содержимое памяти.

TLB с другой стороны, сохраняет только отображение. TLB ускоряет процесс нахождения операндов в памяти.

Cache ускоряет процесс чтения этих операндов, копируя их в более быструю физическую память.

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

TLB — это особый вид кэша, связанный с процессором. Когда мы используем виртуальную память, нам нужен TLB для более быстрого преобразования виртуального адреса в физический адрес.TLB хранит только номер страницы, смещение, номер кадра и некоторые управляющие биты.А кеш предназначен для хранения блоков данных, которые часто используются.После получения физического адреса из TLB/page_table мы ищем этот адрес в кеше, если он там не найден, затем ищем основную память. (рис. 8.10, Уильям останавливается 6e)

enter image description here

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top