Как включить pae в windows xp

Обновлено: 03.07.2024

В середине 80-х объема conventional (обычной) памяти вполне хватало для драйверов, резидентных программ и нормальной работы системы.Ещё пять лет назад в домашней системе вполне адекватно смотрелись две планки по 128 Мб, то сейчас и двумя гигами никого не удивишь. Windows Vista дала понять, что памяти много не бывает, и ставить ее стоит столько, на сколько у тебя хватит денег.

Начал расти спрос, а вслед за ним и предложение – производители памяти увеличили ассортимент четырех гигабайтных Dual-Channel Kit’ов, которые вдруг резко перестали казаться таким уж излишеством. И вот тут-то и появились первые проблемы – далеко не у всех системы соглашались принять все предоставленное им богатство.Чем же грозит установка четырех гигабайт памяти и как побороть возможные проблемы.

Установка четырех и более гигов памяти в систему может быть чревата проблемами – далеко не весь ее объем будет виден и, тем более, доступен приложениям. Причина этих неудобств давно известна и, в общем-то, банальна – 32-битные операционки попросту не могут адресовать более четырех гигабайт памяти (2^32=4294967296 – вот предел адресного пространства для такой среды без дополнительных ухищрений. 64-битные редакции, как правило, работают с предоставленным им объемом без проблем – их такие проблемы не затрагивают за счет куда большего адресного пространства. Итак, проблема касается объемов более четырех гигабайт, но как же быть тем, кто установил, скажем, четыре планки по 1 Гб, а получает в лучшем случае 3.5-гигабайта.По идее 4 Гб детище Microsoft должно с легкостью поддерживать! На деле не все так просто. И, возможно, для того чтобы задействовать весь потенциал оперативки,придется пойти на определенные жертвы в лице стабильности, производительности или кардинальной смены ОС.И так перейдём к делу.И начнем с проблем, которые могут тебя настигнуть еще до загрузки операционки.

Первое – это неправильное определение ее объема в BIOS’е. Как правило, в этом случае отображается от чуть менее 3 Гб до примерно 3.8 Гб – в зависимости от системы и ее конфигурации. В этом случае с чего стоит начать, – это проверка материнской платы на совместимость. Загляни в мануал к плате – объем поддерживаемой памяти должен составлять не менее 4 Гб. Давайте выясним, куда же деваются «лишние» мегабайты. Дело в том, что все 32-битное адресное пространство невозможно отдать только лишь под приложения. Ресурсы системы, будь то чипсет, PCI-устройства и особенно видеокарта, также нуждаются в «месте под солнцем», то есть им необходимо присвоить определенный диапазон адресов. И если масштаб, в котором может действовать BIOS, составляет всего 4 Гб, то объем памяти, зарезервированный под оборудование, приходится отделять от оперативки. В противном случае неизбежно могут возникнуть конфликты между приложениями и системными устройствами.

Современные материнские платы решают эту проблему несколькими способами. Некоторые модели изначально правильно определяют объем памяти без каких-либо ухищрений – в этом случае тебе повезло . Другие решения требуют нашего вмешательства – как правило, в их BIOS’ах присутствует настройка «Memory Remap Feature» (название может варьироваться). Эта функция переназначает сегмент памяти, выделяемый устройствам, за пределы четырех гигабайт – таким образом, система начинает видеть твою память целиком уже на этапе загрузки. Если же подобной функции или ее вариантов в BIOS’е нет, а система упорно не желает видеть всю память, нам остается только посочувствовать – в этом случае «медицина бессильна». Впрочем, всегда остается возможность обновить прошивку материнской платы до последней версии – вполне вероятно, что это исправит проблему или хотя бы добавит в BIOS вожделенный пункт. Заметим, что в случае с Windows XP SP2 включение данной опции не только не принесет пользы, но и усугубит ситуацию, хотя об этом мы поведаем чуть ниже.

Если матплата не имеет в настройках BIOS Memory Remap Feature, это еще не значит, что она не работает с увеличенным объемом памяти. К примеру, когда мы установили четыре планки по 1 Гб в Gigabyte GA-965P-S3, плата сразу определила ровно 4 гигабайта, при этом в BIOS’е никаких настроек по перемещению выделяемого под устройства диапазона адресов не было.Когда система определила всю доступную ей память, наступает момент перейти к следующему пункту – поддержке на уровне операционных систем. Но еще одно отступление…

Вот теперь ты знаешь, что адресное пространство для 32-битной операционки ограничено четырьмя гигабайтами.Более того, о ее решении позаботились задолго до того, как ты впервые подумал о возможности установки в систему четырех гигов – в 1995 году. Именно тогда на арену вышел процессор Intel Pentium Pro с поддержкой технологии PAE – Physical Address Extension…

Что означает эта аббревиатура — вкратце, то данная технология позволяет процессору работать не с 32-битной, а с 36-битной адресацией, теоретически расширяя доступные ему адреса до 2^36 = 68719476736 байт (64 Гб). При этом само адресное пространство остается 32-битным, то есть равным 4 Гб, но за счет измененного отображения на него физической памяти становится возможным использование куда большего ее объема.

Разумеется, поддержка PAE имеется и в Windows – в этом и содержится ключ к детектированию полного объема оперативной памяти. Проблема в том, что не всегда технология включена по умолчанию – для ее использования должна загружаться специальная версия ядра. На данный момент поддержка PAE имеется у следующих операционок:

Windows 2000 Advanced Server

Windows 2000 Datacenter Server

Windows XP ( все версии )

Windows Server 2003 (and SP1), Standard Edition

Windows Server 2003, Enterprise Edition

Windows Server 2003, Datacenter Edition

Windows Server 2003 SP1, Enterprise Edition

Windows Server 2003 SP1, Datacenter Edition

Windows Vista (все версии, кроме Starter Edition – у нее поддержка памяти ограничена 1 Гб)

Если твой процессор поддерживает аппаратную антивирусную защиту NX-bit, то, вполне вероятно, что PAE в системе уже включена. Дело в том, что поддержка NX-bit со стороны Windows может работать только при включении данной опции, причем Windows XP SP2 и 2003 Server SP1 в большинстве случаев сами определяют наличие этого бита и устанавливают, какое ядро необходимо загружать. Если же PAE отключена (об этом можно узнать в окне «Свойства системы» или же с помощью утилиты вроде Everest), то ее необходимо активировать. Как это сделать, мы поясним ниже на примере различных операционок.

И о плохом: даже если Windows определит всю доступную память, пользу это принесет, в лучшем случае, твоему самолюбию. Причина в том, что область памяти за пределами 4 Гб в 32-битной среде может быть доступна только приложениям, написанным с использованием интерфейса AWE (Address Windowing Extension). Проще говоря, если PAE – это поддержка большого объема памяти со стороны железа и операционки, то AWE – это ее поддержка со стороны софта. И вся проблема в том, что такой поддержкой обладает разве что софт, оперирующий огромными объемами данных – к примеру, СУБД или программы, выполняющие сложные научные расчеты. Играм или офисному софту это попросту не нужно, соответственно, и прироста производительности в них ты не увидишь. А вот какой-нибудь Microsoft SQL Server получит очень даже ощутимую пользу!

Есть еще один способ «хака» памяти, доступной приложениям. Далеко не все знают, что виртуальное адресное пространство, которое, как ты помнишь, составляет 4 Гб, делится системой ровно пополам: 2 Гб на приложения и 2 Гб под системное ядро. Фактически, ни один процесс не может заполучить в свое распоряжение более 2 Гб памяти – еще одно доказательство того, что рядовому пользователю большой объем оперативки попросту ни к чему. Впрочем, есть способ обойти и это ограничение. Если добавить в файл C:\boot.ini к параметрам загрузки команду /3GB, то память перераспределится следующим образом: объем, выделяемый под ядро, ужмется до 1 Гб, а на процесс станет выделяться уже три гигабайта! Но и здесь мы натыкаемся на пресловутую поддержку со стороны софта – большинство приложений предоставленной им радости попросту не поймет. А поймет ее только софт, скомпилированный со специальным ключом /LARGEADDRESSAWARE – это, опять же, далеко не игры, и даже не любимый «Фотошоп». Заметим, что при использовании операционной системы с поддержкой большого количества памяти (к примеру, до 32 Гб) ключ /3GB сократит количество доступной памяти до 16 гигов. То есть, если в твоем сервере отображается 16 Гб, а установлено гораздо больше – ищи проблему в boot.ini и безжалостно удаляй.

Теперь рассмотрим, что могут предложить нам текущие операционки от Microsoft…

С этой операционной системой не все гладко: старовата она для работы с большими объемами памяти, и с PAE работают только две версии: Advanced Server и Datacenter Server. Они, впрочем, поддерживают до 8 и 32 Гб памяти соответственно, а это весьма неплохая перспектива для 32-битной среды! Итак, чтобы увидеть четыре и более гига в данной системе (при условии того, что BIOS видит весь объем), достаточно добавить в boot.ini ключ «/PAE» (без кавычек) – после этого ОС должна увидеть всю имеющуюся память. Использовать ее она, разумеется, будет только при наличии соответствующего софта, но ведь если ты используешь такие операционки, то и софт найдется, правда?

Самое интересное в нашем рассказе то, что наиболее популярная ОС от Microsoft хуже всего оснащена поддержкой большого количества памяти. Если не сказать большего – вообще не оснащена. А обиднее всего, что так было не всегда, а лишь до появления пакета обновлений Service Pack 2 – именно в нем возможности PAE были значительно урезаны. Если быть точнее, то во избежание конфликтов доступное адресное пространство было ужато с 36 бит до стандартных 32 бит, а сама PAE стала использоваться разве что для поддержки NX-бита. В результате это приводит к забавным казусам – при включении опции «Memory Remap Feature» BIOS начинает видеть больше памяти, а Windows, наоборот, меньше! К примеру, если до включения опции BIOS определял 3.5 Гб, то после он видит уже 4 Гб, в то время как в Windows определяется всего 3 Гб! А дело все в том, что Memory Remap Feature переносит память за пределы четырех гигабайт блоками по гигабайту. То есть если после выделения памяти под железо BIOS определял 3.5 Гб, то после «выноса» этой памяти за пределы адресного пространства остается всего 3 Гб. Соответственно, если первоначально было видно, к примеру, 2.8 Гб, то «передислоцировалось» уже 2 Гб, и столько же оставалось Windows, которая без нормальной поддержки PAE попросту не могла видеть то, что находилось за пределами ее восприятия.

Отсюда неутешительный вывод: Memory Remap Feature для Windows XP SP2 применять бесполезно – это принесет лишь вред. Только два варианта могут заставить XP видеть 4 Гб памяти – использование версии Service Pack 1 (на что вряд ли кто-то пойдет), либо же установка 64-битной версии операционки.

Windows Server 2003

В сравнении с Windows XP, это детище Microsoft гораздо лучше обучено использованию больших объемов памяти. Единственный представитель линейки, у которого, насколько нам известно, имеются проблемы с режимом PAE – это Windows Server 2003 Standard Edition SP1, причем он не только «болен» той же проблемой, что и XP, но и «заразился» ей точно так же – с выходом последнего сервис-пака. Соответственно, на всех остальных версиях 4 Гб памяти должны определяться элементарно – сразу после включения Memory Remap Feature в BIOS и добавления параметра «/PAE» в boot.ini (последний, возможно, уже будет выставлен).

Вот мы и дошли до операционной системы, не очень актуальной пока, но претендующей на лидирующую роль в самое ближайшее время. Пользователей Vista проблема поддержки 32-битной версией 4 Гб памяти беспокоит особенно сильно – ведь, по сути, такой объем дорогущей оперативки приобретается именно ради нее. Но здесь мы наблюдаем все то же самое: от 2 до 3.5 Гб видимой памяти вместо четырех, как того требует справедливость. Есть ли решение у данной проблемы? В отличие от Windows XP, действительно есть, и довольно тривиальное!

Файла boot.ini в Vista нет – вместо него конфигурацию загрузки можно редактировать специальной утилитой BCDEdit.exe. Итак, все, что требуется сделать, это войти в командную строку (cmd) и набрать там следующее:

BCDEdit /set PAE forceenable

BCDEdit /set nolowmem on

Первый пункт здесь форсирует поддержку PAE, ну а второй загружает системные файлы и драйвера в область за пределами 4 Гб, высвобождая место в адресном пространстве. После перезагрузки ОС должна увидеть все 4 Гб памяти, ну а стоило ли это затраченных усилий, решай сам. А заодно и протестируй систему на стабильность – вполне возможно, что теперь ее поубавится.

Ты уже понял, установка большого объема памяти в систему – не такая уж тривиальная задача, особенно в случае с использованием «домашних» операционок XP и Vista. Инаиболее правильный способ задействовать весь объем оперативки – установка 64-битной операционной системы. Все остальные методы, рассмотренные в статье, можно воспринимать лишь как «хаки», и не удивляйся, если научившись использовать всю доступную память, винда вдруг начнет нещадно глючить. В любом случае , какую версию ОС использовать, – это решать тебе самому, в зависимости от потребностей и целей. Да и 4 Гб памяти, для домашней системы пока многовато …

Редактирование boot.ini, файла с конфигурацией загрузки Windows, осуществляется так:

1) Включи отображение скрытых файлов и папок.

2) Найди boot.ini в корневом каталоге системного диска (обычно C:\) и сними с него атрибут «только чтение».

3) Открыв файл, ты увидишь примерно следующее (в зависимости от ОС):

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS=»Microsoft Windows XP Professional RU» /noexecute=optin /fastdetect

4) Изменения вносятся в пункт, касающийся необходимой операционки (в данном случае она одна). Если необходимо внести параметр /3GB, то результат должен выглядеть так:

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS=»Microsoft Windows XP Professional RU» /noexecute=optin /fastdetect /3GB

5) Сохрани файл и выставь параметр «только чтение» обратно.

У ключа /3GB есть аналог и в Windows Vista. Более того, ты можешь гораздо более гибко регулировать, сколько памяти выделять пользовательским процессам, а сколько оставлять ядру. Для этого используй команду «BCDEdit /set IncreaseUserVa МБ», где МБ – число, лежащее в пределах от 2048 до 3072 и составляющее количество памяти, выделяемой на процесс. 4096 минус это число – столько мегабайт будет выделено ядру операционной систем.

Расширение физических адресов (PAE) — это компонент процессора, который позволяет процессорам x86 получать доступ к более чем 4 ГБ физической памяти в поддерживающих версиях Windows. некоторые 32-разрядные версии Windows Server, работающих на системах на базе x86, могут использовать PAE для доступа до 64 гб или 128 гб физической памяти в зависимости от размера физического адреса процессора. дополнительные сведения см. в разделе ограничения памяти для выпусков Windows.

Архитектуры процессоров Intel Itanium и x64 могут получить доступ к более чем 4 ГБ физической памяти в собственном виде и, следовательно, не предоставляют эквиваленты PAE. PAE используется только в 32-разрядных версиях Windows, работающих в системах на базе x86.

При использовании PAE операционная система перемещается из преобразования линейного адреса из двух уровней в преобразование адресов, сопоставленное с тремя уровнями. Вместо линейного адреса, разбитого на три отдельных поля для индексирования в таблицах памяти, оно делится на четыре отдельных поля: 2-разрядное битовое значение, 2 9-разрядное битовых полей и 12-разрядное битовое значение, соответствующее размеру страницы, реализованному в архитектуре Intel (4 КБ). Размер записей в таблице страниц (PTE) и записей каталога страниц (Пдес) в режиме PAE увеличивается с 32 до 64 бит. Дополнительные биты позволяют операционной системе PTE или ПДЕ ссылаться на физическую память свыше 4 ГБ.

в 32-разрядных Windows, работающих в системах на базе x64, PAE также обеспечивает несколько дополнительных функций системы и процессоров, включая предотвращение выполнения данных с аппаратным обеспечением (DEP), неоднородный доступ к памяти (NUMA)и возможность добавлять память в систему во время ее работы (память с горячим добавлением).

PAE не изменяет объем виртуального адресного пространства, доступного процессу. каждый процесс, выполняемый в 32-разрядном Windows, по-прежнему ограничен виртуальным адресным пространством размером 4 гб.

Системная поддержка PAE

PAE поддерживается только в следующих 32-разрядных версиях Windows, работающих в системах на базе x86:

  • Windows 7 (только бит 32)
  • Windows Сервер 2008 (только 32-разр.)
  • Windows Vista (только 32-разрядная версия)
  • Windows Сервер 2003 (только 32-разр.)
  • Windows XP (только 32-разрядная версия)

Включение PAE

Windows автоматически включает PAE, если функция dep включена на компьютере, поддерживающем dep с аппаратной поддержкой, или если компьютер настроен для устройств памяти с горячим добавлением в памяти за пределами 4 гб. Если компьютер не поддерживает DEP, поддерживающий аппаратную поддержку, или не настроен для устройств памяти с горячим добавлением в памяти, превышающих 4 ГБ, PAE необходимо явно включить.

Чтобы явно включить PAE, используйте следующую команду BCDEdit/Set , чтобы задать параметр загрузочной записи PAE :

BCDEdit/Set [ ] PAE форцеенабле

Если функция DEP включена, PAE невозможно отключить. Используйте следующие команды BCDEdit/Set для отключения DEP и PAE:

BCDEdit/Set [ ] NX алвайсофф
BCDEdit/Set [ ] PAE форцедисабле

Windows Server 2003 и Windows XP: Чтобы включить PAE, используйте параметр /PAE в файле boot.ini . Чтобы отключить PAE, используйте параметр /нопае . Чтобы отключить DEP, используйте параметр /EXECUTE .

Сравнение PAE и другой поддержки больших объемов памяти

PAE, 4-Гигабайтная настройка (4GT) и расширения AWE служат для разных целей и могут использоваться независимо друг от друга.

  • PAE позволяет операционной системе получать доступ и использовать более 4 ГБ физической памяти.
  • 4GT увеличивает часть виртуального адресного пространства, доступного для процесса от 2 ГБ до 3 ГБ.
  • Расширения AWE — это набор API-интерфейсов, который позволяет процессу выделить нестраничную физическую память, а затем динамически сопоставлять части этой памяти с виртуальным адресным пространством процесса.

Если не используются ни 4GT, ни AWE, объем физической памяти, который может использовать один 32-разрядный процесс, ограничен размером его адресного пространства (2 ГБ). В этом случае система, поддерживающая PAE, по-прежнему может использовать более 4 ГБ ОЗУ для одновременного выполнения нескольких процессов или кэширования данных файлов в памяти.

4GT можно использовать с PAE или без него. однако некоторые версии Windows ограничивают максимальный объем физической памяти, который может поддерживаться при использовании 4GT. В таких системах Загрузка с помощью 4GT Enabled приводит к тому, что операционная система будет игнорировать любую память, превышающую ограничение.

AWE не требует PAE или 4GT, но часто используется вместе с PAE, чтобы выделить более 4 ГБ физической памяти из одного 32-разрядного процесса.

«640 Кб должно хватить всем!» – снова и снова нам приходится вспоминать это знаменитое и теперь уже звучащее так наивно изречение Билла Гейтса, так знакомое, наверное, каждому компьютерщику-старожилу. Действительно, в середине 80-х объема conventional (обычной) памяти вполне хватало для драйверов, резидентных программ и нормальной работы системы, вот только прогресс решил не идти на поводу у дядюшки Билла. И если лет пять назад в домашней системе вполне адекватно смотрелись две планки по 128 Мб, то сейчас и двумя гигами никого не удивишь. Да что там два – Windows Vista ненавязчиво дала понять, что памяти много вообще не бывает, и ставить ее стоит столько, на сколько у тебя хватит денег. Начал расти спрос, а вслед за ним и предложение – производители памяти увеличили ассортимент четырехгигабайтных Dual-Channel Kit’ов, которые вдруг резко перестали казаться таким уж излишеством. И вот тут-то и появились первые проблемы – далеко не у всех системы соглашались принять все предоставленное им богатство, а железячные форумы запестрили темами вроде «Windows XP видит только 2.8 Гб из четырех, помогите!». Попробуем разобраться, чем же тебе грозит установка четырех гигабайт памяти и как побороть возможные проблемы.

Итак, как ты уже понял, установка четырех и более гигов памяти в систему может быть чревата проблемами – далеко не весь ее объем будет виден и, тем более, доступен приложениям. Причина этих неудобств давно известна и, в общем-то, банальна донельзя – 32-битные операционки попросту не могут адресовать более четырех гигабайт памяти (2^32=4294967296 – вот предел адресного пространства для такой среды) без дополнительных ухищрений. 64-битные редакции, как правило, работают с предоставленным им объемом без проблем – их, слава богу, такие проблемы не затрагивают за счет куда большего адресного пространства. Итак, проблема касается объемов более четырех гигабайт, но как же быть тем, кто установил, скажем, четыре планки по 1 Гб, а получает в лучшем случае 3.5-гигабайтный «огрызок»? Ведь по идее 4 Гб детище Microsoft должно с легкостью поддерживать! По идее – да. На деле же не все так просто. И, возможно, для того чтобы задействовать весь потенциал оперативки, тебе придется пойти на определенные жертвы в лице стабильности, производительности или кардинальной смены ОС.

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

Итак, первая напасть, которая часто одолевает пользователей, установивших 4 Гб памяти в систему, – это неправильное определение ее объема в BIOS’е. Как правило, в этом случае отображается от чуть менее 3 Гб до примерно 3.8 Гб – в зависимости от системы и ее конфигурации. В этом случае первое, с чего стоит начать, – это проверка материнской платы на совместимость. Загляни в мануал к плате – объем поддерживаемой памяти должен составлять не менее 4 Гб. Для серверных мамок этот показатель, само собой, может быть гораздо больше, но в данном материале мы будем говорить именно о desktop-решениях, равно как и о 32-битных операционных системах.

Теперь поясним, куда же деваются «лишние» мегабайты. Дело в том, что все 32-битное адресное пространство невозможно отдать только лишь под приложения. Ресурсы системы, будь то чипсет, PCI-устройства и особенно видеокарта, также нуждаются в «месте под солнцем», то есть им необходимо присвоить определенный диапазон адресов. И если масштаб, в котором может действовать BIOS, составляет всего 4 Гб, то объем памяти, зарезервированный под оборудование, приходится отделять от оперативки. В противном случае неизбежно могут возникнуть конфликты между приложениями и системными устройствами.

Современные материнские платы решают эту проблему несколькими способами. Некоторые модели изначально правильно определяют объем памяти без каких-либо ухищрений – в этом случае считай, что тебе повезло . Другие решения требуют нашего вмешательства – как правило, в их BIOS’ах присутствует настройка «Memory Remap Feature» (название может варьироваться). Эта функция переназначает сегмент памяти, выделяемый устройствам, за пределы четырех гигабайт – таким образом, система начинает видеть твою память целиком уже на этапе загрузки. Если же подобной функции или ее вариантов в BIOS’е нет, а система упорно не желает видеть всю память, нам остается только посочувствовать – в этом случае «медицина бессильна». Впрочем, всегда остается возможность обновить прошивку материнской платы до последней версии – вполне вероятно, что это исправит проблему или хотя бы добавит в BIOS вожделенный пункт. Заметим, что в случае с Windows XP SP2 включение данной опции не только не принесет пользы, но и усугубит ситуацию, хотя об этом мы поведаем чуть ниже.

Если матплата не имеет в настройках BIOS Memory Remap Feature, это еще не значит, что она не работает с увеличенным объемом памяти. К примеру, когда мы установили четыре планки по 1 Гб в Gigabyte GA-965P-S3, плата сразу определила ровно 4 гигабайта, при этом в BIOS’е никаких настроек по перемещению выделяемого под устройства диапазона адресов не было.

Итак, когда система определила всю доступную ей память, наступает момент перейти к следующему пункту – поддержке на уровне операционных систем. Но сначала еще одно лирическое отступление…

Теперь ты знаешь, что адресное пространство для 32-битной операционки ограничено четырьмя гигабайтами. Спешим тебя обрадовать – эта проблема во многих случаях решаема и без использования 64-битных осей. Более того, о ее решении позаботились задолго до того, как ты впервые подумал о возможности установки в систему четырех гигов – в 1995 году. Именно тогда на арену вышел процессор Intel Pentium Pro с поддержкой технологии PAE – Physical Address Extension…

Что же означает эта загадочная аббревиатура? Если вкратце, то данная технология позволяет процессору работать не с 32-битной, а с 36-битной адресацией, теоретически расширяя доступные ему адреса до 2^36 = 68719476736 байт (64 Гб). При этом само адресное пространство остается 32-битным, то есть равным 4 Гб, но за счет измененного отображения на него физической памяти становится возможным использование куда большего ее объема.

Разумеется, поддержка PAE имеется и в Windows – в этом и содержится ключ к детектированию полного объема оперативной памяти. Проблема в том, что не всегда технология включена по умолчанию – для ее использования должна загружаться специальная версия ядра. На данный момент поддержка PAE имеется у следующих операционок:
Windows 2000 Advanced Server
Windows 2000 Datacenter Server
Windows XP (все версии)
Windows Server 2003 (and SP1), Standard Edition
Windows Server 2003, Enterprise Edition
Windows Server 2003, Datacenter Edition
Windows Server 2003 SP1, Enterprise Edition
Windows Server 2003 SP1, Datacenter Edition
Windows Vista (все версии, кроме Starter Edition – у нее поддержка памяти ограничена 1 Гб)


Заметим, что если твой процессор поддерживает аппаратную антивирусную защиту NX-bit, то, вполне вероятно, что PAE в системе уже включена. Дело в том, что поддержка NX-bit со стороны Windows может работать только при включении данной опции, причем Windows XP SP2 и 2003 Server SP1 в большинстве случаев сами определяют наличие этого бита и устанавливают, какое ядро необходимо загружать. Если же PAE отключена (об этом можно узнать в окне «Свойства системы» или же с помощью утилиты вроде Everest), то ее необходимо активировать. Как это сделать, мы поясним ниже на примере различных операционок.

Теперь о плохом: даже если Windows определит всю доступную память, пользу это принесет, в лучшем случае, твоему самолюбию. Причина в том, что область памяти за пределами 4 Гб в 32-битной среде может быть доступна только приложениям, написанным с использованием интерфейса AWE (Address Windowing Extension). Проще говоря, если PAE – это поддержка большого объема памяти со стороны железа и операционки, то AWE – это ее поддержка со стороны софта. И вся проблема в том, что такой поддержкой обладает разве что софт, оперирующий огромными объемами данных – к примеру, СУБД или программы, выполняющие сложные научные расчеты. Играм или офисному софту это попросту не нужно, соответственно, и прироста производительности в них ты не увидишь. А вот какой-нибудь Microsoft SQL Server получит очень даже ощутимую пользу!

Есть и еще один способ «хака» памяти, доступной приложениям. Далеко не все знают, что виртуальное адресное пространство, которое, как ты помнишь, составляет 4 Гб, делится системой ровно пополам: 2 Гб на приложения и 2 Гб под системное ядро. Фактически, ни один процесс не может заполучить в свое распоряжение более 2 Гб памяти – еще одно доказательство того, что рядовому пользователю большой объем оперативки попросту ни к чему. Впрочем, есть способ обойти и это ограничение. Если добавить в файл C:\boot.ini к параметрам загрузки команду /3GB, то память перераспределится следующим образом: объем, выделяемый под ядро, ужмется до 1 Гб, а на процесс станет выделяться уже три гигабайта! Но и здесь мы натыкаемся на пресловутую поддержку со стороны софта – большинство приложений предоставленной им радости попросту не поймет. А поймет ее только софт, скомпилированный со специальным ключом /LARGEADDRESSAWARE – это, опять же, далеко не игры, и даже не любимый «Фотошоп». Заметим, что при использовании операционной системы с поддержкой большого количества памяти (к примеру, до 32 Гб) ключ /3GB сократит количество доступной памяти до 16 гигов. То есть, если в твоем сервере отображается 16 Гб, а установлено гораздо больше – ищи проблему в boot.ini и безжалостно удаляй.

Теперь давай посмотрим, что могут предложить нам текущие операционки от Microsoft…

Windows 2000

С этой операционной системой не все гладко: старовата она для работы с большими объемами памяти, и с PAE работают только две версии: Advanced Server и Datacenter Server. Они, впрочем, поддерживают до 8 и 32 Гб памяти соответственно, а это весьма неплохая перспектива для 32-битной среды! Итак, чтобы увидеть четыре и более гига в данной системе (при условии того, что BIOS видит весь объем), достаточно добавить в boot.ini ключ «/PAE» (без кавычек) – после этого ОС должна увидеть всю имеющуюся память. Использовать ее она, разумеется, будет только при наличии соответствующего софта, но ведь если ты используешь такие операционки, то и софт найдется, правда?

Самое интересное в нашем рассказе то, что наиболее популярная ОС от Microsoft хуже всего оснащена поддержкой большого количества памяти. Если не сказать большего – вообще не оснащена. А обиднее всего, что так было не всегда, а лишь до появления пакета обновлений Service Pack 2 – именно в нем возможности PAE были значительно урезаны. Если быть точнее, то во избежание конфликтов доступное адресное пространство было ужато с 36 бит до стандартных 32 бит, а сама PAE стала использоваться разве что для поддержки NX-бита. В результате это приводит к забавным казусам – при включении опции «Memory Remap Feature» BIOS начинает видеть больше памяти, а Windows, наоборот, меньше! К примеру, если до включения опции BIOS определял 3.5 Гб, то после он видит уже 4 Гб, в то время как в Windows определяется всего 3 Гб! А дело все в том, что Memory Remap Feature переносит память за пределы четырех гигабайт блоками по гигабайту. То есть если после выделения памяти под железо BIOS определял 3.5 Гб, то после «выноса» этой памяти за пределы адресного пространства остается всего 3 Гб. Соответственно, если первоначально было видно, к примеру, 2.8 Гб, то «передислоцировалось» уже 2 Гб, и столько же оставалось Windows, которая без нормальной поддержки PAE попросту не могла видеть то, что находилось за пределами ее восприятия.

Отсюда неутешительный вывод: Memory Remap Feature для Windows XP SP2 применять бесполезно – это принесет лишь вред. Только два варианта могут заставить XP видеть 4 Гб памяти – использование версии Service Pack 1 (на что вряд ли кто-то пойдет), либо же установка 64-битной версии операционки.

Windows Server 2003

В сравнении с Windows XP, это детище Microsoft гораздо лучше обучено использованию больших объемов памяти. Единственный представитель линейки, у которого, насколько нам известно, имеются проблемы с режимом PAE – это Windows Server 2003 Standard Edition SP1, причем он не только «болен» той же проблемой, что и XP, но и «заразился» ей точно так же – с выходом последнего сервис-пака. Соответственно, на всех остальных версиях 4 Гб памяти должны определяться элементарно – сразу после включения Memory Remap Feature в BIOS и добавления параметра «/PAE» в boot.ini (последний, возможно, уже будет выставлен).

Windows Vista

Вот мы и дошли до операционной системы, не очень актуальной пока, но претендующей на лидирующую роль в самое ближайшее время. Пользователей Vista проблема поддержки 32-битной версией 4 Гб памяти беспокоит особенно сильно – ведь, по сути, такой объем дорогущей оперативки приобретается именно ради нее. Но здесь мы наблюдаем все то же самое: от 2 до 3.5 Гб видимой памяти вместо четырех, как того требует справедливость. Есть ли решение у данной проблемы? В отличие от Windows XP, действительно есть, и довольно тривиальное!

Файла boot.ini в Vista нет – вместо него конфигурацию загрузки можно редактировать специальной утилитой BCDEdit.exe. Итак, все, что требуется сделать, это войти в командную строку (cmd) и набрать там следующее:

BCDEdit /set PAE forceenable

BCDEdit /set nolowmem on

Первый пункт здесь форсирует поддержку PAE, ну а второй загружает системные файлы и драйвера в область за пределами 4 Гб, высвобождая место в адресном пространстве. После перезагрузки ОС должна увидеть все 4 Гб памяти, ну а стоило ли это затраченных усилий, решай сам. А заодно и протестируй систему на стабильность – вполне возможно, что теперь ее поубавится.

Как ты уже понял, установка большого объема памяти в систему – не такая уж тривиальная задача, особенно в случае с использованием «домашних» операционок XP и Vista. И на наш взгляд, наиболее правильный способ задействовать весь объем оперативки – установка 64-битной операционной системы. Все остальные методы, рассмотренные в статье, можно воспринимать лишь как «хаки», и не удивляйся, если научившись использовать всю доступную память, винда вдруг начнет нещадно глючить. В любом случае мы не будем советовать тебе, какую версию ОС использовать, – это решать тебе самому, в зависимости от потребностей и целей. Да и 4 Гб памяти, честно говоря, для домашней системы пока многовато …


Редактирование boot.ini, файла с конфигурацией загрузки Windows, осуществляется так:

1) Включи отображение скрытых файлов и папок.

2) Найди boot.ini в корневом каталоге системного диска (обычно C:\) и сними с него атрибут «только чтение».

3) Открыв файл, ты увидишь примерно следующее (в зависимости от ОС):

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional RU" /noexecute=optin /fastdetect

4) Изменения вносятся в пункт, касающийся необходимой операционки (в данном случае она одна). Если необходимо внести параметр /3GB, то результат должен выглядеть так:

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional RU" /noexecute=optin /fastdetect /3GB

5) Сохрани файл и выставь параметр «только чтение» обратно.


У ключа /3GB есть аналог и в Windows Vista. Более того, ты можешь гораздо более гибко регулировать, сколько памяти выделять пользовательским процессам, а сколько оставлять ядру. Для этого используй команду «BCDEdit /set IncreaseUserVa МБ», где МБ – число, лежащее в пределах от 2048 до 3072 и составляющее количество памяти, выделяемой на процесс. 4096 минус это число – столько мегабайт будет выделено ядру операционной системы.

Как заставить 32-битную Windows использовать более 3 Гб оперативной памяти

А вот ставить 32-разрядную ОС на ПК с более чем 3 Гб памяти на борту, пожалуй, бессмысленно, ведь такая система всё равно не сможет использовать весь потенциал ОЗУ из-за ограничений архитектуры. Или всё же сможет? Возможно, вы будете удивлены, но такое действительно возможно. Есть версии Windows, в которых имеется особая функция под названием PAE или Physical Address Extension, позволяющая ЦП работать с 86-битной адресацией, что дает возможность задействовать объем памяти вплоть до 64 Гб при том же 32-битном адресном пространстве, остающимся неизменным. Согласно официальным источникам, PAE поддерживается Windows Server Enterprise Edition 2000, 2003 и 2008, чтобы активировать этот режим в других версиях, потребуется внесение кое-каких модификаций. Предложенный здесь способ применим в большей мере к Windows 7, а вот в Windows 8.1 и 10 результаты могут оказаться не теми, которых стоило бы ожидать. Если вы всё же решитесь на трюк, рекомендуем создать полную резервную копию системного раздела.
  • Предупреждение! Внесение модификаций в Windows с помощью описанных здесь инструментов может привести к необходимости переустановки вашей системы.
Для дела вам понадобятся PAE-патчи, скачайте их в архиве по ссылке , распакуйте архив и выберите патч для вашей версии системы.

Файлы безопасны, но антивирус всё-таки желательно отключить. Проще всего в Windows 7, в этой ОС достаточно забросить файл PAEPatch.exe из одноименной папки в каталог C:/Windows/system32 и запустить. О том, что патч был применен, укажет новая загрузочная запись во вкладке «Загрузка» утилиты msconfig (ее можно запустить через окошко «Выполнить»). Включите эту запись как используемую по умолчанию, тайм-аут выставьте от 2 до 5 секунд.

В Windows 8.1 и 10 всё немного сложнее, там вам нужно будет проследовать инструкции, приведенной в файле readme.tхt

— последовательно выполнить несколько команд, предварительно убедившись в корректности пути к исполняемому файлу патча PatchPae2.exe.

После этого также проверяем наличие загрузочной записи в окне утилиты msconfig и перезагружаем компьютер. Если всё получится, вы заметите прирост производительности, если нет, удаляем в msconfig запись «Windows (PAE Patched)» и файлы ntoskrnx.exe (ntkrnlpx.exe) и winloadp.exe из каталога System32.

Ну и не забываем о побочных следствиях применения патча. Испытавшие его на своих системах пользователи Windows 10 сообщали, что после «апдейта» у них переставали работать (это необязательно, а как повезет) некоторые устройства и системные приложения, включая Диспетчер задач. Не исключено появление зависаний, BSOD и черного экрана при загрузке. Со стороны пользователей Windows 7 особых жалоб не поступало, но это никак не означает, что можно обойтись без создания резервной копии системы. Рекомендуем другие статьи по данной теме

Комментарии (14)

Рекламный блок

Подпишитесь на рассылку

Навигация

Облако тегов

Архив статей

Сейчас обсуждаем

ираклий казанцев

У меня задействована утилита KillUpdate которая отключает обновление (в службах диспетчера, и я

Дмитрий

Здравствуйте! Опять от меня чисто теоретический вопрос. Упоминавшийся мною в другом разделе

Фёдор

Цитата: STAROGIL При запуске AOMEI Backupper в главном окне было предложено создать загрузочную

Фёдор

Цитата: Владимир С.П. Лично я уже 15 лет пользуюсь Acronis. Просто скачиваю на торренте Acronis

RemontCompa — сайт с огромнейшей базой материалов по работе с компьютером и операционной системой Windows. Наш проект создан в 2010 году, мы стояли у истоков современной истории Windows. У нас на сайте вы найдёте материалы по работе с Windows начиная с XP. Мы держим руку на пульсе событий в эволюции Windows, рассказываем о всех важных моментах в жизни операционной системы. Мы стабильно выпускаем мануалы по работе с Windows, делимся советами и секретами. Также у нас содержится множество материалов по аппаратной части работы с компьютером. И мы регулярно публикуем материалы о комплектации ПК, чтобы каждый смог сам собрать свой идеальный компьютер.

Наш сайт – прекрасная находка для тех, кто хочет основательно разобраться в компьютере и Windows, повысить свой уровень пользователя до опытного или профи.

Читайте также: