64-битная ОС и ОЗУ

64-битная ОС и ОЗУ

Сколько оперативной памяти может использовать 64-разрядная операционная система Windows 8 Ultimate?

Я прочитал навеб-сайт Майкрософтчто можно разместить до 512 гигабайт (ГБ), но, насколько я понимаю, 64-разрядная версия подразумевает максимальное использование 16 гигабайт оперативной памяти для любой исполняемой программы.

Другими словами: может ли Windows 8 использовать все 512 ГБ оперативной памяти?

решение1

Теоретическое 64-битное адресное пространство составляет 2^64 или 16 эксабайт (18 446 744 073 709 551 616 байт)

Microsoft ограничивает максимальный объем физической памяти до 512 ГБ для Windows 8 Pro и Enterprise.ссылка)

Это в основном делается по коммерческим причинам, хотя я слышал, что Microsoft разрешает использовать только тот объем памяти, для которого существует оборудование, которое они могут протестировать.

Что касается виртуального адресного пространства пользовательского режима для каждого процесса, то до Windows 8.1 оно было ограничено 8192 ГБ. В Windows 8.1 оно увеличено до 128 ТБ.ссылка)(ссылка)

Способ организации виртуального адресного пространства обусловлен тем, что современные процессоры реализуют только 256 ТБ виртуальной памяти.

решение2

Пока этомогТеоретически Microsoft может использовать гораздо больше оперативной памяти, но ограничивает возможный объем оперативной памяти для Windows 8 до512 ГБв редакциях Pro и Enterprise, а в остальных — еще меньше.

Для доступа к Windows Server 2012 требуетсянесколько терабайт памяти, что все еще ниже предела соответствующего оборудования.

Вероятно, можно с уверенностью предположить, что причина не техническая, т. е. они хотят, чтобы вы купили настоящую серверную ОС для серверных (или связанных с ними) задач.


Обратите внимание, что у ЦП также есть свой собственный предел адресуемой памяти. Например, Intel указывает предел в 750 ГБ для текущих ЦП Xeon E5-2600 (разработанных для плат с двумя сокетами). Чтобы получить >1 ТБ, вам нужны (более дорогие) разработанные для плат с 4 и более ЦП.

решение3

Ну, ваши источники правы, даже если это не так.Майкрософт. Ядро NT сопоставит это с различными областями адресов, но даже современные процессоры реализуют только 48/52 бита, что ограничивает объем до уровня ниже теоретического максимума 64-битной архитектуры.

Также не путайте идею виртуальной памяти, которую может использовать программа, с физической оперативной памятью, к которой операционная система может получить доступ через ЦП. Возможно, вам захочется почитать о таких концепциях, как Nonpaged и Paged Pool в "Windows Internals" Руссиновича, а также о том, как Paged Pool на самом деле используется для представления пространства процесса для процессов пользовательского режима.

решение4

В 64-битной ОС ограничивающим фактором в том, сколько памяти вы можете использовать, будет ваша системная плата, а не ОС. Вы упретесь в свой аппаратный лимит задолго до того, как сможете использовать Windows по максимуму.

Связанный контент