2

В настоящее время я использую 32-разрядную версию Windows 7 Professional с 6 ГБ оперативной памяти.

Я использую патч PAE, чтобы разрешить использование более 3,5 ГБ ОЗУ в 32-битной Windows. Подобное обсуждение состоялось здесь:как я могу включить PAE в Windows 7 (32-разрядная версия) для поддержки более 3,5 ГБ ОЗУ?

Ссылка на патч для Win7 SP1 находится здесь:https://wj32.wordpress.com/2011/02/23/pae-patch-updated-for-windows-7-sp1/

В любом случае, короткая история, у меня установлен патч, но если кто-то из вас играл в Skyrim, возможно, об этом известно, то в последней версии Skyrim (1.3.10) по умолчанию включен флаг Large Address Aware, чтобы он мог использовать до 3 ГБ памяти в 32-битной Windows и 4 ГБ памяти в 64-битной Windows. Конечно, чтобы воспользоваться этим преимуществом, вы также должны установить переменную среды пользователя в записи BCD (userva = 3072), чтобы приложение могло использовать все 3 ГБ в 32-битной Windows.

Вот вопрос: насколько я понимаю от моего друга, 32-разрядное ядро Windows может адресовать только до 2 ГБ памяти для себя. При включенном патче PAE и использовании приложения с поддержкой LAA, такого как Skyrim, у 32-битного ядра Windows возникнут какие-либо проблемы с правильным использованием дополнительной доступной памяти (например, будет ли он по-прежнему способен адресовать только 1 ГБ из-за исходный предел 4 ГБ) или Windows сможет правильно распределить достаточно памяти для себя, чтобы ядро могло использовать до 2 ГБ, необходимых? Помните, у меня есть 6 ГБ в моей первоначальной конфигурации.

Насколько я могу судить, даже если приложения не предназначены для работы с PAE, одно приложение может использовать до 2 ГБ, прежде чем оно достигнет своего "предела", поэтому теоретически я могу иметь до 3 приложений, использующих до 2 ГБ. каждый (притворяясь, что Windows не занимает какую-то память, а только теоретический сценарий), и я все равно буду в порядке, поскольку Windows обрабатывает, где в пространстве памяти находятся эти приложения.

Пожалуйста, не стесняйтесь исправлять меня, если я ошибаюсь - я не программист, но мне любопытно, какой тип потолков или стен я встретлю, используя эту конфигурацию.

2 ответа2

4

Пределы физической памяти и ограничения виртуальной памяти совершенно не связаны. Один не имеет ничего общего с другим. PAE снимает ограничение в 4 ГБ для физической памяти. Он не имеет никакого отношения к проблемам 3GB/LAA, связанным с виртуальной памятью.

Хотя есть одна неприятная проблема. При включенном режиме 3 ГБ ядро имеет только 1 ГБ доступного адресного пространства. Некоторые системные записи, включая записи для отслеживания использования и отображения физической памяти и всего невыгружаемого пула, должны находиться в этом адресном пространстве. Таким образом, ваша ОС может быть ограничена адресным пространством. Это может вызвать проблемы для 32-битных операционных систем, особенно когда другие вещи занимают много адресного пространства, например, видеокарты высокого класса.

Если это влияет на вас, первым симптомом будет сбой в сети при загадочных ошибках. Смотрите, например, эту ветку Microsoft.

Вы никогда не упоминали, что используете /3GB. Без этого процессы LAA по-прежнему ограничены 2 ГБ.

Насколько я могу судить, даже если приложения не предназначены для работы с PAE, одно приложение может использовать до 2 ГБ, прежде чем оно достигнет своего "предела", поэтому теоретически я могу иметь до 3 приложений, использующих до 2 ГБ. каждый (притворяясь, что Windows не занимает какую-то память, а только теоретический сценарий), и я все равно буду в порядке, поскольку Windows обрабатывает, где в пространстве памяти находятся эти приложения.

Нет! Ограничение 2 ГБ на виртуальную память. У вас есть 6 ГБ физической памяти. У вас может быть 50 процессов, каждый из которых использует 2 ГБ, и вы не достигнете какого-либо ограничения, за исключением ограничения для каждого из этих 50 процессов.

2

32-разрядное ядро Windows может адресовать только до 2 ГБ памяти для себя.

Да, ядро не займет более 2 ГБ из 4 ГБ виртуального адресного пространства программы (или более 1 ГБ, если у вас установлен флаг /3GB и программа поддерживает большие адреса). Таким образом, каждому приложению гарантировано меньше 2 ГБ виртуальной памяти (или 3 ГБ в последнем случае).

С помощью PAE ядро может использовать до 64 ГБ физической памяти. Но каждая программа по- прежнему имеет виртуальное адресное пространство 4 ГБ. Вы не можете обойти это каким-либо иным способом, кроме как путем обновления до 64-битной системы.

Насколько я могу судить, даже если приложения не предназначены для работы с PAE, одно приложение может использовать до 2 ГБ, прежде чем оно достигнет своего "предела", поэтому теоретически я могу иметь до 3 приложений, использующих до 2 ГБ. каждый (притворяясь, что Windows не занимает какую-то память, а только теоретический сценарий), и я все равно буду в порядке, поскольку Windows обрабатывает, где в пространстве памяти находятся эти приложения.

Ага.

Если приложению требуется более 2 ГБ физической памяти, оно должно использовать AWE, но я серьезно сомневаюсь, что игра делает это (программировать ее нелегко).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .