2014-09-09 2 views
0

В некоторой системе подкачка отображает виртуальный адрес (a8b43f) на физический адрес (13efd43f) .Сопоставление между виртуальным и физическим адресом в пейджинге памяти

Что можно сделать о размере страницы?

+0

Является ли ответ «ничего» приемлемым ответом? – nos

+0

@ nos Я боюсь, что это неприемлемый ответ. См. Обновленный вопрос. – syntagma

+0

Это очень печально, так как вы не можете ничего рассказать о размере страницы из этой информации. – nos

ответ

1

Хотя этого недостаточно для определения чего-либо определенного, вы можете сделать вывод о верхнем пределе размера страницы, отметив, что нижние 13 бит обоих адресов одинаковы. Как известно, индекс страницы - это младшие биты адреса, если мы найдем максимальный индекс страницы, мы можем определить максимальный размер страницы. 0x00A8B43F и 0x13EFD43F имеют одни и те же младшие 13 бит ('b1_0100_0011_1111). Таким образом, максимальный размер страницы может составлять 2^13 слов или 8 kwords. Если память адресована байтом, это означает, что размер страницы составляет 8 КБ.

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

+0

@AndrewMedico Да, страницы могут быть 2^8 слов, как я уже сказал, вы можете получить максимальный размер страницы. Любое место, где от бит 0 (размер страницы слова 2^1, совпадение бит с 1 по 12 - совпадение) с битом 12 (размер страницы слова размером 2^13, совпадение совпадений не совпадает) являются действительными индексами страниц, что приводит к разным размерам страниц. Но вы можете получить максимальный размер страницы 2^13 слов, поскольку бит 13 не соответствует. Я не понимаю, что вы подразумеваете под другим концом; верхние биты заменяются виртуальным -> физическим отображением, поэтому вам нужно найти наиболее младшие бит, чтобы определить максимальный размер страницы. – Unn

+0

Важная часть заключается не в том, что они делят более низкие 13 бит, а наоборот, что они отличаются от 14-го - это означает, что, как вы сказали, страница не может быть больше 8K, в противном случае бит 14 был бы частью смещение и должно совпадать. – Leeor

+0

@Leeor Да, я, вероятно, должен был сделать более явным, что я остановился после 13 бит, потому что бит 13 (14-й бит) двух адресов отличается; Спасибо что подметил это :) – Unn

Смежные вопросы