Оперативная память и система Windows. Максимальный объём оперативной памяти в Windows Максимальное количество оперативной памяти windows 7 32

05.03.2024 Ios

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

Всем привет, в этой статье блога Компьютер76 продолжаем рассматривать полезные преобразования ОС Windows, и сейчас мы попробуем с вами модернизировать систему так, чтобы можно было использовать всю оперативную память, установленную на компьютере, преодолевая порог 3 Гб. Если повезёт, вплоть до 64 Гб RAM (если это вообще может ваша материнская плата).

ВНИМАНИЕ. Способ безусловно “прокатывает” в ОС Vista и 7. Начиная с Windows 8 и моложе, действуйте на свой страх и риск.

Пару слов в предисловие

Даже не самый продвинутый пользователь замечал, что порой установленная оперативная память физически не используется системой в её 32 -х битной версии полностью. Если вы обладатель 64 -х битной версии Windows, статью можно не читать.

изначально у меня потерялся почти гигабайт памяти…

Обратимся к переменной напрямую через vbs скрипт – всё то же самое:

StrComputer ="." Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2") Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_ComputerSystem") For Each objItem In colItems WScript.Echo "TotalPhysicalMemory: " & objItem.TotalPhysicalMemory/1024/1024 Next

Вобщем, можно прогнать информацию по установленным планкам и видимому объёму RAM вдоль и поперёк. В статье об этом есть всё. Но всегда для владельцев 32-х битных версий результаты неутешительны, как и в моём случае: из двух планок DDR3 оперативной памяти объёмами 2 Гб каждая почти 1 Гиг куда-то исчез.

Почему так?

Да, архитектура 32-х битных операционных систем по умолчанию не позволяет использовать больше 4 Гбайт оперативной памяти. Каждый байт оперативной памяти имеет свой физический адрес, который система использует для доступа к определённой ячейке RAM. А вот кто-то взял и ограничил доступный объём адресов для RAM и других компонентов. Так что, если вы обладатель 32-х битной версии Windows, вы не можете априори использовать всю оперативную память, установленную на компьютере. Немного подробнее вопрос рассматривается в статье . И дело-то не в том, что памяти не хватает – на крайний случай можно недорого приобрести дополнительные планки оперативной памяти. Просто как-то нечестно…

Теперь к делу

Существует техника, или если хотите, способ под названием physical address extension (PAE ), которая и позволит 32-х битной версии “рассмотреть” всю установленную на компьютере RAM. Она работает просто: объём ячейки расширяется с 32 бит до 36. А вот в срезе общего объёма параметры установленной памяти эта цифра разрастается до гигантской. Ну… не до гигантской, но прирост заметен становится сразу.

Все эти манипуляции сформированы в PAE-патчи, которые я вам и предложу.

Как использовать всю оперативную память в Windows 7/8.1/10

Для каждой версии системы он свой. Однако принцип установки или избавления (вдруг что не так пойдёт) одинаков.

Противопоказания.

Нет. Доносились слухи о некорректной работе системы и даже последующей переустановке. Я склонен относить такие случаи только к криворукости пользователей. Использование файлов безопасно. Однако…

ИСПОЛЬЗУЙТЕ СОВЕТЫ НА СВОЙ СТРАХ И РИСК. ТАК ЧТО ПОЗВОЛЬТЕ СРАЗУ САМОУСТРАНИТЬСЯ ОТ ВСЯКИХ ПОСЛЕДСТВИЙ.

А вот и сами PAE-патчи:

(процесс установки в архивах)

Windows 8.1 и Windows 10

(кстати, подойдёт и для Windows 7)

Установка (показываю на 7-ке)

  • Процесс полностью автоматизирован. Распакуйте, не обращая внимания на мольбы антивируса (изменения будут проходить на уровне ядра, так что ваш антивирус молодец, но это не тот случай). Можно его отключить до следующей перезагрузки.
  • перенесите файл PAEPatch.exe в папку в директории Windows

  • запускаете патч и пусть антивирус ему не мешает. Пару мгновений будете смотреть на окно PowerShell и патч сообщит об успешном изменении в конфигурации
  • наберём в строке поиска команду msconfig и во вкладке убедимся, что патч прописался в загрузочной записи и запись “при его помощи” будет использоваться по умолчанию; время отображения вариантов ОС можно выставить на минимум:

  • уходим в перезагрузку и смотрим, что получилось…

Стало немного теплее. Однако в моём случае все 4 Гб памяти система не может использовать: это ноутбук с интегрированной картой, так что увы… Однако, если у вас объём RAM больше, чем у меня, и видеокарта дискретная, разницу вы сразу почувствуете.

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

Вопросов у вас не должно возникнуть. И всё же…

  • всё можно удалить. Ехе-шник патча из папки , оттуда же файлы (если найдёте, конечно) ntkrnlpx.exe и winloadp.exe ; в msconfig сотрите строчку из загрузочной записи с патчем (вы видели на фото сверху);
  • если при установке патча возникли проблемы, возможно придётся удалить несколько файлов обновлений Windows. Вот они (предположительно)

KB3153171

KB3146706

KB3147071

у меня были только 2 из 3-х

  • повторите запуск патча для регенерации некоторых создаваемых им файлов (если первый раз не получилось)
  • опять же с некоторыми видеокартами есть проблемы. Опять же это связано с завязкой потребляемых системой и установленным оборудованием ресурсов: так. оперативная память полностью становится видна лишь в безопасном режиме. Что ж… обновите на всякий случай драйверы к видео.

Отписывайтесь и успехов нам всем.

Прочитано: 1 125

Совсем недавно на блоге сайт была опубликована заметка, в помощь тем, кто собирается обновлять свой компьютер или же покупать/собирать новый. А именно, в ней говорилось о том, сколько оперативной памяти нужно компьютеру в зависимости от тех задач, которые передними ставятся: Сколько оперативной памяти нужно?

Следующей нашей заметкой по плану была статья о поддержке различных объемов памяти со стороны операционной системы — о разрядности операционной системы; о том, что не все объемы памяти поддерживаются всеми версиями Windows . Отдельное спасибо всем читателям, которые в комментариях на блоге упомянули о теме разрядности: после прочтения их я понял, что короткой заметки в блоге на эту тему — мало. Нужен подробный материал на эту тему.

Именно поэтому было решено написать статью, (ликбез, если хотите) по этому вопросу и разместить ее здесь, на ITexpertPortal.com — в архиве бесплатных обучающих материалов и статей на важные темы компьютерной грамотности.

Итак, вернемся к основной теме, к разрядности операционных систем и к поддержке различных объемов памяти. Вначале ответим на вопрос:

Что такое разрядность вообще?

Научное определение: В информатике разрядностью электронного (в частности, периферийного) устройства или шины называется количество разрядов (битов), одновременно обрабатываемых этим устройством или передаваемых этой шиной. Термин применим к составным частям вычислительных, периферийных или измерительных устройств: шинам данных компьютеров, процессорам и т.д. Разрядностью компьютера называют разрядность его машинного слова. (источник — Википедия).

Думаю, все просто и понятно. Разрядность — способность одновременно обрабатывать какое-то количество битов, если говорить проще.

На самом деле, все не так просто, и чтобы осветить полностью этот вопрос и "по-научному" — никакой статьи не хватит. Поэтому, не будем углубляться в курс архитектуры ПК, а затронем чисто практические моменты, с которыми приходится сталкиваться и которые имеют значение для нас — пользователей.

Причем тут объем оперативной памяти?

Существует две версии операционной системы Windows (по крайней мере пока — только две). Не важно, что именно мы возьмем из современных и актуальных систем: XP, Vista или 7.
Все эти системы существуют в двух вариантах — 32-битные и 64-битные. Например:

Windows 7 Ultimate 32-bit (или х86 — равнозначные обозначения)
Windows 7 Ultimate 64-bit (
или x64 — равнозначные обозначения)
Windows Vista Ultimate x86 (x86 —
это обозначение 32-битной версии)
Windows Visa Ultimate x64 (соответственно — 64-битная версия)

Архитектурные различия между 32 и 64-битными версиями Windows, разумеется, есть. Говорить о них можно долго, но это ни к чему, поверьте мне. 🙂

Самые главные особенности и отличия, которые непосредственно касаются пользователя и с которыми приходится сталкиваться:

1. Максимальный объем оперативной памяти.
2. Разрядность операционной системы.
3. Разрядность процессора.

Вот об этом мы с вами поговорим подробнее…

Максимальный объем оперативной памяти.

32-битная операционная система может адресовать (т.е. может использовать, "видеть") не более 4 ГБ оперативной памяти. Это самое главное отличие, и самое существенное. Если в вашем компьютере установлено, скажем, 2 ГБ, то 32-битная операционная система работает с таким объемом нормально.

Если вы у становите 4 ГБ памяти и будете работать под управлением 32-битной ОС, то она просто не увидит такой объем. Все, что она сможет использовать — это примерно 3.5 ГБ из 4 ГБ. Остальной объем она не может предоставить для работающих программ. Разумеется, если вы установите в компьютер 8 ГБ памяти, скажем, и при этом будете оставаться на 32-битной системе, то она так же не увидит более 3.5 ГБ из всего установленного объема.

64-битная операционная система может работать с гораздо бОльшими объемами памяти — до 192 ГБ (для Windows 7) . Т.е. если вы, скажем, захотели установить 8 ГБ памяти, то обязательно нужно переходить на 64-битную ОС, в противном случае, вы просто не сможете использовать столь большой доступный объем.

Мы рассмотрели, можно сказать, "крайности", до 2 ГБ и 8 ГБ и более. А как быть с золотой серединой? Что, если у вас уже установлено или же вы планируете увеличить объем памяти до 4 ГБ? Нужно ли в этом случае переходить на 64-битную ОС, чтобы компьютер смог использовать не 3.3, а все 4 ГБ памяти?

Не все так просто… 64-битные версии ОС используют заметно больше памяти. Все переменные теперь уже не 32-битные, а 64-битные. Обычно это увеличивает объём приложений на 20-40%, что приводит и к соответствующему росту объёма занимаемой памяти. На такие файловые форматы, как музыка или видео, это не влияет.

Устанавливать 64-битную версию Windows , чтобы лучше использовать 4 Гбайт памяти, смысла не имеет, пусть даже 32-битная версия распознаёт только до 3,5 ГБ памяти. Проблема кроется в том, что вы получите отсутствующую память, однако сразу же её потеряете по той причине, что 64-битная версия требует для себя больше памяти. Так что переход на 64 бита актуален только при памяти большего объёма: 6, 8 ГБ и более.

Итак, если вы решили установить много памяти, и здесь 64-битная ОС нужна точно, то возможно, вас интересует вопрос:

Какими особенностями обладает 64-битная Windows Vista /7 ?

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

Технически — небольшие различия есть. Первое, собственно, что 64-битная ОС "видит" большие объемы памяти и умеет с ними работать. Второе — она позволяет запускать 64-битные приложения.

64-битная ОС позволяет запускать и обычные 32-битные программы. Привычным способом, никаких настроек для этого не требуется. Все как всегда. Просто в 64-битной системе присутствует подсистема выполнения 32-х разрядных приложений. Поэтому, вы с успехом можете устанавливать и работать как с 32-битными, так и с 64-битными приложениями.

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

Например, компания Adobe заявляла, что современные приложения серии Adobe CS5 — будут только 64-битные. Это значит, что, скажем, Photoshop CS5, Dreamweaver CS5 и т.п. смогут запустится только на 64-битной системе. На 32-битной ОС они просто не запустятся. Почему?

Потому что в 64-битной ОС могут работать 32-битные приложения, но не наоборот!

Следующий технический момент — 64-битные ОС требуют 64-битных драйверов . Как правило, все современные (не старше двух лет) устройства ПК, ноутбуки и периферия имеют на прилагающемся установочном диске две версии драйверов — 32 и 64-битную. Поэтому с современными устройствами проблем не возникнет — как обычно вставляем диск с драйвером в привод и запускаем установку, инсталлятор сам определит версию Windows и запустит соответствующий разрядности драйвер.

Если диска нет или на нем нет 64-битного драйвера, необходимо посетить официальный сайт разработчика конкретного устройства, чтобы скачать такой драйвер. То же относится и к устаревшему оборудованию.

ОБЯЗАТЕЛЬНО проверьте наличие 64-битных версий ВСЕХ необходимых драйверов еще ДО начала установки 64-битной версии Windows !

Разрядность процессора.

Где взять/как определить 64-битные приложения?

64-битное программное обеспечение можно определить без труда. На упаковке в системных требованиях, как правило, указывается, что данная программа 64-битная. Это же может быть указано отдельно на упаковке.

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

Вот пример: моя лицензионная коробочная версия Windows Vista Ultimate . В комплекте два установочных диска — 32 и 64-битная версия ОС:

Не обращайте внимание на "англоязычность" в данном случае, просто ОС была куплена в Соединенных Штатах.

Но это в данном случае — Vista Ultimate (только Ultimate) так поставлялась, в двух версиях. Как правило, та же Windows, например (или любая другая программа) продается ИЛИ 32-битная ИЛИ 64-битная, о чем указано на коробке, как я уже упоминал.

На этом отличия и особенности 64-битных операционных систем Windows, значимые для пользователя заканчиваются.

В остальном — все точно так же, как и на привычных 32-битных Windows XP/Vista/7.

В этой статье мы разберемся, как убрать ограничение 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, а так же ответим на многие распространенные вопросы по этой теме.

Вступление

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

Не обошла эта тенденция и оперативную память, которая в последнее время очень сильно подешевела. Лет 15 назад, модуль памяти объемом четыре мегабайта (только вдумайтесь!) стоил около 100 долларов, а на сегодняшний день стоимость четырех гигабайт ОЗУ (ОЗУ - оперативное запоминающее устройство или оперативная память) составляет всего около 700 рублей. Не секрет, что наличие большого объема оперативной памяти благотворно сказывается на скорости работы многих приложений, поэтому именно этот объем является минимальным для большинства современных компьютеров даже начального уровня. Более же продвинутые системы содержат 8, 16 и более гигабайт «оперативки».

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

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

Адресное пространство

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

Один байт может хранить одно из 256 значений (2 8), которые в зависимости от их интерпретации могут быть как числами, так символами или буквами. Например, значение 56, может обозначать как обычное число, так и букву «V» в кодировке ASCII. В нескольких байтах, можно хранить гораздо большие значения. Например, три байта могут принимать уже 16 777 216 значений (256 3), в которых может быть закодировано целиком короткое слово.

Что бы какое-либо устройство или программа могли иметь возможность обратиться к конкретному байту в памяти (адресовать его) для того, что бы записать туда или получить оттуда данные, ему присваивается уникальный индекс, называемый адресом . Диапазон адресов от нуля до максимума получил название адресного пространства .

Физическая и виртуальная память

В первых ЭВМ, размер адресного пространства был тождественно равен размеру установленной оперативной памяти. То есть, если в компьютере было установлено 128 Кб памяти, то и максимальный объем памяти, который могла использовать программа при работе, равнялся 128 Кб. При этом адрес какого-либо объекта приложения равнялся адресу физической ячейки запоминающего устройства.

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

В современных компьютерах устройства и программы работают не с реальной (физической ) памятью, а виртуальной , которая ее имитирует. Это дает возможность приложению считать, что на машине установлено максимальное теоритически возможное количество ОЗУ, а так же то, что оно является единственной программой, запущенной на компьютере.

Таким образом, адресное пространство ЭВМ наших дней, больше не ограничено размером ее физической (оперативной) памяти и имеет свой максимальный возможный размер, зависящий от рабочей среды, которой является операционная система.

На сегодняшний день операционная система Windows имеет как 32-разрядную, так и 64-разрядную версии. В первой, исходя из названия, для адресации используется 32-битное адресное пространство, максимальный размер которого равен 2 32 = 4 294 967 296 байт или 4 Гб (гигабайт). 64-битная версия операционной системы увеличивает размер адресного пространства до невероятных 2 64 = 18 446 744 073 709 551 616 байт - более 18 квинтиллионов байт или 16 Эб (эксабайт). Правда стоит отметить, что современные клиентские операционные системы Windows 7 x64 в силу объективных причин поддерживают максимальное адресное пространство размером 16 Тб (2 44).

При этом объемы в 4 Гб и 16 Тб, в зависимости от системы, выделяются каждому работающему приложению! То есть любая запущенная программа получает свое собственное адресное пространство, которое не пересекается с другими.

Влияние объема оперативной памяти на скорость работы системы

А что же происходит, когда записи в адресном пространстве по размеру начинают превышать реально установленный объем физической памяти? В этом случае, часть временно не использующихся данных переносится из ОЗУ на жесткий диск в так называемый файл подкачки или «своп» (swap). Если программам вновь понадобятся эти данные, то система по первому требованию, вернет их обратно с диска в оперативную память.

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

Чем больше реальный объем оперативной памяти, тем реже идет обращение к винчестеру, а вследствие этого возрастает и общая производительность компьютера. Именно поэтому, увеличение размера ОЗУ практически всегда положительно сказывается на скорости работы системы, а с учетом нынешних цен на память, многим пользователям вполне доступна установка 8, 16 или даже 32 Гб «оперативки». Особенно благоприятно большой объем памяти сказывается при работе с графическими приложениями (включая современные трехмерные игры) и программами видеомонтажа.

Стоит знать, что разные версии 64-битной операционной системы Windows могут поддерживать разный максимальный объем оперативной памяти. И если пользователям старших редакций Vista или 7 (Professional, Enterprise, Ultimate), поддерживающих до 192 Гб памяти, волноваться особо нечего, так как на домашних компьютерах такой объем практически не достижим, то тем, у кого установлены версии Home Basic и Home Premium есть над чем задуматься. Возможности этих редакций сильно урезаны, и если Premium поддерживает до 16 Гб «оперативки», то Basic только 8 Гб. Максимально доступный объем оперативной памяти, поддерживаемый уже устаревшей Windows XP (64-битной версии) составляет 16 Гб.

Почему 32-битная система Windows не видит 4 Гб ОЗУ

Наверняка, многие пользователи хотят воспользоваться падением цен на память и нарастить ее объем в собственных компьютерах. Процедура эта нехитрая - вынуть старые планки из системной платы и вставить новые можно за считанные минуты без каких-либо специальных инструментов. Далее включаем компьютер, тихо радуемся, когда при загрузке программа самотестирования отображает новый объем установленной ОЗУ (хотя и здесь могут быть проблемы, но об этом чуть ниже). Затем, дожидаемся загрузки Windows, заходим в свойства компьютера и… видим, что в разделе «Установленная память» красуется цифра в три с лишним гигабайта, вместо, например, реально установленных четырех. Так что же произошло и можно ли это исправить?

Как мы уже знаем, чисто теоретически 32-х разрядной системе без каких-либо дополнительных ухищрений доступны до 4 гигабайт оперативной памяти (2 32), но Windows не может использовать весь этот объем, так как часть его отводится под устройства компьютера.

Теперь, самое время сделать небольшой экскурс в историю. В первых настольных ПК, выпущенных в начале 80-ых годов, адресное пространство их физической памяти было поделено на две части в соотношении пять к трем. Первая часть отводилось под оперативную память (ОЗУ), а вторая предназначалась для размещения программы самотестирования (POST), базовой системы ввода-вывода (BIOS) и памяти устройств. При этом та часть адресного пространства, которая отводилась под устройства, не могла быть одновременно использована под оперативную память компьютера.

Все изменилось, когда в 1985 году компания Intel выпустила на рынок процессор 80386. Тогда были приняты сразу два решения об изменении распределения физической памяти в компьютерах, основанных на новых чипах. Распределение адресов в первом мегабайте памяти было принято оставить неизменным для совместимости со старым программным обеспечением и предыдущими моделями ЭВМ. Для компьютерных же устройств, нуждающихся в использовании памяти, теперь выделялся четвертый гигабайт. Все остальное пространство отводилось под ОЗУ.

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

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

Сразу же после включения машины, специальная программа, называемая БИОС (BIOS), начинает обращаться к установленным устройствам. Ее задача, сначала собрать сведения о том, какие диапазоны адресов то или иное устройство может использовать, а потом распределить память так, что бы они не мешали друг другу при работе. После того, как необходимые виртуальные адреса под оборудование становятся зарезервированными в адресном пространстве (от четвертого гигабайта сверху вниз), начинается загрузка операционной системы.

Как мы уже говорили ранее, под установленную оперативную память адресное пространство выделяется снизу вверх - от нуля и далее. Таким образом, после загрузки системы физическая память «проецируется» на адресное пространство (от 0 до 2 Гб) и Windows не видя никаких конфликтов с адресами, зарезервированными под устройства, показывает вам весь установленный объем оперативной памяти.

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

После установки 4 Гб физической памяти, теоретически ее адреса займут все доступное адресное пространство для 32-битных систем. Но доступными останутся только те, которые попадут в незарезервированную устройствами область. В нашем примере, Windows будет считать, что объем установленной оперативной памяти равен 3,5 Гб.

Довольно долгое время никого особенно проблема четвертого гигабайта не волновала. Под нужды устройств использовалось совсем немного места - десятки килобайт для контроллеров дисков и сетевого адаптера, плюс несколько мегабайт под память видеокарты. Сами же объемы оперативной памяти были тоже небольшими, а значит, пересечение адресов используемых ОЗУ и устройствами в доступном адресном пространстве было практически невозможным.

Первый тревожный звонок прозвенел с появлением технологии AGP. На тот момент, видеоадаптеры с аппаратным ускорением трехмерной графики резко увеличили свою потребность в использовании собственной оперативной памяти. А AGP дала возможность графическим адаптерам использовать для собственных нужд часть памяти компьютера, в случае нехватки собственной. При этом вне зависимости от типа адаптера и количества у него собственной памяти, резервируется 256 Мбайт адресов, так как этот размер задается не самой видеоплатой, а оборудованием шины AGP. С приходом технологии PCI-Express ситуация принципиально не изменилась и размер резервируемого места остался тем же.

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

В некоторых случаях, правда, довольно редких, объем адресного пространства, отведённого под устройства, может достигать и двух гигабайт. В большинстве же случаев, заблокированным оказывается пространство от 500 Мб до 1 Гб.

Технология PAE

Так можно все-таки увидеть все 4 Гб памяти в 32-разрядной Windows? Да, если у вас установлена серверная ОС, например Windows Server 2003 или Server 2008.

В середине 90-х годов была разработана технология расширения доступного объема ОЗУ, получившая название PAE (Physical Address Extension). Впервые она была воплощена в процессорах Intel Pentium Pro, в результате чего они смогли использовать не 32-х, а 36-битную шину адреса, что теоретически позволяло использовать максимально не 4, а 64 Гб оперативной памяти.

Но что самое примечательное, некоторые особенности использования этой технологии в контроллерах памяти, предоставляют возможность не только использовать ее по прямому назначению, но и перебрасывать некоторые участки памяти в другие адреса. Таким образом, появляется возможность переместить в область выше 4 Гб, например, в пятый гигабайт адресного пространства, ту часть ОЗУ, которая была заблокирована из-за возможности возникновения конфликтов с устройствами, после чего она вновь становится доступной. Правда, для этого необходимо соблюсти два условия.

Первое - процессор должен быть установлен в системную плату, оснащенную специальным диспетчером памяти, осуществляющим поддержку расширения физических адресов. Как правило, в микропрограмме BIOS Setup (БИОС), запускающейся сразу же после включения компьютера, существует специальная настройка, запрещающая или разрешающая переадресацию. В разных моделях материнских плат ее наименование может быть различным, например: Memory Remap, 64-bit OS, Memory Hole и другое. Точное название этой опции можно выяснить из руководства конкретной системной платы. Кстати, старые материнские платы могут вообще не поддерживать режим расширения адресов (это так же можно выяснить из инструкции).

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

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

Изначально, в первой версии Windows XP данный режим был отключен, так как в 2001 году средний объем ОЗУ в персональных компьютерах составлял 128 - 256 Мб, и никакой необходимости в его включении не было. Возможно, положение дел оставалось бы таким еще довольно долго, но в 2003 году компания Microsoftприступила к разработке второго пакета исправлений для XP, призванного существенно снизить количество уязвимостей в системе. Одним из нововведений, принесенным вторым сервис паком, стало использование аппаратных и программных технологий, предотвращающих запуск вредоносного кода путем дополнительной проверки содержимого памяти. На аппаратном уровне эту проверку выполняет процессор. При этом в компании Intel данная функция носит названия Execute Disable bit (запрет на выполнение), а в AMD - No-execute page-protection (защита страниц от выполнения).

Однако, что бы такая аппаратная защита стала возможна, необходим перевод процессора в режим PAE. Именно поэтому, начиная с Windows XP SP2, данный режим, при наличии подходящего процессора, включается автоматически. Но самое основное, что в 32-разрядных Windows XP с пакетами обновлений SP2 и SP3, а так же последующих Windows Vista и Windows 7, расширение физических адресов реализовано только частично. Эти системы не поддерживают 36-битную адресацию памяти и включенный режим PAE, не добавляет в их распоряжение ни байта адресного пространства, что делает невозможным переброску в верхние участки заблокированных адресов ОЗУ. Причина такой реализации - обеспечение совместимости с драйверами устройств.

Как мы помним, операционная система и все программы используют виртуальные адресные пространства и соответственно виртуальные адреса, которые впоследствии пересчитывается в физические. Процедура эта происходит в два этапа при выключенном режиме PAE и в три, при включенном расширении физических адресов. Драйверы, в отличие от обычных программ, работают напрямую с реальными адресами и для корректной работы в режиме PAE должны понимать усложненную процедуру трансляции адресов. Ведь сформированный драйвером 32-битный адрес после дополнительного (третьего) этапа трансляции может измениться и чтобы выданная им команда достигла цели, необходимо это учитывать.

Разработчики драйверов, предназначенных для серверных систем это принимали в расчет, а вот драйвера для клиентских Windows, устанавливаемых на обычные домашние ПК, во многих случаях были написаны без учета алгоритма работы с включенным PAE. Ведь так было проще - меньше времени уходило на программирование и тестирование, да и сам драйвер занимал меньше места. Тем более к тому моменту, до выхода Windows XP SP2, режим PAE в настольных системах не использовался, а оборудование, которое выпускалось для «персоналок», во многих случаев не было предназначено для серверов (например, звуковые платы). Так что никакой острой необходимости усложнять драйвера, и выпускать их серверные версии у производителей не было.

Именно с такими, неадаптированными драйверами, и возникли серьезные проблемы в Windows со вторым пакетом обновлений. Не смотря на то, что, общее количество драйверов, вызывавших сбои или крах системы, было не таким уж и большим, количество устройств их использующих исчислялось миллионами. В результате огромное количество пользователей после установки второго сервис-пака могли столкнуться с неприятностями и в дальнейшем отказаться от его использования. Поэтому Microsoft пришлось идти на компромисс.

Для обеспечения совместимости с некорректно написанными драйверами функционал PAE в Windows XP SP2 было решено обрезать. Выразилось это в том, что на третьем этапе трансляции адресов на выход передавались те же адреса, которые были поданы на вход. Таким образом, никакого расширения адресного пространства не происходило, и система продолжала оперировать теми же четырьмя гигабайтами.

Как уже упоминалось выше, такой обрезанный режим PAE унаследовали все современные 32-разрядные системы, включая Windows 7 и Windows 8. А вот если вы установите ради эксперимента на свой компьютер оригинальную Windows XP или XP SP1 и включите режим PAE (там он по умолчанию отключен), то увидите собственными глазами, что системе будет доступно все 4 Гб ОЗУ.

ОЗУ и 64-битные системы Windows

Казалось бы, что у 64-разрядных систем никаких проблем с установкой больших объемов памяти быть недолжно. Сколько ОЗУ установили, столько «операционка» и будет видеть. И все же здесь есть свои подводные камни.

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

Получается, что все ограничения, накладываемые на физическую память в 32-битной системе, должны остаться и в 64-битной, а значит, видимый объем оперативной памяти будет опять неполным, если ваша материнская плата не поддерживает переадресацию или она отключена в настройках. Конечно, такие системные платы уже не выпускаются, но все еще используются во многих компьютерах.

Еще один «сюрприз» вас может ожидать, если в материнскую плату будет установлен максимальный поддерживаемый объем памяти. Например, еще недавно популярный чипсет для бюджетных решений Intel G41 позволяет устанавливать до 8 Гб оперативной памяти. Как правило, в этом случае, на системной плате разведены 33 адресные линии (2 33 = 8 589 934 592 байт = 8 Гб). С точки зрения производителя это вполне объяснимо - зачем делать шину более высокой разрядности, если набор системной логики все равно не поддерживает большие объемы памяти? Но из-за этого, даже если контроллер памяти и может перекинуть заблокированный участок ОЗУ в девятый гигабайт, сделать это у него не получиться, так как для этого потребуется 34-разрядная шина, а не 33-х, как в нашем случае. В итоге пользователю будет доступно только семь с небольшим гигабайт ОЗУ. Тоже самое касается плат поддерживающих 16 и 32 Гб.

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

Заключение

В заключение давайте сделаем несколько основополагающих выводов, исходя из всего вышесказанного.

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

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

В клиентских 32-разрядных версиях Windowsрежим PAE был урезан для обеспечения совместимости с драйверами устройств из-за чего в WindowsXP SP2/SP3, Windows Vista, Windows 7, а так же Windows 8 увидеть все максимально допустимые четыре гигабайта ОЗУ невозможно и исправить это нельзя.

Таким образом, если вы собираетесь установить в компьютер более трех гигабайт оперативной памяти, то необходимо использовать 64-битные версии операционных систем, которые позволяют видеть до 192 Гб ОЗУ и имеют неурезанный режим PAE. В противном случае весь остальной объем памяти будет недоступен для использования.

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

На вопрос Сколько оперативки поддерживает х32 операционные системы? заданный автором Denis S. лучший ответ это Полезная информация по Windows х32x64
Будут ли игры быстрее работать в WinXP Vista x64?
Нет, не будут. 99,9% существующих ныне игр используют 32-битные вычисления, поэтому 64-битная система не даст вам никакого выигрыша в плане производительности в играх. Лично мне известно только несколько игр, которые поддерживают 64-битные вычисления - это Crysis, Hellgate London и Far Cry (после спец. патча) .
Чем 64-битная версия отличается от 32-битной?
Это специальная 64-разрядная версия, разработанная для процессоров с технологиями EM64T (Pentium D, Core 2 Duo) и AMD64 (Opteron, Athlon 64) от фирм Intel и AMD соответственно. Основным достоинством системы является полноценная поддержка 4Гб RAM, а также быстрая работа с большими числами (Long Integer и Double Float). Таким образом, WinXP x64 очень эффективна при выполнении вычислений, использующих числа с плавающей запятой, необходимых в таких областях, как создание спецэффектов для кинофильмов и трёхмерной анимации или разработка технических и научных приложений. Соответственно, для реализации всего потенциала WinXP x64 потребуются 64-битные редакции программ, но даже в наше время их количество крайне невелико.
Будут ли работать старые программы и игры в WinXP x64?
Да, будут, потому что WinXP x64 поддерживает смешанный режим, то есть одновременную работу 32- и 64-разрядных приложений (помните, все драйверы должны быть в 64-разрядном исполнении) . Это означает, что большинство привычных вам 32-разрядных приложений будут работать и в этой системе. Исключение могут составить лишь те приложения, которые сильно зависят от аппаратного обеспечения компьютера, например, некоторые антивирусы и дефрагментаторы.
Для 32-битных систем официально заявлена поддержка 4Гб RAM, однако видно только ~3,25Гб. Почему?
Данный вопрос, пожалуй, волнует пользователей больше всего, поэтому придётся остановится на нём подробно. Всё дело в неверной формулировке. На самом деле официальное утверждение про поддержку Windows памяти до 4Гб должно звучать так: 32-битная ОС способна адресовать (указывать на ячейку памяти, к которой производится доступ) только в пределах 4Гб.
Теперь проясним ситуацию, когда в свойствах системы отображается лишь около трёх гигабайт памяти. Все устройства на компьютере адресуют память (видеокарта, звуковая карта и т. д.) , потому что для разработчиков легче настроить обращение к адресу в памяти, к которому "привязано" устройство, чем возиться со специальными регистрами (портами) для обращения к этому устройству. Кроме того, обращение к памяти происходит значительно быстрее, потому что если обращаться к порту устройства, то для этого придётся ещё задействовать и центральный процессор, что в итоге приводит к серьёзным тормозам (те пользователи, у которых контроллер жёсткого диска сваливался из DMA-режима в PIO-режим, поймут, о каких тормозах идёт речь) . Поэтому в своё время (1985 год, компания Intel выпускает свой знаменитый процессор 80386) было принято решение разделить доступные адреса (адресное пространство) на две части: под оперативку и под устройства, если они нуждались в адресах. Адреса для устройств тогда поместили в конце доступного адресного пространства, отсчёт начинался с конца четвёртого гигабайта, ведь в 1985-ом году и в голову никому не могло прийти, что у кого-то будет аж четыре гига памяти!
Как мы видим, системе доступно уже не 4Гб, а меньше из-за того, что часть адресов отведена под различные устройства. Как правило, конкретное число доступной оперативки варьируется из-за различных конфигураций компьютера. Иными словами, чем больше устройств в нём, тем меньше вы увидите доступной памяти в свойствах системы, однако чаще всего получается 3,25Гб. Соответственно, при установке WinXP x64 память начинает адресоваться нормально, т. е. устройства начинают размещаться за пределами первых 4Гб и поэтому видно все четыре гигабайта, ведь 64-битная система поддерживает 128Гб RAM.