Сначала вы выясняете, к какой виртуальной странице относится этот адрес, смещение от этой виртуальной страницы, а затем используете свою таблицу страниц для поиска эквивалентного физического адреса.
Предполагая, что виртуальное адресное пространство линейно сбез дырок, преобразование адреса в страницу может быть сделано путем деления на размер страницы (512 в вашем случае).Смещение на странице - это разница между виртуальным адресом и начальным адресом виртуальной страницы.
В приведенном выше примере виртуальной страницей будет страница 3 со смещением 213.
Затем вы ищите физическую страницу, которая соответствует виртуальной странице 3 в вашей таблице страниц.Здесь это x
.Таким образом, физический адрес будет (физический адрес начала страницы x
+ смещение в страницу), т. Е. (Начало страницы X) + 213.
начало страницы X, опять-таки в предположении линейного отображениябез отверстий будет (размер страниц * x
).
Таким образом, физический адрес будет:
(page_size * x) + offset
Здесь:
(512 * x) + 213