Я действительно понимаю, как виртуальный адрес переводится на физический адрес для доступа к основной памяти. Я также понимаю, как работает кэш-память.Виртуальный адрес для преобразования физических адресов в свете кэш-памяти
Но моя проблема заключается в объединении двух понятий и понимании общей картины того, как процесс обращается к памяти и что произойдет, если у нас будет пропущен кеш. поэтому у меня есть этот рисунок, который поможет мне задает следующие вопросы:
click to see the image (assume one-level cache)
1- ли доступ процесса кэша-память с точно таким же физическим адресом, которые представляют местоположение байта в основной памяти?
2- Действительно ли TLB находится на первом уровне кэша или это отдельная память внутри чипа процессора, предназначенная для цели перевода?
3- Когда есть промаха в кеше, мне нужно получить целый блок и выделить его в кеш, но основная память, организованная в кадрах (страницах), не блокирует. Так ли страница процесса разделяется на кеш-блоки, которые могут быть доставлены в кеш в случае промаха?
4 Предположим, что есть пропуски TLB, означает ли это, что мне нужно пройти весь путь до основной памяти и проделать страницу там, или происходит прохождение страницы в кеше?
5- Означает ли отказ TLB, что будет пропущен кеш?
6- Если у вас есть материалы для чтения, которые объясняют большую картину, которую я пытаюсь понять, я бы очень хотел поделиться ею со мной.
Спасибо и не стесняйтесь ответить на любой вопрос одного я просил
Спасибо @Robin за эти разработанные ответы –