Настройка оперативной памяти в BIOS. Оперативная память используется не полностью

В этой статье мы разберемся, как убрать ограничение 4 Гб памяти на 32 битных версиях Windows 8 и Windows 8.1, и задействовать всю доступную на компьютере оперативную память.

Большинство пользователей Windows убеждены, что 32 битные ОС Microsoft не поддерживают более 4 Гб оперативной памяти . Таким образом, максимум памяти, доступной в Windows 8/ 8.1 x86 — 4 Гб. А с учетом того, что Windows резервирует часть памяти под свои нужды и нужды периферийных устройств) чаще всего для видеокарты), конечному пользователю для использования доступны обычно около 3-3,5 Гбайт памяти.

На первый взгляд все логично – пределом адресации для 32 разрядной адресной шины являются те самые 4 Гб. Во всех официальных документах Microsoft указывает именно этот максимальный размер памяти, поддерживаемый во всех клиентских версиях x86-системе. Хотя на самом деле Microsoft немного вводит всех в заблуждение.

Что такое PAE и зачем он нужен

PAE (Physical Address Extension - расширение физической адресации) – эта опция x86 процессора, позволяющая ему получить доступ более чем к 4 Гб физической памяти . Не будем углубляться в технические подробности технологии PAE, просто отметим, что это технология поддерживается всеми процессорами и непосредственно в OC Windows уже довольно давно.

Так, например, 32 битная версия Windows Server, запущенная на процессоре x86, может использовать PAE для доступа ко всей оперативной памяти системы (до 64 Гб или до 128 Гб в зависимости от поколения процессора).

Скажем больше, поддержка режима PAE в ядре Windows имеется, еще начиная с Windows XP. Просто по умолчанию PAE доступен только в серверных ОС, а в клиентских же ОС Windows этот режим хотя и имеется, но отключен.

Примечание . PAE может использоваться только на 32 битных версиях Windows, запущенных на совместимых с этим режимом x86 процессорах.

Ограничения режима PAE

  • PAE не расширяет виртуальное адресное пространство каждого процесса. Каждый процесс, запущенный на 32 битной системе все так же ограничен 4 Гб адресного пространства.

    Совет . PAE не поможет увеличить количество памяти, доступной для ресурсоемкого приложения (например, графического или видеоредактора). Если такая необходимость имеется, лучше перейти на 64 разрядную ОС.

  • При использовании PAE следует отметить небольшое снижение производительности системы за счет уменьшения скорости доступа к памяти, вызванное накладными расходами на переключение отображаемых страниц в памяти
  • Драйвера некоторых устройств не могут корректно работать в 36 битном адресном пространстве.

Итак, можно сделать вывод, что верхний предел доступной физической памяти в 32 битных версиях Windows ограничен программно на уровне ядра ОС. А если есть программное ограничение, это означает, что его можно обойти! Каким же образом включить режим PAE в 32 битной Windows 8.1 и задействовать всю доступную оперативную память.

Патч, включающий PAE и позволяющий задействовать всю оперативную память на Windows 8 / 8.1 x86

Включить режим PAE в Windows 8 (Windows 8.1) штатными средствами не получится (для этого придется вручную в HEX редакторе править файл ядра ntoskrnl.exe и переподписывать его). Проще всего воспользоваться готовым патчем PatchPae2 , который написан энтузиастом Wen Jia Liu. Скачать патч PatchPae2 можно . (архив содержит сам патчер — PatchPae2.exe, его исходные коды и необходимые инструкции).

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

Патч PatchPae2 будет работать со следующими ОС:

  • Windows Vista SP2
  • Windows 7 / Windows 7 SP1
  • Windows 8 / Windows 8.1

Примечание . Перед установкой необходимо патча с целью предотвращения конфликтов рекомендуется отключить оптимизаторы и драйверы оперативной памяти. Их можно будет активировать после применения патча и загрузки системы в режиме PAE.

Установка PAE — патча в Windows 8 / 8.1

Внимание . Данную инструкцию можно использовать только для 32 битных версий Windows 8 и Windows 8.1, для предыдущих ОС Microsoft процедура немного отличается! Будьте внимательны!


Примечание. В любой момент времени пользователь, перезагрузившись, может в загрузочном меню переключиться с режима PAE на обычный, или обратно.

Важно! После установки патча необходимо быть особенно внимательными при установке обновлений безопасности Windows. Т.к. некоторые обновлений Windows иногда содержат и обновления для ядра, после их установки необходимо обновить и ядро PAE: PatchPae2.exe -type kernel -o ntoskrnx.exe ntoskrnl.exe

Кроме того, могут возникнуть проблемы, описанные и .

Удаление патча PAE

Чтобы удалить патч PAE из системы, необходимо:

  1. Удалить соответствующую запись из загрузочного меню (проще всего это сделать с помощью msconfig )
  2. Удалите файлы ntoskrnx.exe и winloadp.exe в каталоге %Windir%\System32 .

Никаких других изменений в систему патч не вносит.

После обновления до Windows 10 многие пользователи начали жаловаться на проблему использования неполного объема оперативной памяти. Для примера приведем случай с форума Microsoft. При установке 6 Гб ОЗУ в Windows 10 32 отображалось только 3,92 Гб. Весь объем оперативной памяти был недоступный, а точнее, система просто его не видела. В некоторых случаях решить такую проблему помогала переустановка планок ОЗУ местами и чистка контактов. Однако в ряде случаев решить такую проблему не удалось.

Способы настройки отображения всей ОЗУ на Windows 10

Если вы столкнулись с ситуацией, когда доступна не вся оперативная память на Windows 10 и при этом модули вы не меняли местами, стоит выполнить следующие действия:

  • Жмём «Win+R» и вводим «msconfig».
  • Откроется окно «Конфигурации системы». Переходим во вкладку «Загрузка». Нажимаем на кнопку «Дополнительные параметры».

  • Откроется небольшое окно. Здесь нужно снять отметку «Максимум памяти».

  • После сохранения изменений нужно перезагрузить компьютер и посмотреть, сколько используется памяти.

Если Windows 10 не видит полного объема ОЗУ, стоит изъять планки со слотов и поменять их местами. Также рекомендуем почистить контакты модулей оперативной памяти. Для этого стоит взять канцелярскую резинку и аккуратно стереть загрязнения с контактов.

Если модули вы вставите неправильно, при загрузке ПК пройдет пост. Необходимо будет вернуть модули на свои места и повторно запустить компьютер. После загрузки Windows 10 32 бит нужно скачать программу MemTest86 и проверить работоспособность ОЗУ.

Если с модулями все в порядке, однако Виндовс не видит всю оперативную память, возможно, у вас используется старая версия прошивки материнской платы и необходимо обновить BIOS , а также проверить некоторые его параметры.

  • Первый параметр BIOS, который отвечает за стабильную работу ОЗУ – это перераспределение памяти. В различных версиях прошивки этот раздел может именоваться по-разному (Memory Hole Remapping, H/W DRAM Over 4GB Remapping, Hardware Memory Hole). Поэтому стоит детально изучить инструкцию к плате или найти описание к версии используемого БИОСа.

Функция перераспределения памяти переносит блоки адресов, используемые картами расширения, в адресное пространство за 4-м Гб. Таким образом, удается увеличить объем оперативной памяти (в противном случае Windows10 будет видеть 3-3.5 Гб). Для полноценной поддержки такого объема необходимо использование 64-х разрядных процессоров и 64-х разрядных версий ОС (либо серверных версий 32-х разрядных операционных систем, допускающих расширение физических адресов PAE). При меньшем объеме оперативной памяти обязательно выключите эту опцию (Disabled), так как могут возникнуть неполадки в работе ОЗУ. Включение перераспределение памяти – значение Enabled.

  • Параметры памяти для видеоапертуры AGP – это объем памяти, который система делит с видеоадаптером. Он необходим для отображения текстур и отрисовки картинки. Данный объем памяти может не использоваться системой, если он заблокирован видеоадаптером. Способ, как включить его один: загружаемся в БИОС, выбираем AGP Aperture size. Стандартные значения: 32 МБ, 64 МБ, 128 МБ и Auto (Автоматически). Смотрим сколько памяти у видеокарты и по значению задаем нужное. Зачастую это 128 Мб. Однако можно попробовать применить каждый из параметров, чтобы посмотреть, какой из них даст лучший результат.

После внесения всех изменений в настройки BIOS нужно загрузиться в Windows и проверить, видный ли весь объем ОЗУ. Если система до сих пор не видит оперативную память, стоит попробовать вставить другие модули в слот. Возможно, старые планки ОЗУ вышли из строя или имеют дефекты.

О том, почему система не видит всей оперативной памяти и как это исправить, смотрите в видео:

Увеличение диапазона оперативной памяти является одним из самых простых методов повышения быстродействия ПК. Однако многие пользователи при этом зачастую сталкиваются с такой проблемой: после добавления памяти операционная система сообщает о том, что она ей недоступна. Например, после увеличения объема до 8 ГБ, Windows видит лишь 4 ГБ. Такие проблемы могут быть вызваны аппаратными или программными причинами.

Используется 32-битная операционная система

При использовании Windows 7, 8, ХР, Vista на 32-х битной версии предусмотрено максимальное количество оперативки, которую они способны распознать. 32-х разрядные версии сильно ограничены по объему распознавания. По этой причине пользователям, использующим ОЗУ большего объема, следует применять 64-разрядную версию, иначе они не смогут ее использовать в полном объеме.

Для того чтобы узнать свою версию операционки нужно зайти в панель управления и выбрать пункт «Система ». В графе «Установленная память » отображается размер установленной оперативной памяти, а в скобках указывается, какая его часть может использоваться. Рядом отображается количество разрядов операционной системы.

Версия Windows не поддерживает такой объем памяти

Операционная система может не распознавать всю RAM из-за ограничений, связанных с ее версией. Для каждой редакции Windows имеются свои ограничения, например:

  • 7 starter – 2 ГБ;
  • 7 home basic – 8 ГБ (в том числе для 64-битной версии).

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

Если же такая проблема возникла с 64-разрядной системой Windows 10, исправить ситуацию можно путем обнуления настроек биоса .

Память зарезервирована видеокартой или другим оборудованием

Распространенным вариантом является ситуация, когда часть оперативного запоминающего устройства резервируется для своей работы другим оборудованием. Чаще всего его использует встроенная видеокарта. Для того чтобы проверить, какой объем ОЗУ использует другое оборудование, нужно зайти в окно «Система ». В случае если память действительно резервируют другие устройства, в соответствующей графе будет показано 2 значения: установленный объем и объем доступный для использования, который отображается в скобках. Разница между этими показателями показывает величину, которую забирают другие устройства.

Такой вариант возможен, если на ПК установлен видеоадаптер, не имеющий собственной видеопамяти. В этом случае система автоматически выделяет ему оперативку на уровне BIOS. Также часто ее может резервировать сетевой адаптер .

Материнская плата не поддерживает такой объем ОЗУ

Материнская плата также может иметь ограничение по устанавливаемой в нее компьютерной памяти. Это проявляется в том, что после успешной установки модулей и запуска плата не может использовать весь свой объем.

Для того чтобы удостовериться, что причина находится именно в этом, нужно войти в BIOS и прочитать информацию о поддерживаемом объеме , которая отобразится на первом экране. Для того чтобы не допустить такой ситуации следует внимательно изучать спецификацию материнской платы перед ее установкой.

Планки ОЗУ установлены некорректно

Если материнская плата поддерживает весь объем оперативной памяти, а в BIOS она не отображается, то причина может заключаться в ее неправильной установке . Возможно, что контакты плохо соединены между собой. Такая проблема решается очень просто: достаточно вынуть плату и переткнуть ее, либо поменять местами слоты или перетасовать планки.

Повреждения RAM

Самая сложная проблема заключается в повреждении самой планки RAM. Повредить ее можно в процессе эксплуатации или установки, кроме того брак может быть производственным. Для того чтобы удостовериться в повреждении следует протестировать все планки поочередно в один порт. После каждой смены следует выключать компьютер и в БИОСе проверять видит ли компьютер данную планку. Кроме того, проверить каждую планку отдельно или все вместе можно на другом компьютере . Для выхода из данной ситуации необходим ремонт или замена устройства.

Сегодня я расскажу об ограничениях виртуального адресного пространства Windows и о том, как бороться с ошибками «Недостаточно памяти», возникающие у 32-битных программ и игр, когда объем используемой ими памяти достигает 2 Гигабайт. Несколько простых способов обойти это ограничение и заставить приложения использовать более 2ГБ памяти.

Архитектура x86

Все современные десктоп процессоры Intel или AMD (и не только) основаны на x86 архитектуре, которая была впервые реализована в процессорах Intel 8086, вышедших в 1978 году. Вплоть до Intel 80386 (i386) процессоры были 16-bit и могли использовать лишь до 16 MB ОЗУ. Вышедшие в 1985 году i386 процессоры стали 32-bit , что дает возможность адресации до 4 GB оперативной памяти (до 64 GB в режиме PAE, но при этом приложения могут использовать так же только до 4 GB).

Понятное дело, что в те годы 4 GB выглядело практически недостижимым. Но ничто не стоит на месте и со временем этого оказалось мало. В 2003 году компания AMD (ага, уже не Intel ) в своих новых процессорах линейки Opteron внедрила расширение x86-64 (другие названия: AMD64, Intel64, x64, EM64T). Это расширение имело ряд улучшений: 64 битные основные регистры, дополнительные регистры и расширение адресного пространства. Текущая реализация позволяет использовать до 256 TB виртуального адресного пространства, при теоретическом максимуме в 16 EB (ExbiByte — 2 64 байт ). Процессоры Intel поддерживают расширение x86-64 (AMD64) со старших моделей Pentium 4 (Prescott и далее).

x86 и x64 операционные системы

Применимо к ОС (Операционные Системы) используется обозначения x86 (в обиходе часто обозначается как x32 ) и x64 , являющиеся 32-разрядными и 64-разрядными соответственно. Их различие в том, что x64 поддерживают AMD64, давая возможность использовать его преимущества, а x86 его не поддерживает (и не использует). На практике это дает определенные особенности и ограничения.

  • 64-разрядная ОС требует процессора с поддержкой AMD64 (все современные процессоры от Intel или AMD )
  • 32- разрядная ОС может работать, как на процессоре с поддержкой AMD64, так и без нее (но такую древность еще найти нужно)
  • 64-разрядные приложения работают только на 64-разрядной ОС
  • 32-разрядные приложения полноценно работают и на x32 и на x64 ОС, но преимуществ AMD64 они использовать не могут

На данный момент идет постепенный отказ от x86 операционных систем в пользу x64. Например, серверные версии Windows, начиная с 2008 R2, выпускаются только 64-разрядными. То же Microsoft частенько грозят сделать и для новых десктопных версий, но пока не делают.

Ограничения виртуальной памяти в Windows

У каждой версии Windows есть определенные ограничения по использованию физической и виртуальной памяти (можно посмотреть по ссылке). И если ограничение физической памяти связано, скорее, с лицензированием, то с ограничениями виртуальной все немного сложней.

Нас же интересует только виртуальная память , так как именно с ней взаимодействуют приложения. Если не вдаваться в подробности, то технология виртуальной памяти позволяет каждому процессу иметь свою собственную память – адресное пространство, которое виртуально не пересекается с адресными пространствами других процессов. То есть приложение «считает», что память принадлежит только ему одному и может даже использовать больше имеющегося объема физической ОЗУ, а уже распределением и согласованием занимается ОС.

И так, для 32-разрядных Windows общее ограничение виртуальной памяти – 4 GB (как и для 32-разрядных процессоров). 64-разрядные имеют ограничение от 15 до 256 TB в зависимости от версии. Но, любая редакция Windows делит общее адресное пространство на две части: user mode (пользовательский режим) – память, доступная приложениям и kernel mode (режим ядра) – память, используемая системой. И, если на х64 приложениям достается 8 – 128 GB, то для x32 это всего лишь 2 GB (фактически ~1.7-1.8 GB). При достижении этого лимита, приложение выдаст ошибку и будет закрыто, или просто «вылетит» без каких либо предупреждений.


Как устроена память в Windows, подробно расписано в Марка Руссиновича.

Функция настройки памяти 4GT

Для Windows x86 существует официальный «костыль», позволяющий перераспределить виртуальную память, давая приложениям до 3 GB, при этом уменьшая системное пространство до 1 GB. Называется это 4-Gigabyte Tuning . Как это выглядит, продемонстрированно на следующей схеме (слева – по-умолчанию, справа – с применением 4GT):


Включается опция следующим образом:

Для Windows XP/2003 – добавлением ключа /3GB в файле Boot.ini


Для Windows Vista/7/8 – команда BCDEdit /set increaseuserva 3072 (Пуск > Стандартные (Start > Accessories ), правой кнопкой по Командная строка (Command Prompt ) – Запуск от имени администратора (Run as Administrator ), ввести и запустить команду).


Включение данной опции может привести к некорректной работе некоторых драйверов, программ или Windows в целом.

Флаг IMAGE_FILE_LARGE_ADDRESS_AWARE

Приложение сможет использовать свыше 2 GB виртуального адресного пространства, только если оно скомпилировано с параметром IMAGE_FILE_LARGE_ADDRESS_AWARE . Все 64-разрядные приложения по-умолчанию имеют этот параметр (в этом их суть), а вот 32-разрядные могут иметь его или не иметь – тут все зависит от программиста, который поставил эту опцию при компиляции или не поставил.

Этот флаг – это то, что нам нужно, чтобы заставить 32 битное приложение использовать больше 2 GB памяти. Запуск такого 32-bit приложения на Windows x32 с применением 4GT даст ему до 3 GB памяти (фактически ~2.8 GB), а на Windows x64 все 4 GB.

К счастью, выставить этот флаг для любого приложения можно самостоятельно . Для этого есть несколько способов.

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

4GB Patch

Самый простой способ.

Для начала скачайте программу с сайта автора или отсюда:

После запуска 4gb_patch.exe откроется стандартное диалоговое окно «Открытие файла», где вам нужно указать.EXE файл, который вы собираетесь изменить.

Сразу после выбора файла появится окно программы, подтверждая успешную операцию. Далее вы можете изменить другой файл (нажав Another File ) или закрыть программу (нажав OK ).

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

CFF Explorer

Для тех, кто точно знает, что делает.

CFF Explorer – бесплатная и довольно мощная программа для работы с PE заголовками от автора 4 GB Patch . Скачать можно с сайта автора .

  1. Установив и запустив программу, открываем нужный.EXE файл.
  2. Переходим к пункту File Header .
  3. Щелкаем в правом нижнем углу появившейся таблицы (так и написано – Click here ).
  4. В открывшемся окне выставляем галочку напротив App can handle >2gb address space .
  5. Применяем и сохраняем файл.

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

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

EDITBIN.EXE

Небольшая утилита EDITBIN.EXE , которая есть в комплекте Microsoft Visual Studio.

Действия следующие (запускается из командной строки):

Выставить: EDITBIN.EXE /LARGEADDRESSAWARE name.exe

Убрать: EDITBIN.EXE /LARGEADDRESSAWARE:NO name.exe

С помощью этого же параметра (/LARGEADDRESSAWARE) задается использование памяти для проектов Visual Studio.

Заключение

Суммируя вышесказанное – для того, чтобы 32-разрядное приложение могло использовать более 2 GB памяти должны быть соблюдены два условия .

Все пользователи персональных пк добиваются того, чтобы увеличить свою оперативную память. Если вы собираетесь установить дополнительную планку, то это может помещать вашим планам, так как компьютер может попросту не увидеть её.Так почему же доступна не вся оперативная память в разных версиях Windows?
Компьютер не увидит оперативную память по нескольким причинам. Разрядность системы может играть большую роль. Компьютер, с 32-разрядной операционной системой, не увидит более 3 гб ОЗУ, потому что он так устроен. Чтобы решить эту проблему нужно установить 64-разрядную операционную систему.
Может возникнуть такая ситуация, что система и вправду показывает такое количество оперативной памяти, которая должна быть, но доступна она в меньших объёмах памяти. Это объясняется тем, что память зарезервирована встроенной видеокарте, но при наличии дискретной такой проблемы не будет выявлено. Но всё же стоит убедиться в этом и проверить в BIOS включена она или же нет и какое количество памяти она в данный момент использует.
Также при выборе такого параметра, как «Максимум памяти», вы не сможете воспользоваться ей в полной мере. При помощи конфигурации системы возможно это проверить.

Вероятные проблемы

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

Устаревшее железо тоже может быть помехой. Материнские платы старого поколения могут не видеть больше, чем 4 гб. Для этого нужно посмотреть характеристики самой материнской платы и узнать о максимальном объёме памяти, которую она может поддерживать.

Возможно и то, что, если планка новая, можно попробовать установить оперативную память в различные разъёмы, это может решить проблему. Может быть, перестановка поможет системе увидеть их.
Если эти способы не помогли решить проблему, то рассмотрим следующие варианты, которые могут вам помочь.
Неправильная настройка BIOS тоже может быть всему виной.

Включить перераспределение памяти

Проверьте BIOS на наличие включения перераспределения памяти в его параметрах. Если перераспределить память, то для windows её огромный объём может стать доступен. Тот, кто поставляет оборудование, сам решает, как обозвать функцию, которая будет ответственна за перераспределение памяти. Она может иметь такие названия, как расширение памяти, перераспределение памяти или другие похожие названия. Но также и исключать и тот факт, что такая функция, как перераспределение памяти, может отсутствовать у компьютера.

Изменить размеры видеоаппаратуры AGP при помощи параметров BIOS

Требуется выяснить о выделенной памяти конкретно для видеоаппаратуры AGP. Система делится этой памятью с видеоадаптером, который используется, чтобы отображать текстуры и отрисовки. Параметры BIOS помогут в настройке размера видеоаппаратуры. Её размер обычно 32,64,128 или задаётся автоматически. Затем следует перезагрузить компьютер и проверить объём оперативной памяти.