Конфигурация памяти для 32-битной, 64-битной ОС и ОС с поддержкой PAE - PullRequest
0 голосов
/ 08 апреля 2019

Я запутался в конфигурации памяти, у меня есть следующие вопросы.

  1. , если максимальный виртуальный адрес 32-битной ОС равен 4 ГБ, когда у меня есть 4 ГБ ОЗУ для 32-битной ОСКак насчет размера виртуальной памяти?Требуется ли виртуальная память или мы можем напрямую использовать физическую память?

  2. В 32-разрядной ОС 12 битов смещены, потому что размер страницы = 4k, т.е. 2 ^ 12 и 2 ^ 20 для адресов страницКак насчет 64-битной ОС, что такое размер смещения?Какой размер страницы?Как рассчитывается.

  3. Что такое ПАЭ?Если включено, как определить размер PAE, каков максимальный и минимальный размер расширенной памяти.

1 Ответ

0 голосов
/ 28 июня 2019

Q.1 Ans: -

32-разрядный процессор содержит 32-разрядный регистр, в котором может храниться 2 ^ 32, а 64-разрядный процессор содержит 64-разрядный регистр, в котором может храниться 2 ^ 64. 64-разрядный регистр может теоретически 16 эксабайт памяти.

Для 32-битной ОС максимальная виртуальная память составляет 4 ГБ, она может адресовать только до 4 ГБ физической ОЗУ (без PAE).

Для ядра Linux оно работает с управлением виртуальной памятью, то есть с адресом процессора. Например, существует много типов адресов. адрес шины, физический адрес (существуют другие концепции для доступа к физической памяти, например, DMA и IOMMU)

Размер виртуальной памяти - это максимальный виртуальный размер отдельного процесса.

Для получения более подробной информации о 32-битном и 64-битном процессорах используйте ссылка .

Q.2 Ans: -

Для 64-битной ОС адресное пространство составляет 16 эксабайт ОЗУ. и, как правило, размер страницы составляет 8 КБ, т. е. 2 ^ 13 (кроме этого существует концепция больших страниц и hugetlb).

64-разрядные в настоящее время используют 48-разрядные физические адреса, которые позволяют адресовать до 256 ТБ основной памяти. потому что таблица страниц также является самой страницей и состоит из записей таблицы страниц. Поскольку количество записей в одной таблице ограничено и зависит от размера записи и размера страницы, таблицы располагаются на нескольких уровнях. Обычно есть 2 или 3 уровня, а иногда даже 4 уровня.

Общий расчет 64-битной ОС: -

 Number of entries in page table = virtual address space size/page size

                            = 2^(64-13) (if page size is 8K)

                            = 2^51 for maximum page table entries (if you are using whole 64 bits)

Page Size == Frame Size.

Q.3 Ans: -

Для PAE запись таблицы страниц увеличивается с 32 до 36 бит. Это позволяет больше места для физического адреса страницы или поля номера кадра страницы (PFN) в записи таблицы страниц. В начальных реализациях PAE поле номера кадра страницы (PFN) было расширено с 20 до 24 бит. Размер «байтового смещения» от транслируемого адреса по-прежнему составляет 12 бит, поэтому общий размер физического адреса увеличивается с 32 бит до 36 бит (с 20 + 12 до 24 + 12). Это увеличило физическую память, теоретически адресуемую процессором, с 4 до 64 ГБ.

Maximum size of PAE is = 64GB (2^36).

Для PAE в деталях используйте ссылка

...