Расчет размера таблицы страниц

У меня есть задание со следующей подсказкой:

The page size for a virtual memory system is 8KB.
The instruction TLB is direct-mapped with 2 sets and each block contains one translation.
^(I don't believe this is relevant for the following 3 questions, as there are two more questions about the TLB)

The number of bits in a virtual address is 20.
The number of bits in a physical address is 15.

(1) What is the number of virtual pages?

Я думаю, что я понял это.

Размер страницы = 8 * 2^10 = 8192поэтому смещение 13 bits,
Номер виртуальной страницы = 20 - 13 = 7 биты
Виртуальные страницы = 2^7 страницы

(2) What is the number of physical pages?

Здесь я немного растерялся. Я думаю, что я должен добавить действительные, грязные и ссылочные биты к номеру физической страницы (который 2, от 15 - 13). тем не мение 5 * 2^7 = 640 bytes, который кажется невероятно маленьким.

(3) How many bits are used in the virtual address for the page offset?

Ответ выше, кажется, 13 bits,

Кто-нибудь может указать мне правильное направление? Спасибо!

1 ответ

Решение

Действительные, грязные и ссылочные биты находятся в записи таблицы страниц, но не являются частью битов адреса. Поэтому, используя ваши результаты, есть 2^2 или же 4 физические страницы.

Да, это кажется маленьким, но понимаю, что есть только 2^15 или же 32K байты физической памяти.

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