2013-11-16 2 views
1

я работает экзамен через неделю идти, и я столкнулся следующий вопрос: enter image description hereне может решить проблему управления памятью в операционной системе

Я решил первую часть этого пути:

2^32/2^12 = 2^20 * 4 = 4 * 2^20 размер таблицы страниц

Сначала я хочу посмотреть, правильно ли я ответил? то для второй части у меня нет идеи, как ее решить. Я прочитал главу 8 концепции операционной системы, но не мог понять, как ее решить ...

Может ли кто-нибудь помочь?

+0

Я чувствую, что если я делю 2^20, приведенный в части 1 на 2^12, я получаю ответ, я имею в виду 2^20/2^12 = 2^8 утра. –

ответ

1

Вопросительные говорит о двух случаях:

первый случай: Когда один уровень подкачки включен (первый вопрос) второй случай: Когда два уровня подкачки включен (второй вопрос)

(см this link в увидеть, как два уровня подкачки воспринимается графически)

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

Учитывая, Размер записи таблицы страниц - 4 байта

Для Вопрос 1:

Учитывая, размер виртуальной памяти: 2^32 байт Размер каждой страницы: 2^12 байт Итак, максимальное количество страниц, которые может предоставить виртуальный mermory: 2^(32-12) - 2^20 pages Это означает, что в случае одностраничной страницы страницы поисковой системы будет состоять из 2^20 страниц таблицы.

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

**2^20(page-table entries) * 4 (size of each page-table entry in bytes)** 

второй вопрос:

В заявлении говорится, что размер страницы, используемый для подкачки таблицы страниц, составляет 2^12 байт, что означает, что одноуровневая таблица страниц далее делится на блоки по 2^12 байтов, что означает, что после деления таблицы страниц на 2^12 байтов мы, get

(2^20 * 4 (size of page table))/(2^12 (block size)) = 2^10 page-tables 

2^10 страниц таблицы могут быть сформированы максимум.

Чтобы найти размер таблицы страниц 2-го уровня, нам нужно количество записей и размер каждой записи в таблице.

Количество записей 2^10, как указано выше. Размер каждой записи таблицы страниц будет 10 бит, который должен быть преобразован в байты, так что мы должны сделать это 16 бит, чтобы сделать его два байта и размер второй странице - таблица будет

2^10 * 2 

Это ответ на второй вопрос:

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