Если пейджинг включен в ОС, таблица страниц используется для сопоставления виртуального адреса с фактическим физическим адресом. Чтобы быть более конкретным, рассмотрим 32-разрядную ОС Linux на X86, регистр cr3 имеет начальный адрес каталога таблицы страниц. Я думаю, это виртуальный адрес. Как CPU сопоставляет этот виртуальный адрес с физическим адресом каталога таблицы страниц в ОЗУ. Какая таблица страниц будет использоваться для перевода этого адреса?Как виртуальный адрес таблицы страниц преобразуется в фактический физический адрес?
ответ
Нет, cr3 имеет физический адрес таблицы страниц, а не виртуальный адрес. Если cr3 содержит виртуальный адрес таблицы страниц, вы попадете в логический мертвый цикл и не сможете найти таблицу страниц.
Пейджинговый блок переводит линейные адреса в физические. Набор линейных адресов сгруппированы вместе для формирования страницы. Эти линейные адреса являются непрерывными по своей природе - пейджинговый блок отображает эти наборы непрерывной памяти в соответствующий набор смежных физических адресов, называемых рамками страниц. Обратите внимание, что пейджинговый блок разделен на рамы страниц с фиксированным размером. По этой причине, разбиение на страницах имеют следующие преимущества:
Право доступ определен для страницы, будет действителен для группы линейных адресов формирования страницы
Длина страницы длина рамки страницы
Структура данных, которая отображает эти страницы на кадры страниц, называемые таблицей страниц. Эти таблицы страниц хранятся в основной памяти, и ядро инициализируется до разрешения страниц управления модулем.
- 1. Как преобразовать виртуальный адрес в физический адрес?
- 2. Виртуальный адрес на физический адрес
- 3. перевести виртуальный адрес на физический адрес
- 4. java.nio.MappedByteBuffer виртуальный/физический адрес
- 5. memcpy принимает виртуальный адрес или физический адрес?
- 6. Адрес/индексирование таблицы страниц
- 7. GDB CallStack Адрес виртуальный или физический?
- 8. Как преобразовать адрес kmalloc() в физический адрес
- 9. Я сбиваю с толку виртуальный адрес и физический адрес
- 10. Виртуальный адрес всегда переводится на физический
- 11. указатель на функцию: физический или виртуальный адрес
- 12. map указать виртуальный адрес на конкретный физический
- 13. физический адрес глобальной таблицы дескрипторов?
- 14. Виртуальный виртуальный адрес
- 15. Как виртуальный адрес переводится на адрес диска?
- 16. физический адрес переменной в c
- 17. Линейный адрес и физический адрес
- 18. Виртуальный логический адрес ядра
- 19. Физический адрес в JAVA
- 20. Входит ли запись кэша CPU в физический или виртуальный адрес?
- 21. Платформа ARM, как конвертировать виртуальный адрес в физический адрес в модуле ядра?
- 22. Как Асесс физический адрес в пространстве ядра
- 23. Как перевести адрес виртуальной памяти на физический адрес?
- 24. Что такое больший логический адрес или физический адрес?
- 25. преобразование логического адреса в физический адрес
- 26. Указывает ли C-указатель на физический или виртуальный адрес
- 27. Визуальная студия показывает виртуальный или физический адрес во время отладки?
- 28. __get_free_page, физический адрес и своп
- 29. В Linux с использованием C++ и GCC можно ли преобразовать виртуальный адрес в физический адрес?
- 30. VA (Виртуальный адрес) и RVA (Относительный виртуальный адрес)