Виртуальная память - подсчитать количество страниц в таблице страниц

  • Виртуальное адресное пространство составляет 64 бита
  • Размер страницы составляет 64 КБ
  • Размер слова составляет 4 байта

Сколько страниц в таблице страниц?

Сначала я подумал:

размер страницы = 64 КБ = 2^16 байт, поэтому смещение использует 16 бит из 64. Таким образом, осталось 48 бит -> в таблице страниц есть 2^48 страниц (я не понял, где использовать информацию о размере слова) Однако правильный ответ - 2^50 страниц, что меня смущает..

Тогда я подумал, что, возможно, смещение страницы составляет всего 14 бит, потому что размер слова составляет 4 байта = 2^2 байта. так что в таблице действительно есть 2^50 страниц.

Я прав? можно получить лучшее объяснение?

1 ответ

Решение

Каждая страница использует 14 бит из 64, а не 16, поскольку минимальная адресуемая единица измерения - это 4-байтовое слово (которое эффективно удаляет 2 бита из необходимого числа). Таким образом, смещение имеет оставшиеся 50 битов.

Другие вопросы по тегам