НЕ ПРОПУСТИТЬ ИНТЕРЕСНОЕ

Свежие обсуждения

Sorry. No data so far.

И снова преодолеваем 4 ГБ ограничение оперативной памяти. До 128 ГБ RAM в Windows 8 х86

Здравствуйте уважаемые читатели блога www.ithabits.ru. Совсем немного времени прошло с момента предыдущей публикации из цикла статей о “приключениях” большой оперативной памяти в 32-битных операционных системах, которую я явно погорячился анонсировать как заключительную. Сегодня мы продолжим наши эксперименты, только теперь уже применительно к Windows 8.

Почему Microsoft ограничивает доступную 32-разрядным клиентским версиям Windows физическую память на уровне 4 ГБ

На протяжении вот уже почти десятилетия, начиная с выхода Windows XP SP2, компания Microsoft с завидным упорством вводит пользователей в заблуждение, утверждая, что работать с оперативной памятью больше 4 ГБ могут исключительно 64-битные версии операционных систем.

С тем, что это не так, и как обстоят дела на самом деле, мы разобрались в первой публикации на тему особенностей работы 32-битных ОС с большой оперативной памятью (больше 3 ГБ). Вообще, на страницах блога этой теме было уделено достаточно пристальное внимание.

Еще раз хотелось бы отметить, что тема удивительно интересная, и я очень рекомендую всем с ней ознакомиться.

Для тех, кто предыдущие статьи еще не читал, основные моменты в двух словах.

В далеком 1995 году появился первый 32-битный процессор с 36-разрядной адресной шиной. Это позволяло ему работать с физической памятью объемом до 64 ГБ. Для того чтобы 32-разрядные системы могли работать с такой большой памятью, в процессор была встроена технология Physical Address Extension (PAE).

Через некоторое время поддержка PAE была включена в различные операционные системы. Microsoft Windows, естественно, не была исключением. Например, Windows 2000 Advanced Server умел работать с 8 ГБ оперативной памяти, а его редакция Datacenter – с 32 ГБ. Дальше – больше.

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

Тогда, в 2004 году, Microsoft решила эту проблему ограничив в ядре размер максимально доступной физической памяти на уровне 4 ГБ. То есть, с одной стороны, принудительно включив PAE сделала доступной память выше 4 ГБ, с другой стороны, отменила это разрешение, установив соответствующее ограничение. С тех пор ничего не изменилось. Появление новой операционной системы Windows 8 не внесло никаких корректив.

Windows_8_memory_limits

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

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

Для тех, у кого возникли неразрешимые проблемы, или тех, кто не хочет рисковать надежностью, оставить сегодняшний вариант с ограничением доступной памяти на уровне 4 ГБ (как мы уже выяснили, на самом деле в этом варианте операционная система не может задействовать полностью 4 ГБ RAM).

Между прочим, примерно так когда-то и было. И именно так поступают те, кто использует модифицированное ядро Windows: попробовал — отлично, не получилось — вернулся к первоначальному варианту. Как это сделать применительно к Windows 7 x86 мы подробно разбирали в этой статье. К сожалению, при этом приходится нарушать лицензионное соглашение с Microsoft, что не есть хорошо.

Описание патча, снимающего 4 ГБ ограничение доступной памяти Windows 8 x86

Свято место пусто не бывает. Коль 32-разрядная редакция Windows 8 вышла опять с 4 ГБ ограничением на доступную память, то должен был появиться и патч, который это ограничение снимает. Он и появился. Программа называется PatchPae2. Ее лучше всего скачать с сайта автора.

Надо сказать, что в отличие от аналогичных утилит для Windows 7, эта пока не столь продвинута в части автоматизации процесса – запускать программу надо два раза с разными ключами и редактировать меню загрузки нужно самостоятельно.

Архив содержит собственно сам патчер (PatchPae2.exe), инструкцию и папку с исходными кодами программы. Кстати, утилита позиционируется как универсальная для всех операционных систем, начиная с Vista, то есть пригодна и для использования в Windows 7.

PatchPae2 кроме создания нового ядра, которое может работать с оперативной памятью до 128 ГБ, «подправляет» еще и загрузчик (loader).

Основные этапы работы с программой такие:

1. Создание модифицированного ядра Windows 8

a. Копируем файл патчера PatchPae2.exe на диск С: (в принципе можно и в любое другое место, но так командная строка будет короче);

b. Запускаем Командную строку с правами администратора. В Windows 8  для этого нажимаем Win+X, дальше в появившемся списке выбираем Командная строка (администратор). Разрешаем запуск;

c. Убеждаемся, что открылся каталог C:\Windows\system32. Если по какой-то причине открылся другой, переходим в него командой
CD C:\Windows\system32

d. Создаем новое модифицированное ядро, позволяющее работать с памятью объемом до 128 ГБ

Для Windows 8:
C:\PatchPae2.exe -type kernel -o ntoskrnx.exe ntoskrnl.exe

Для Windows Vista / 7:
C:\PatchPae2.exe -type kernel -o ntkrnlpx.exe ntkrnlpa.exe

В результате успешного выполнения должно появиться сообщение: «Patched», которое говорит об успешном создании нового ядра, которое может работать с памятью, объемом до 128 ГБ.

2. Создание нового загрузчика (loader) для отмены проверки подписи ядра при загрузке:

C:\PatchPae2.exe -type loader -o winloadp.exe winload.exe
В результате успешного выполнения должно появиться сообщение: «Patched.»

3. Создание варианта загрузки операционной системы с модифицированным ядром

Все дальнейшие операции будем делать в редакторе загрузочного меню BCDEdit.

a. Делаем на всякий случай бекап системного хранилища:
bcdedit /export "C:\Backup\bcd-backup"где C:\Backup\ – произвольно выбранная для хранения папка, а bcd-backup – произвольное имя файла копии хранилища;

b. Добавляем новый вариант загрузки путем копирования текущего:
bcdedit /copy {current} /d "Windows 128 GB"– вместо «Windows 128 GB» можно выбрать любое понравившееся название.

В результате успешного выполнения должно появиться сообщение: «Запись успешно скопирована в {ID}.», где ID — 36-символьный, 32-значный идентификатор (номер записи) заключенный в фигурные скобки {} (скобки в командах писать обязательно);

c. Определяем загружаемое ядро.

Для Windows 8:
bcdedit /set {ID} kernel ntoskrnx.exe

Для Windows Vista / 7:
bcdedit /set {ID} kernel ntkrnlpx.exe
– название нового (модифицированного) ядра было определено на шаге 1.d.

Набирать в командах длинный ID – дело утомительное. Лучше поступить так. Нажимаем правую кнопку мыши, будучи в окне командной строки, и в появившемся контекстном меню выбираем «Пометить». Выделяем мышью нужные нам 36 символов, нажимаем “Enter”. Теперь можно вставить скопированную запись в нужное место команды.

Еще можно порекомендовать использовать для этой цели Блокнот, запустив его командой notepad. Скопировать с его помощью нужный текст в произвольный файл и копировать и переносить его фрагменты в командную строку по мере необходимости.

d. Назначаем новый загрузчик:
bcdedit /set {ID} path \Windows\system32\winloadp.exe– имя нового загрузчика winloadp было определено на шаге 2.

e. Отменяем проверку загрузчика:
bcdedit /set {ID} nointegritychecks 1
Следующие два пункта по желанию. Их можно пока не выполнять.

f. Назначить новый вариант загрузки с модифицированным ядром по умолчанию:
bcdedit /set {bootmgr} default {ID}

g. Изменить время показа меню загрузчика:
bcdedit /set {bootmgr} timeout 5– определяет время в секундах, в данном случае меню будет показываться 5 секунд. Вы можете выбрать любое желаемое значение.

Перезагружаем компьютер.

Если все было сделано правильно, то после перезагрузки появится вот такое окно:

boot128gb

 

Выбираем Windows 128 GB и получаем возможность работать с памятью более 4 ГБ в 32-разрядной Windows 8.

Файл патчера PatchPae2.exe с диска С: можно удалить – он больше не понадобится.

Еще раз хотелось бы отметить, что не смотря на возможность задействовать физическую память объемом до 128 ГБ, работа 32-разрядной операционной системы в режиме PAE отнюдь не эквивалентна 64-разрядной ОС. Приложения продолжают выполняться в обычном для них 32-разрядном адресном пространстве, но при этом, если установленная физическая память равна или превышает 4 ГБ, самих приложений может быть одновременно запущено больше. Как это выглядит на примере Windows 7 x86 можно наглядно посмотреть здесь.

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

Удалить следы работы патча проще всего запустив msconfig в командной строке. Переходим на вкладку «Загрузка».

msconfigboot

Выбираем Windows 128 GB и нажимаем «Удалить».

Это не единственный вариант. Если снова обратиться к bcdedit.exe, то можно сделать следующее:
bcdedit /import "C:\Backup\bcd-backup"– восстанавливает содержимое хранилища конфигурации загрузки из его копии, сделанной на шаге 3а,

или
bcdedit /delete {ID}– удаление записи из хранилища.

Далее можно удалить файлы модифицированного ядра ntoskrnx.exe и загрузчика winloadp.exe.

Прелесть патча в том, что он не наносит никакого вреда исходной системе.

Итоги

Описанный патч был протестирован на виртуальной машине Windows 8 Профессиональная в среде Oracle VirtualBox. Система с модифицированным ядром загрузилась без каких-либо сообщений об ошибках и «увидела» всю оперативную память.

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

Успешной и приятной всем работы.

_______________________________

P.S.

Для автоматизации всех операций с PatchPae2 появился командный файл. Он работает в Windows Vista, Windows 7 и Windows 8.Подписка на обновления блога www.ithabits.ru

Для того, чтобы скачать готовый командный файл “PatchPae2cmd”, который выполнит все необходимые операции, нужно просто подписаться на обновления блога по E-Mail. Ссылка на скачивание будет в почтовом подтверждении подписки.

Файл нужно разархивировать и разместить в той же папке, в которой находится исполняемый файл PatchPae2.

Скрипт запускается только в 32-разрядных системах Windows с установленной оперативной памятью больше 3 ГБ.

Дополнительно к командам, описанным в статье, добавлена:

bcdedit /set {ID} increaseuserva 2500

Она немного увеличивает память, выделяемую 32-разрядным процессам. Если это не нужно, просто закомментируйте или удалите из текста командного файла соответствующую строку.

Внимание! Для тех, кто создал “поправленное” ядро и соответствующий вариант загрузки в BCD до 13.08.2013, обязательной для ознакомления является статья по поводу обновления KB2859537.

Комментарии: 138. Присоединяйтесь к обсуждению!

  1. Сергей Борисович:

    На windows 8.1, после первой же команды модификации, патч пишет:
    Unsupported kernel version, т.е. ядро новее!!
    Плюс это или минус, это уже второй вопрос..

    • Александр AKS:

      Спасибо, что обратили внимание. Действительно в Windows 8.1 Preview PatchPae2 не работает. С другой стороны никто и не обещал, что он в ней работать будет. Однако, свято место пусто не бывает. Наверняка скоро появится патч и под Windows 8.1.

    • Сергей Борисович:

      Может есть хоть малейшее предположение, относительно того, как скоро может появиться новый патч??
      А то вот тут в раздумьях, х64 не хочется из-за мелких несовместимостей, х32 без патча совсем не годится — 12Гб рамы..
      Вот думаю если порядка месяца, то подожду, если больше, то w7 поставлю..

    • Александр AKS:

      Боюсь, что назвать конкретные даты может разве что сам автор — wj32. Ему уже был задан аналогичный вопрос около 10 дней назад. Ответа пока нет.
      В любом случае до выхода Windows 8.1 есть еще несколько месяцев. RTM запланирована на начало сентября, а финальная версия на октябрь — ноябрь (точной даты пока нет).
      А, если не секрет, что у Вас за проблема с х64? Программы или унаследованное оборудование? Может быть установить все же х64, а «мелкие несовместимости» отправить в виртуальную машину?

    • Да, старый принтер, поставил всё же универсальный драйвер, но у него сильно порезан функционал, в итоге всё делаю в pdf и окончательно просто вывожу на реальный принтер.. Геморр канешь, но всё же.

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

      Несколько лет стояла win7 x32, проблем не было, за исключением некоторых мощных прог, которые не желают на х32 ставиться, например sony vegas 12, впрочем и на win 8.1 он ппц криво работает.

    • Да, тут есть о чем подумать. У меня из унаследованного кеноновская МФУ и HP сканер со слайд-модулем. Последний не только в x64 не работает, ему еще XP подавай. Есть еще пара программ только для ХР. Но через виртуальную машину пока все проблемы решаются. Если надо с периферией по портам работать, то это тяжелый случай. Разве что завести дешевенькую железочку с ХР и уже с ней работать по RDP когда надо?

    • В таких случаях ещё может помочь принт-сервер, но опять же, который у меня (принт-сервер) — не поддерживает мой принтер..

  2. alfred:

    Спасибо за инструкцию. Все установил, все работает. 7Гб не только видит, но и реально используется системой Windows 8. Единственный косяк — при холодном старте с первого раза не грузится операционка, после рестарта все ок. Может че не доделал?

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

  3. Немного оффтопа, но всё же некоторым сомневающимся будет в помощь..

    Для сомневающихся, как я месяц назад, не советую ставить win8.1 в качестве основной, некоторые проги нормально не работают, в частности почти все антивирусники не устанавливаются (для меня не критично), ну и многое другое, (которое в win7 норм) не робит нормально.

    Так конечно ось нравится, в плане юзабилити для планшетов, но в оконцовке настроил её как win7.

    Так что сомневающимся, как и себе (win8 стоит пока не психану!), советую ставить win7, пока не выйдет win8 SP1, как я собственно я и подумал.. Но оказалось фантик!

    Просто мне не пришлось долго анализировать, т.к. внезапно умерла MB, и я полностью сменил железо и поставил win8.1.

    А потом оказалось геморр.

    Win8 x32 поставил позднее в качестве теста, вышло ещё хуже, т.к. патча нет и проги типа sony vegas и некоторые из adobe не ставятся на x32.
    Откатился на х64.

    • Сергей Борисович, согласен полностью — до SP1 на Windows лучше смотреть снаружи, а не изнутри.
      Похоже по указанной мной в статье ссылке появился новый патч для 8.1 Preview. На неделе разберусь подробнее.

  4. alfred:

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

    • Возьму на какое-то время тайм-аут. У меня «поправленное» ядро благополучно живет на ноутбуке уже месяцев 8 и никаких проблем. Там, правда, первый патч и Windows 7.
      Описанный здесь патч я тестировал на виртуальной машине. На ней система стартовала и работала с «правильным» ядром без проблем. Надо будет все же поставить 32-разрядную 8-ку на виртуальный диск большой машины и еще раз протестировать, как, собственно, и собирался.
      А пришлите мне, кстати, содержимое вашего нового BCD.

    • alfred:

      Переустановил систему, проделал все по инструкции еще раз, все работает, кроме вышеупомянутого косяка — система загружается только после перезагрузки.
      Вот содержимое моего BCD:

      Microsoft Windows [Version 6.2.9200]
      (c) Корпорация Майкрософт, 2012. Все права защищены.
      C:\Windows\system32>bcdedit
      Диспетчер загрузки Windows
      --------------------
      идентификатор {bootmgr}
      device partition=C:
      description Windows Boot Manager
      locale ru-RU
      inherit {globalsettings}
      integrityservices Enable
      default {current}
      resumeobject {d49f67ef-0198-11e3-9d75-b9395ee53323}
      displayorder {d49f67f0-0198-11e3-9d75-b9395ee53323}
      {current}
      toolsdisplayorder {memdiag}
      timeout 3
      Загрузка Windows
      -------------------
      идентификатор {d49f67f0-0198-11e3-9d75-b9395ee53323}
      device partition=C:
      path \Windows\system32\winload.exe
      description Windows 8
      locale ru-RU
      inherit {bootloadersettings}
      recoverysequence {d49f67f1-0198-11e3-9d75-b9395ee53323}
      integrityservices Enable
      recoveryenabled Yes
      allowedinmemorysettings 0x15000075
      osdevice partition=C:
      systemroot \Windows
      resumeobject {d49f67ef-0198-11e3-9d75-b9395ee53323}
      nx OptIn
      bootmenupolicy Standard
      Загрузка Windows
      -------------------
      идентификатор {current}
      device partition=C:
      path \Windows\system32\winloadp.exe
      description Windows 128 GB
      locale ru-RU
      inherit {bootloadersettings}
      recoverysequence {d49f67f1-0198-11e3-9d75-b9395ee53323}
      integrityservices Enable
      recoveryenabled Yes
      nointegritychecks Yes
      allowedinmemorysettings 0x15000075
      osdevice partition=C:
      systemroot \Windows
      kernel ntoskrnx.exe
      resumeobject {d49f67ef-0198-11e3-9d75-b9395ee53323}
      nx OptIn
      bootmenupolicy Standard

    • Ошибки я никакой в BCD не вижу и эффект Ваш воспроизвести не получается. Однако, попробуйте добавить такую запись:

      bcdedit /set {current} bootstatuspolicy ignoreallfailures

      Соответственно, если загружен вариант с «поправленным» ядром, то {current},
      если исходный, то соответствующий {ID}.
      Отпишите что получится. Если глюк прекратится, то пропишу в статье.
      Я ее, кстати, дополнил командами для Windows 7.

    • alfred:

      Александр, если я добавлю эту запись в блоке «Диспетчер загрузки Windows» будет правильно? Или должно быть определенное место от которого нельзя отступать?

    • alfred:

      Или достаточно ввести эту запись в командную строку? Просто у меня нет особого опыта по редактированию загрузчика, извините.)

    • Проще всего так. Нужно загрузиться с «исправленным» ядром и в командной строке с правами администратора выполнить эту команду.
      Потом можно еще раз запустить bcdedit без параметров и убедиться, что в нужной секции (которая относится к 128Gb) появилась строка:

      bootstatuspolicy ignoreallfailures

    • alfred:

      Спасибо, обязательно отпишусь вечером.

    • ОК. Ждем-с. Чудес на свете не бывает.

    • alfred:

      Сделал, не помогло. Загружается только через перезагрузку(((

      Microsoft Windows [Version 6.2.9200]
      (c) Корпорация Майкрософт, 2012. Все права защищены.
      C:\Windows\system32>bcdedit /set {current} bootstatuspolicy igno
      Операция успешно завершена.
      C:\Windows\system32>bcdedit
      Диспетчер загрузки Windows
      --------------------
      идентификатор {bootmgr}
      device partition=C:
      description Windows Boot Manager
      locale ru-RU
      inherit {globalsettings}
      integrityservices Enable
      default {current}
      resumeobject {d49f67ef-0198-11e3-9d75-b9395ee53323}
      displayorder {d49f67f0-0198-11e3-9d75-b9395ee53323}
      {current}
      toolsdisplayorder {memdiag}
      timeout 3
      Загрузка Windows
      -------------------
      идентификатор {d49f67f0-0198-11e3-9d75-b9395ee53323}
      device partition=C:
      path \Windows\system32\winload.exe
      description Windows 8
      locale ru-RU
      inherit {bootloadersettings}
      recoverysequence {d49f67f1-0198-11e3-9d75-b9395ee53323}
      integrityservices Enable
      recoveryenabled Yes
      allowedinmemorysettings 0x15000075
      osdevice partition=C:
      systemroot \Windows
      resumeobject {d49f67ef-0198-11e3-9d75-b9395ee53323}
      nx OptIn
      bootmenupolicy Standard
      Загрузка Windows
      -------------------
      идентификатор {current}
      device partition=C:
      path \Windows\system32\winloadp.exe
      description Windows 128 GB
      locale ru-RU
      inherit {bootloadersettings}
      recoverysequence {d49f67f1-0198-11e3-9d75-b9395ee53323}
      integrityservices Enable
      recoveryenabled Yes
      nointegritychecks Yes
      allowedinmemorysettings 0x15000075
      osdevice partition=C:
      systemroot \Windows
      kernel ntoskrnx.exe
      resumeobject {d49f67ef-0198-11e3-9d75-b9395ee53323}
      nx OptIn
      bootmenupolicy Standard
      bootstatuspolicy IgnoreAllFailures

    • alfred:

      Более того, оставил только один вариант загрузки — косяк остался(((

      Microsoft Windows [Version 6.2.9200]
      (c) Корпорация Майкрософт, 2012. Все права защищены.
      C:\Windows\system32>bcdedit
      Диспетчер загрузки Windows
      --------------------
      идентификатор {bootmgr}
      device partition=C:
      description Windows Boot Manager
      locale ru-RU
      inherit {globalsettings}
      integrityservices Enable
      default {current}
      resumeobject {d49f67ef-0198-11e3-9d75-b9395ee53323}
      displayorder {current}
      toolsdisplayorder {memdiag}
      timeout 3
      Загрузка Windows
      -------------------
      идентификатор {current}
      device partition=C:
      path \Windows\system32\winloadp.exe
      description Windows 128 GB
      locale ru-RU
      inherit {bootloadersettings}
      recoverysequence {d49f67f1-0198-11e3-9d75-b9395ee53323}
      integrityservices Enable
      recoveryenabled Yes
      nointegritychecks Yes
      allowedinmemorysettings 0x15000075
      osdevice partition=C:
      systemroot \Windows
      kernel ntoskrnx.exe
      resumeobject {d49f67ef-0198-11e3-9d75-b9395ee53323}
      nx OptIn
      bootmenupolicy Standard
      bootstatuspolicy IgnoreAllFailures

    • alfred:

      Александр, методом «научного тыка» установил, что после переподключения HDD к разъему sata на материнской плате, система грузится с первого раза, но повторное выключение системы через «завершение работы» возвращает ошибку, появляется логотип винды и все… — снова надо перезагружать. Может быт это у меня аппаратное что-то, конфликт и т.д. Скорее всего, дело не в патче. Хотя, без патча то система грузится нормально. ..

    • В качестве «крайней меры» могу прислать по E-Mail «новые» ядро и загрузчик для Windows 8. Не уверен, что это что-то изменит, но попробовать можно. Если надо, конечно.

    • alfred:

      Попробовать можно, а почему «новые» в ковычках? А «командный файл, автоматизирующий все операции» — это и в отношении Win 8? В общем, пришлите если не трудно.

  5. павел:

    сделал все описанное выше применительно к windows7.
    все команды успешно завершались-все аккуратно перепроверял.
    при загрузке выбираю вариант со 128гб в названии…идет прогруз…разворачивается лепесток приветствия…полностью…+еще секунд 5 и …синий экран

    bad_pool_caller

    stop……..000c2

    • Глупый, конечно, вопрос — а какие команды Вы выполняли для Windows 7? В статье их не было, я добавил только сегодня. Это была моя недоработка, спасибо, что подсказали. В любом случае можно еще раз перепроверить. Теоретически все должно работать.
      А вообще, появилась идея сделать командный файл, который автоматизирует процесс. Постараюсь выкроить на это время.

  6. Вычислить что конкретно вызывает БСОД и попробовать сменить драйвера http://hsd.net.ua/prichina-stop-0x000000c2-analiz

  7. павел:

    вопрос был задан автору вообще-то…

  8. Небольшой тайм-аут.
    Сегодня я постараюсь «допилить» командный файл, автоматизирующий все операции с PatchPae2. После того, как протестирую, пришлю всем участникам обсуждения ссылку на скачивание.

  9. alfred:

    кАвычках, сори)))

  10. Командный файл готов (по крайней мере работает корректно). Называется patchpae2cmd.cmd. Новые подписчики найдут ссылку в уведомлении о подписке, остальным, кому обещал, разошлю в почте. К сожалению на блоге пока нет нормальной системы раздачи бонусов подписчикам — еще не готова. Если кого забуду, пишите.
    Работает для Windows Vista / 7 / 8. Файлик надо разархивировать и положить в папку с patchpae2.exe Запускать с правами администратора. Перед этим нужно вернуть систему в первозданное состояние, т.е. загрузиться в обычном режиме и убрать из BCD все «лишние» записи.

  11. павел:

    вопрос к автору такой: все эти манипуляции с ядром системы +прописывание загрузчика — на них что-то может влиять ?

    1.по части железа:к примеру, у меня установлены в системе видеокарта с 1гб набортной памяти + две! звуковые карты…

    2.влияет ли тот момент,что некоторые устройства (порты com, lpt, ieee) +интегрированный звук отключены в биосе, а некотрые устройства (контроллер гибких дисков) отключена в системе в диспетчере устройств ?

    3.влияет ли тот момент,что до всего этого я прописывал себе в системе команду BCDEdit /set IncreaseUserVa 3072 ?

    • Не совсем понял вопрос по поводу манипуляций, но попробую ответить.
      Вся прелесть двух описанных в блоге вариантов патча состоит в том, что они никак не затрагивают основную систему. То есть и исходное ядро, и исходный загрузчик остаются нетронутыми и к ним в любой момент можно беспрепятственно вернуться. И именно исходные (родные) ядро и загрузчик нужны для работы PatchPae2.
      Вылет системы в BSoD обусловлен не железом, как таковым (при условии, что процессор поддерживает PAE, а материнская плата поддерживает память больше 4 ГБ и «умеет» перемещать адреса памяти выше 4 ГБ), а «глупыми» драйверами к нему, которые не понимают, что система работает в режиме PAE без 4 ГБ ограничения. Подробно и с картинками об этом можно прочитать здесь. Одна «паршивая овечка», затесавшаяся в стадо, может испортить все дело.
      Я бы предложил такой план.
      1. Убедится, что в системе остались родное ядро и загрузчик с которыми она работает без проблем;
      2. Пройти по сайтам изготовителей оборудования и скачать самые свежие драйвера к нему (видео, звук, устройства m/b и т.д.). Особое внимание при этом стоит обратить на устройства к которым отсутствуют 64-разрядные драйверы. Само по себе наличие такого драйвера не гарантирует, что и 32-разрядный сделан с учетом PAE, но вот его отсутствие может с большой вероятностью означать что 32-разрядный правильно работать не будет;
      3. Вынуть из компьютера все, что можно — в идеале должен остаться жесткий диск с системой и видеокарта;
      4. Отключить в BIOS все, что можно;
      5. Сделать ратч с помощью PatchPae2 и командного файла к нему.
      Если система загрузилась со снятым ограничением, то последовательно начать включать и устанавливать устройства. Возможно, так получится найти «паршивую овечку» и решить проблему.
      Если нет — ну, значит, не судьба.

  12. alfred:

    Александр, спасибо за помощь, но у меня ничего не изменилось. Я восстановил загрузчик и воспользовался автоматическим патчем, все сработало. Система видит мои 7Gb, но загрузка как и прежде через перезагрузку. Единственное, могу добавить запись системных событий во время загрузки системы, может на что-то натолкнет:

    Предупреждение:
    The driver \Driver\WudfRd failed to load for the device pdBusEnumRoot\UMB\2&37c186b&4&STORAGE#VOLUME#.

    Ошибка:
    Произошла неустранимая аппаратная ошибка. Сообщивший компонент: ядро процессора
    Источник ошибки: Исключение проверки компьютера
    Тип ошибки: Ошибка шины или межсоединения
    ИД APIC процессора: 0

    • alfred:

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

    • alfred:

      Александр, а может ли постоянная перезагрузка (вручную) при старте системы чем-то навредить железу? Если нет, я уже не буду «париться», будет стартовать через «ж…» — рестарт )))

    • Думаю, что железу такая (горячая) перезагрузка никак повредить не может. Помнится очень очень дано я доконал материнскую плату в сервере тем, что посредством ИБП выключал сервер на ночь (с полным выключением питания). В одно «прекрасное» утро при старте подачей питания она и приказала долго жить — вышел из строя стабилизатор на самой материнской плате. Кстати, как это ни удивительно, но ее потом удалось отремонтировать без замены.
      В вашем случае разве что попробовать вынуть из компа все, что можно, что нельзя, отключить в BIOS. Т.е. оставить винчестер и видеокарту и посмотреть результат.

    • Могу посоветовать, в порядке пунктов:
      1. Обновить BIOS MB
      2. Обнулить все настройки BIOS по дефолту, либо всё в авто режимы поставить
      3. Проверить SMART, если норм — то следующий пункт, если нет — то пункт 6
      4. Проверить винт mhdd, потом с лайвСД проверкой диска все разделы, в этой же последовательности и обязательно обеими программами
      5. Попробовать на других разъёмах винт и с другими SATA шлейфами
      6. Попробовать с другими винтами
      Если не поможет, тогда скорее всего это косяк матери..

    • alfred:

      Я поступил проще, установил Windows 7, применил патч, но другой (старый). Система видит 7 гигов, грузится в обычном режиме. Не знаю, что за глюк, но на 8-ке так и не смог добиться желаемого результата, а грузиться все время через рестарт не улыбается. В общем, так… Спасибо за советы.

    • Старый патч — это что-то типа ReadyFor4GB? В принципе без разницы, но, если не секрет, почему не PatchPae2? С командным файлом к нему он по трудозатратам ничем теперь не отличается от старого.

    • alfred:

      ReadyFor4GB мною ранее использовался, вот и решил ставить то, что проверено. Не могу сказать, что он лучше или хуже — пока работает.

    • ОК. Я почему-то так и подумал.

    • Хотя, с точки зрения «на будущее» был некоторый шанс понять кто виноват — Windows 8 как таковая, или PatchPae2.

    • alfred:

      Я могу и этот патч попробовать, он же просто создаст еще один загрузчик и в случае неудачи просто удалю его. Вечером попробую и отпишусь.

    • alfred:

      Вот и применил PatchPae2 к Windows 7 sp 1, все работает, загрузка в штатном режиме. Единственное, ставил в ручном режиме. Получается, что-то не то с WIN 8 было.

    • Ну и славно. Жаль, конечно, что 8-ка с патчем не захотела у Вас нормально работать. Надо будет мне все же выкроить время и поставить ее на виртуальный диск (не на виртуальную машину). Обещал, а так руки и не дошли пока.

  13. Вова:

    Огромаднейшее спасибо автору статьи. Сама статья просто и доступно написана — все прошло отлично. У меня «виндовс 8 проф от Матроса» (хорошая винда, мне нравится) ее и патчил. Еще раз СПАСИБО!!!!!!

    • Спасибо за отзыв. Приятно, что трудился не зря.
      Если честно, то когда я писал эти статьи, то совершенно не ожидал такого интереса пользователей к этой теме (изначально первая статья позиционировалась как приложение к теме «большой» памяти в 32-разрядных системах).
      Это значит, что пока еще очень у многих не очень складываются отношения с х64.

  14. павел:

    у меня после проведенных манипуляций на новом ядре удалось загрузиться только в safe-режиме :
    http://i-fotki.info/15/d521786c2a1863ca6381596ddb4f42232e2f08159286787.jpg.html

  15. павел:

    поставил новую систему…
    все девственно чистое,ничего пока не установлено.
    применяю патч…выводит окно

    unable to copy file ?????????????????
    unable to copy file ?????????????????

    операция успешно завершена…

    и все . ничего не изменилось,ничего не появилось.

    • alfred:

      У меня тоже была подобная надпись, когда применил патч «автоматом».
      Попробуйте все сделать вручную по инструкции, должно получиться. У меня было проблема в том, что в командной строке сразу не открывался каталог «C:\Windows\system32.» По совету автора — «Если по какой-то причине открылся другой, переходим в него командой CD C:\Windows\system32.»
      Далее я все сделал по рекомендации автора и все сработало.

  16. alfred:

    Александр, «посидев» несколько дней на WIN 7, я решил продолжить эксперименты с WIN 8 и не зря. Слишком большая разница в быстродействии этих систем и WIN 8 выигрывает в этой гонке. Вы не поверите, но я нашел причину моего глюка с «холодной» загрузкой. Я обратил внимание на один момент, что после выключения компа кнопкой на системной блоке система загружалась нормально, если я завершаю работу системы через утилиту «StartIsBack v2.0.1 Eng_Rus», которая возвращает меню пуск в WIN 8 или через боковую панель WIN 8 глюк остается. Завершаю работу системы через гаджет и все ок. Система грузится в штатном режиме. Во время завершения работы через гаджет, на мгновенье появляется окно командной строки. Вот такая вот история. PatchPae работает нормально с WIN 8, не сомневайтесь.

    • Очень рад, что Вы нашли причину или, по крайней мере, способ как справиться с неадекватным запуском Windows 8.
      Я сейчас готовлю материал к статье по поводу повторной «поправки» ядер после обновления безопасности KB2859537 и повторно протестировал Windows 7 и Windows 8 в разных вариантах. Еще раз убедился, что связка PatchPae2 + PatchPae2cmd работают в Windows 8 отлично.
      А что, действительно Windows 8 работает много быстрее 7-ки? Это по ощущениям, или есть какие-то объективные показатели?

    • alfred:

      Никаких специальных тестов по быстродействию не проводил, но я очень внимательно отношусь к времени загрузки системы и запуску приложений. Это конечно мое субъективное ощущение, но система работает гораздо живее. После WIN 8 не смог я оставаться на WIN 7, что и послужило поводом для продолжения эксперимента с WIN 8.
      Кстати, может быть у Вас есть идеи, почему при завершении работы системы через гаджет система загружается нормально, просто уже любопытно.

  17. маша:

    всё работает
    Класс!!!!!!!!!!!!!

  18. Евгений:

    Здравствуйте!
    Ноутбук MSI GT60/ I7-3720QM/nVidia GTX 675MX/16Gb Ram DDR3-1600/2xHDD WD Scorpio Black-Raid 0
    Значит так:
    1. Установлена OC Wind 7×32 SP1 лиц.

    2. Архив PatchPae2 при расхивировании содержит собственно патчер PatchPae2 (приложение), папку src, в которой находится PatchPae2.sln, далее папка PatchPae2 где находятся три файла: main.c, PatchPae2.vcxproj, PatchPae2.vcxproj.filters.

    3. В архиве рatchрae2сmd, находится собственно сам командный файл.
    В статье написано, цитирую: «Файл нужно разархивировать и разместить в той же папке, в которой находится исполняемый файл PatchPae2.» (конец цитаты). И где же в папке исполняемый файл (см. п. 2)? Или я что-то не понимаю?
    Далее, после запуска файла рatchрae2сmd в папке PatchPae2 на диске С, в командной строке имеем:

    ProductName REG_SZ Windows 7 Professional
    Pached
    Запись успешно скопирована в {xxxxxxxxxxxxxx} где х номер с буквами и цифрами.
    Операция успешно завершена.

    Перезагружаемся
    При перезагрузке, появилось меню с выбором :
    1. Win 7
    2. Wind 7 4Gb
    При выборе п.1 загрузки нет, просто тёмный экран.
    Выбираем п. 2, загружается ОС , далее смотрим оперативную память:
    Установлено 16.0Гб-Доступно 3.16 Гб.
    Вот и все результаты.

    3. На все команды даваемые в статье и вводимые в командной строке, даётся один ответ, например: «PatchPae2.exe не является внутренней или внешней командой, исполняемой программой или пакетным файлом».
    Я что-то не так делаю?

    Кстати, являюсь вашим подписчиком. Может вышлите мне новый патч и с ним что-то получится?
    С уважением, Евгений.

    • (3) Исполняемый файл это PatchPae2.exe
      Судя по тому, что Вы написали, командный файл рatchрae2сmd отработал нормально. Чтобы снять всякие сомнения, нужно запустить в командной строке с правами администратора bcdedit и посмотреть новый вариант загрузки (Windows 7). Если в bcd все правильно, а наверняка так и есть, проверьте наличие в \system32\ нового «поправленного» загрузчика winloadp.exe и нового ядра ntkrnlpx.exe.
      Пункт меню «Windows 7 4Gb» — это обычная загрузка без каких бы то ни было изменений.
      Если все правильно, но система со снятым ограничением не грузится, значит этот вариант у Вас не работает. На моем тестовом ноутбуке с Windows 7 было тоже самое. Я об этом писал.
      (3) В этом случае повторять в командной строке PatchPae2.exe смысла не имеет. Запускаете вы ее без указания пути к файлу или не перейдя в тот каталог, где она расположена, соответственно система просто не находит программу и выдает соответствующее уведомление.
      Нового PatchPae2 пока не существует.
      Что делать? Вернуть все в исходное состояние и попробовать первый патч для Windows 7. Используйте только ReadyFor4GB.exe. Ни в коем случае не 4GB-7600_RTM_x86 — это не патч, а обман. Он подсунет дремучее ядро со всеми уязвимостями.
      Если не получится с ReadyFor4GB, пишите. Будем решать задачу дальше.

  19. Евгений:

    Спасибо за оперативный ответ.

  20. КонстантинС:

    Александр!

    А почему нет патча к xp sp3, а только начиная с Висты?

    Это невозможно принципиально в xp?

    С уважением, Константин

    • Очень хороший вопрос. Принципиально, конечно, возможно. Более того, до SP2 ограничения и не было. Windows Server 2003, который, как известно, прямой родственник Windows XP, в редакции Enterprise поддерживает до 32 ГБ оперативной памяти.
      Почему нет патча? Могу лишь предположить, что он был не очень нужен. Я много лет разрабатывал спецификации на корпоративные компьютеры и могу сказать, что 4 ГБ оперативки мы начали заказывать только где-то году в 2010, но на эти компьютеры устанавливали уже Windows 7, причем х64.
      Как вариант задействования верхней «невидимой» памяти можно порекомендовать использование программ типа Dataram RAMDisk. Я упоминал об этой возможности в этой статье. На диск в памяти можно перенести, например, файл подкачки и жизнь станет значительно веселее.

    • КонстантинС:

      Нашел решение для XP SP3. Мjжет кому пригодиться.

      «…
      I tested it on XP SP3 with the hal.dll from XP SP1 and it worked. Be careful I have not done a lot of tests, but connecting a USB stick worked.
      Be advised that the link patches another location very near my patching location. But in my opinion the patch from the link only enables up to 16 GB RAM instead of mine which should enable 64 GB RAM.

      For XP SP3 we patch the following offset in ntkrpamp.exe which enables all available RAM up to 64 GB:
      — WinDbg «bp nt!MiPagesInLoaderBlock+0x5d» from
      e0d73851 751b jne nt!MiPagesInLoaderBlock+0x7a (e0d7386e)
      to
      e0d73851 90 nop
      e0d73852 90 nop
      — IDA from
      INIT:005D0851 jnz short loc_5D086E
      to
      INIT:005D0851 nop
      INIT:005D0852 nop
      — hex editor offset 0x1B2A51 from
      75 1B
      to
      90 90

      After ntkrpamp.exe is changed we have to do the following to replace the original kernel file:
      — correct the checksum of ntkrpamp.exe with LordPE
      — add /PAE switch to boot.ini
      Do not omit this step otherwise we can not address the full RAM! This is necessary, because
      we will use hal.dll from XP SP1.
      — replace the original kernel file by the patched one:
      — rename the file «C:\Windows\Driver Cache\i386\driver.cab» to «driver.cab_»
      — rename the file «C:\Windows\Driver Cache\i386\sp3.cab» to «sp3.cab_»
      — rename the file «C:\Windows\system32\ntkrnlpa.exe» to «ntkrnlpa.exe_»
      — cancel the «Windows File Protection» message box and choose «Yes»
      — copy the patched file ntkrpamp.exe to «C:\Windows\system32\ntkrnlpa.exe»
      — cancel the «Windows File Protection» message box and choose «Yes»
      — rename the file «C:\Windows\system32\hal.dll» to «hal.dll_»
      — copy hal.dll from XP SP1 (internal file name halmacpi.dll) to «C:\Windows\system32\hal.dll»
      — do not forget to add the boot.ini switch /PAE, otherwise we can not address the full RAM,
      because we use hal.dll from XP SP1
      — reboot

      …»

    • Это ни что иное, как описание патча для XP SP3. Очень интересно. Боюсь только, что для многих будет сложновато в реализации. А к какому времени относится найденная Вами информация?

    • КонстантинС:

      Информация свежая, отностится к апрелю 2013.
      Автор с ником kondra, видел его на разных форумах.

      Я скопировал отсюда.

      Метод, как и у патча для WIn7, адреса только в ntkrpamp.exe другие.
      Главная хитрость — использовать hal.dll от XP SP1.

  21. Александр:

    Спасибо автору.Теперь cистема видит 8 Gb. ОС Windows 8.1 Pro x86.

    • Спасибо, что написали по поводу Windows 8.1. Меня благодарить особо не за что — заслуга «wj32».
      Я написал новый пост по поводу обновления PatchPae2 для Windows 8.1 с небольшим опросом. Было бы здорово, если бы Вы смогли поучаствовать в опросе и в комментариях поделиться впечатлениями о работе компьютера со снятым ограничением памяти. Есть ли какие-либо проблемы?

  22. антон:

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

    • Ничего страшного. Главное не торопиться и не навредить еще больше. Восстановить загрузку очень просто. После того, как Windows завершит попытку автоматического восстановления (в вашем случае, неудачную) нажмите «Дополнительные параметры», далее опять «Дополнительные параметры», далее «Командная строка». Должен появится «пользователь» и ввод пароля. Если добраться до командной строки таким образом не получается, то загружайте компьютер с установочного диска с Windows 8.1. После старта выбираем «Восстановление системы». Далее аналогично описанному выше. Главная задача добраться до командной строки. Добрались.
      Теперь (в окне командной строки) набираем:
      diskpart
      list vol

      Смотрим какая буква соответствует загрузочному диску Windows (не системному «Зарезервировано системой»). Скорее всего это будет D:
      Выходим из diskpart:
      exit
      и набираем такую команду:
      bcdboot D:\Windows /l ru-RU
      Вот собственно и все. Результат можно посмотреть тут же в bcdedit и при необходимости что-то поправить.

  23. Alfred:

    Здравствуйте, Александр. После непродолжительного перерыва решил продолжить эксперименты и установил патч на win 8.1, предварительно скачав новый по указанной Вами ссылке. Система (Windows 8.1 x86 Корпоративная) работает в штатном режиме и видит мои 7gb. ОЗУ, кроме того, если Вы помните, у меня была проблема с загрузкой системы с новым ядром, загружалась только после перезагрузки, так вот, в win 8.1 этой проблемы нет, система грузиться при «холодном старте». Но, с тех пор я обновил немного железо, добавил ssd disk, на который и устанавливал систему, видимо в моем случае проблема была в hdd. В общем, патч работает на Win 8.1, спасибо.

    • Здравствуйте! Я конечно помню вашу проблему с загрузкой. Долго думал как ее можно смоделировать, но в голову ничего не пришло. Очень рад, что после перехода на Windows 8.1 все решилось. Мои особые поздравления в связи с покупкой SSD — пожалуй это самый лучший обгрейт компьютера из всех ныне существующих.

  24. alfred:

    Спасибо! Абсолютно с Вами согласен, SSD реально лучший апгрейд. Я долго сомневался даст ли мне приобретение ssd значительный прирост производительности притом что у меня еще старая материнка с SATA2, но разница действительно заметна. Оценка производительности диска в windows 8 поднялась с 5.9 до 7.2. В win. 8.1 почему-то убрали функцию оценки производительности.

    • SATA2 пока точно не является препятствием для использования SSD. Заявленная скорость последовательного чтения с SSD в районе 500 Мб/с. Я намерил в два раза меньше. SATA2 — 3 Гб/с. Так что с запасом.
      Оценка производительности в 8.1 действительно исчезла.
      Если не секрет, купили SSD какого объема?

  25. Alfred:

    Не секрет, конечно. Купил SSD диск – Corsair Force Series объемом 90Гб. Покупал исключительно для установки операционной системы, 90Гб я думаю, будет достаточно, хотя, как говорится – памяти много не бывает. Впечатления положительные.

    • Для системы точно хватит. У меня сначала стоял SSD Intel 60ГБ и я перенес рабочие профили пользователей на другой диск. Теперь стоит SSD Intel 120ГБ, но пользовательские профили я на него возвращать не стал. По крайней мере пока. Скорость работы компьютера в таком варианте полностью устраивает, плюс оперативный простор.

  26. Сергей:

    Появилась графическая оболочка для утилиты PatchPae2
    EasyPatch4GB RAM
    Скачать можно на сайте разработчика оболочки
    http://tsd-tula.ru/program/install_EasyPatch4GBRam.exe
    поддерживает работы с Windows 8.1

    • Протестировал сие создание в двух виртуальных машинах: Windows 8 и Windpws 8.1. В обеих пока полный коллапс — в процессе патча идет сообщение о том, что PatchPae2 не найден и соответственно никакой патч не выполняется. Несмотря на это создается новый вариант загрузки с указанием на несуществующее ядро и загрузчик (полная беда!). После перезапуска, естественно, сразу запускается диагностика неисправностей с естественным итогом «Средству автоматического восстановления не удалось…».
      Пока не рекомендую никому! Если есть желание поэкспериментировать — в обязательном порядке предварительный бекап хранилища BCD.
      Да и смысл городить такой огород с инсталляцией новой программы, которая, кстати, непонятно что делает, для однократного выполнения пары операций совершенно не очевиден. Простой и прозрачный командный файл PatchPae2cmd (по сути та же программа) на мой взгляд куда лучше подходит для этой цели.
      Не зря я, видимо, пишу сейчас статью о методах восстановления загрузки Windows :-).

  27. александр:

    Здравствуйте Александр.Уменя комп пакарт вел Win7 Ultimate, intel pentium processor P6100 4Gb видюха NVIDIA GE Forse GT420m 1GB. решил поправить память у меня из 4 гигов зарезервировал гад 1.8гига. Возникла проблема. Начал устанавливать PatchPae2cmd как описывали поместил их оба cmd и exe на диск С он у меня не разделен, запустил комп перезагрузился долго думал опять сам перезагрузился и вывел окно system recovery options
    с двумя окошками select a language где стоит английский язык и ничего не меняется и select a keyboard input method где список языков можно менять далее две кнопки cancel при нажатии отключается комп и next при нажатии выводит поиск потом требует образ системы. Перерыл все в компе благо что-то открывает,исчитал весь ваш форум ,в командной строке все испробовал. этот гад(комп) сделал три диска С-зарезервированно оборудованием,D 465гиг-где винда и т.п.. X 31мгб-где еще одна вида и несколько папок с программами.Не могу откатить думаю переустанавливать винду может есть какой совет,спасибо.

    • Здравствуйте! Переустанавливать систему не надо, так как патч исходную точно никак испортить не мог. Ничего страшного не произошло. Нужно лишь восстановить или поправить BCD. Все, что для этого нужно, я описал в этой статье. Кстати, когда Вы скачивали patchpae2cmd? 2 декабря я выложил новый вариант, который помимо всего прочего делает резервную копию исходного содержимого BCD.
      Первое, что сейчас нужно сделать, это попытаться в автоматически запускающейся среде восстановления добраться до выбора загружаемой операционной системы.
      Если не получится, пишите, будем двигаться дальше.

    • александр:

      здравствуйте александр сделал как посоветовали через, Восстановление загрузки с помощью команды BCDboot. комп пишет windows boot manager . enter=Continue,
      ESC=exit. при нажатии на любую из этих клавиш он перезагружается и опять пишет тоже самое.

    • Неожиданно. Если честно, то уже не понимаю как такое может быть. Надо смотреть глазами что у Вас приключилось с BCD. Если среда восстановления с диска не запускается, то нужен DVD или флешка с дистрибутивом. С них грузить среду восстановления и запускать командную строку с bcdedit.

  28. Николай:

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

    Windows 8.1

    • Николай:

      Восстановил. Пользовался и ручками и цмд файлом. не получается загрузить с нового ядра. всегда черный экран. Можно как то исправить?

    • Молодцом, что справились! Для исключения возникновения подобной ситуации я слегка поправил patchpae2cmd — теперь новый вариант загрузки «Windows XXX [128 GB]» идет в списке первым, но загружаемой по умолчанию остается исходная система. Если с [128 GB] все оказывается хорошо, то назначить новую систему дефолтной можно в одно касание в msconfig.
      К сожалению по черному экрану на пропаченном ядре, думаю, вариантов нет.

  29. Андрей:

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

    -меня всегда бесила политика\реклама торгашей: вот вам крем для лица, а вот для рук, а вот для ног, а вот для бикинки, а вот для подмышек, а вот …
    А разница в кремах только в добавке навроде запаха одуванчика… Для чего это делается? Естественно для прибыли\дополнительного\изощренного доения населения.
    -Мелкософт — по сути — это тот же простой торгаш, думающий только о прибыли.
    И поэтому их манипулирование с x86\x64 и исскуственным ограничением потолка оперативки — тот же фокус с заполнением рынка отдельных кремов для бикини и подмышек…

  30. Андрей:

    Очень полезнейшая\зачётная серия статей.

    • Андрей! Большое спасибо за отзыв. Если честно, то мне и самому понравилось. Кстати, последний вариант командного файла patchpae2.cmd, похоже, тоже получился удачным. По крайней мере никто больше не обращался по поводу проблем с загрузкой.

  31. Alfred:

    Здравствуйте, Александр! Ранее, мы с Вами обратили внимание, что в Windows 8.1 убрали индекс производительности, вчера вот надкнулся на простенькую программу «Winaero WEI Tool», которая возвращает это дело, как было в Win 7 или Win 8. Если будет интересно, вот ссылка на источник.
    P.s. Что касается работы win 8.1 с патчем, за два месяца никаких глюков не было, все работает.

  32. Sim:

    Прошу прощения, я наверно что-то не так сделал но у меня на нетбуке с Windows 7 Home Premium с памятью на 4GB система видит только 3GB. При попытке использовать patchpae2cmd выдает сообщение что все операции прошли успешно и типа можно перезагружаться, после перезагрузки система не стартует никак вообще. Восстановил загрузчик.
    отключит в вашем patchpae2cmd.cmd автоперезагрузку и решил посмотреть что об вообще делать в системе. Выяснилось что он только меняет параметры загрузчика BCD, а файлы winloadp.exe и нового ядра ntkrnlpx.exe вообще не создает в system32. Не смотря на то, что я запускаю файл под администратором.
    В чем может быть проблема?
    Спасибо.

    • Sim:

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

  33. Thomas:

    Здравствуйте я все сделал по инструкции но при загрузке мод. ядра
    пишет :prerating automatic repair, следом: Устранения неполадок после чего вылазит синий экран выбора что сделать: продолжить загрузку, выбрать другую винду.
    Помогите пожалуйста.

    • Thomas:

      У меня Win 8.1
      И еще можно ссылку на patchpae2cmd

    • Thomas:

      Извеняюсь винда загрузилась, но оперативная память осталась той же

    • Добрый день!
      Ссылка на patchpae2cmd (и не только) будет в уведомлении о подписке на обновления блога.
      Если уже сделали все необходимые операции вручную, то большого смысла в patchpae2cmd нет. Если все же соберетесь им воспользоваться, то верните меню загрузки в первозданный вид.
      Причина может быть в том, что в некоторых версиях Windows patchpae2 не делает модифицированное ядро и загрузчик, если в соответствующих командах не указать полные пути к ним %windir%\system32\…
      Эта тема обсуждалась в следующей статье.

  34. Артем:

    Доброго дня.
    Неоднократно пробовал установить патч. И в ручную, а с помощью patchpae2cmd. Два сценария дальше: 1.- после перезагрузки дает выбор системы, запуск, и вместо «добро пожаловать» выдает «завершение работы» с мерцанием, после синий экран и перезагрузка; 2.- после выбора системы, запуск, вроде все нормально, потом выводит окно о попытки исправить проблемы с входом в систему, после перезагружает.

    • Артем, здравствуйте. Как я уже неоднократно говорил, положительный результат к сожалению отнюдь не гарантирован. Все зависит от конкретной конфигурации компьютера.
      В вашем случае нужно изыскивать возможность перехода на х64.

    • Артем:

      Ваш ответ довольно однозначен Александр. Т.е. нет смысла пытаться дальше?) К сожалению видимо так и есть, единственное что узнал хорошего — мой процессор и железо поддерживают 64бит архитектуру. Буду переустанавливать свою семерку) Спасибо.

    • Артем, единственное, что можно сделать в вашем случае, это проверить установлены ли самые последние версии драйверов для всех устройств — дело именно в них. Если Вы за этим следили и драйверы свежие, то попытки действительно можно прекращать и сосредоточить свои усилия на х64.

  35. Олег:

    Здравствуйте. Пробовал двумя способами (на win7):через ReadyFor4GB и через PatchPae2. Результат абсолютно одинаков: все идет как по маслу, ядро 128 гб успешно запускается, в свойствах видно, что лимита больше нет, а через пару минут БАЦ! синий экран смерти… при повторном запуске ядра 128гб появляется рабочий стол и окно, в котором написано, что у меня проблемы с ядром, и через минуту система опять синий экран с перезагрузкой. А все так хорошо начиналось ((((

  36. Олег:

    большое спасибо за совет про бэкап при помощи bcd, хоть не пришлось всю систему восстанавливать )))))

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

  37. Олег:

    А, ерунда. Все равно много не выиграю, у меня 4 гб оперативы. У меня такой вопрос: на моем компе лимит оперативной памяти прописан и в биосе, 3,25 гб максимум. Если изменяешь лимит в биосе, он изменяется и при работе (в свойствах компьютера видно). А при установке этого патча система лимит не показывает, но в биосе он остается. На моем стареньком атлоне такого меню в биосе не было. А на этом компе есть(acer M3641, готовая сборка). Это может быть конфликт системы с биосом?

    • Олег. Судя по тем описаниям, которые удалось найти по вашему компьютеру, максимальный объем адресуемой памяти у него 4 Гб. Стало быть запускать на нем Windows с пропаченным ядром категорически не нужно, так как просто бессмысленно — пересекающуюся с адресами устройств память просто некуда переносить. Кроме аварийных вылетов в синий экран, которые Вы и получили, ничего не будет.
      Могу предположить, что ограничение памяти, задаваемое в BIOS, предназначено больше для 64-разрядных систем.

  38. Привет. Когда прописываю в командной строке первую команду C:\PatchPae2.exe -type kernel -o ntkrnlpx.exe ntkrnlpa.exe мне пишет: «»PatchPae2.exe» не является внутренней или внешней командой, исполняемой программой или пакетным файлом». что делаю не так?

    • Андрей, здравствуйте. Чудес на свете не бывает, или PatchPae2.exe у Вас не на C:\, или ошибка при наборе команды. Еще может быть нужно прописать полные пути до ядра и загрузчика.
      Вообще-то все эти вопросы решает командный файл, который я раздаю по подписке.

  39. Олег:

    Спасибо за информацию, Александр ))

  40. Стоит Windows 7 x86 в VirtualBox. Выделено под ось 6 Гб памяти (всего физ. памяти 16 Гб).
    Попробовал вначале сделать то, как описано по первой статье — пункт в меню загрузки появился, но памяти также 3.5 Гб.
    Затем в msconfig удалил все и попробовал через патч. Но ругается на недостаточный обьем ОЗУ 4095 Мб и патч не выполняется.
    Ошибка «Непредвиденное появление: 4095».
    В свойствах системы показывается только 3.5 Гбайт ОЗУ. В утилите CPU-Z также 3584 Мб отображается доступной памяти.
    В настройках VirtualBox поигрался только с галочкой PAE, но ситуация не изменилась — все также 3.5 Гб. Я думал что виноват VirtualBox, но почитал — вы также тестируете под ней. Подскажите в какую сторону копать, чтобы VirtualBox дал системе >4 Гиг ОЗУ.

    • Я действительно тестировал скрипт в виртуальных машинах, но для них он был слегка поправлен. Дело в том, что функция, которая используется в цикле подсчета суммарного объема установленной в компьютере памяти, оперирует исключительно с физической памятью. Стало быть для того, чтобы скрипт заработал в виртуальной машине, проверку на 4 Гб нужно просто отключить.
      Откройте patchpae2cmd.cmd в текстовом редакторе. Чтобы не возникло проблем с кодировкой лучше сделать это в редакторе Far-а или в Notepad++. Найдите в 54-й строке метку :memcheck и сразу за ней вставьте новую строку: GOTO :INSTALL
      Если возникнут сложности дайте знать. Могу сбросить Вам поправленный вариант командного файла на e-mail.
      Если не секрет, зачем нужна 32-х виртуальная машина с таким объемом памяти?

    • tolik777:

      Вставил строку ниже — не пошло, а потом заменил в этой строке GOTO :memcheck на GOTO :INSTALL и пошло.
      Все 10 Гигов теперь видно, но слетела активация. Буду разбираться теперь с активацией.
      А для чего нужно столько памяти на x86 не секрет — просто есть ПО промышленное, старой версии и под него хасп эмулятор только 32bit, на 64 винде не удалось запустить, штук 5 перепробовал разных сборок и вариантов, проблема в драйверах. А ПО это очень требовательно к ресурсам и на 3.5 Гигах работает медленно.

    • С активацией странно. У меня не слетела ни разу ни на одном компьютере. Может быть последние обновления что-то добавили.
      Между нами девочками говоря, я хасп ненавижу лютой ненавистью. Причем я не про эмулятор говорю, а имею в виду нормальный ключ к легально купленному софту. Сколько он мне крови попортил еще со времен Windows 95, когда в LPT порт вставлялся! Ужас! Иногда просто до отчаяния дело доходило.
      Кстати не факт, что ваш эмулятор будет нормально работать с PAE без ограничения памяти.

  41. Иван:

    Для тех, кто пользуется патченной версией предупреждение-НЕ УСТАНАВЛИВАЙТЕ ОБНОВЛЕНИЕ kb3000850, оно меняет ядро и не только и с патченной системы просто не загрузиться. нужно ждать пока создатель патчера обновит его или переустановить на x64(что я и собираюсь сделать если до нового года не будет обновления патчера)

    • Иван! Большое спасибо за предупреждение. Очевидно, что обновление kb3000850 в очередной раз меняет ядро. Проблему с загрузкой после установки этого обновления решить не так сложно, а вот с новым патчем действительно придется подождать.
      А вообще обновление это какое-то странное по своей сути. По весу тянет на сервиспак, но вместе с тем таковым не является и идет в категории необязательных. Если верить описаниям, то в него еще раз включены все обновления, которые были с апреля 2014 года. Получается, что если система все это время нормально и регулярно обновлялась, то kb3000850 можно и не устанавливать.

  42. Костя:

    Сделал и через bat и руками, все равно показывает 2,97 вместо 4 гб память. Материнка поддерживает до 16 гб память. Вручную когда делал-ошибок не было. Система windows 8.1

  43. Костя:

    Помогите!!!

    • Костя, надо внимательно посмотреть, что в конце концов получилось. Проверьте создались ли новые ядро и загрузчик и правильно ли на них прописаны пути в bcd. Киньте мне на почту листинг вашего BCD.

  44. Костя:

    Костя, надо внимательно посмотреть, что в конце концов получилось. Проверьте создались ли новые ядро и загрузчик и правильно ли на них прописаны пути в bcd. Киньте мне на почту листинг вашего BCD.

    что такое BCD и где взять листинг

  45. Костя:

    Отправил листинг.

    • На первый взгляд все правильно.
      У меня пока три варианта почему у Вас система не видит всю установленную память после патча:
      1. Как-то неправильно был сделан патч;
      2. Материнская плата не умеет переносить верхние адреса выше 4 Гб (маловероятно);
      3. После последнего недавнего обновления ядра Windows патч не снимает ограничение.
      Последнее проверю когда будет возможность.

    • Костя:

      Я могу проверить установив планку в 2 гб (итого 4) и загрузиться с загрузочного диска (там 4 системы, одна 64 битная. Но я уверен, что материнка новая 2013 года биостар и поддерживает до 16 гб по паспортным данным.
      Возможно из-за обновления. Я последний раз обновился полностью.

    • У меня хорошая новость для всех. Проверил работает ли PatchPae2 на новейшем на сегодняшний день ядре версии 6.3.9600.17630 от 10.01.2015. Работает совершенно без проблем.
      Так что мое предположение номер три почему ваша система не видит всю установленную память не актуально. Ищите что же у Вас не так. Может быть в BIOS материнской платы установлено некое ограничение доступной памяти? Мне такое встречалось.
      Могу кинуть на почту поправленные ядро и лоадер.

  46. Константин:

    Конечно пришлите на почту, попробую. Конечно в 2 словах скажите куда закинуть его и что в загрузчике прописать. либо это также bat файлом будет?

    • Разумеется проще и лучше сделать все с помощью patchpae2cmd.cmd. Но перед тем как его запускать, если до этого использовали что-то другое или делали руками, нужно вернуть содержимое bcd к исходному состоянию.
      Отправил.
      Файлы должны лежать в C:\Windows\system32

  47. Марат:

    Пропатчил PatchPae2 свою 7-ку (SP1), все классно, видит все 8Гб! Спасибо большое! Система i7-2600K, ASUS P8Z77-M Pro.

  48. Иван:

    После установки обновлений за апрель 2015 компьютер пришлось восстанавливать. Удалил патч. Обновления встали нормально. Повторно пропатчить систему через командную строку уже не удалось. До этого всё работало нормально 6 месяцев.

  49. Ghost:

    Windows 8.1 Ent 32бит со всеми обновлениями на текущий момент. PatchPae2cmd сработал, как часы. После перезапуска — BSOD: VIDEO_TDR_FAILURE nvlddmkm.sys . После некоторых манипуляций — «Решаем ошибку — Синий экран BSOD: Nvlddmkm.sys, dxgkrnl.sys и dxgmms1.sys» — 4ГБ памяти и стабильная работа системы.

    • Иными словами — в системе были «хвосты» от старых драйверов Nvidia, которые не позволяли ей работать в режиме PAE без 4 Гб ограничения. Вы их удалили с помощью DriverSweeper, сделали чистую установку новых драйверов Nvidia и все стало хорошо. Отлично. Если это действительно так, то информация полезная.
      ВНИМАНИЕ!!!
      Не скачивайте DriverSweeper и CCleaner со страницы, на которую дана ссылка в данном комментарии — файлы содержит вирус. Скачивайте эти утилиты только с официальных сайтов.

  50. С десяткой кто-нибудь уже тестировал этот патч? Или на 10-ке нет ограничений?

  51. Павел:

    Здравствуйте.

    А как насчёт Windows 10?
    Жаль, что не прочитал это всё раньше. :( Купил 8гб памяти и поставил к 2Гб имеющимся. :( Похоже надо было просто ещё 2Гб брать или 4…
    Я уже пересел на 10-ку, показалось, что на 3 пользователей ресурсов маловато, вот и решил нарастить память. Про ограничение ничего не знал.
    Больше 4000 не даёт выставлять — сбрасывает. :(

  52. 111:

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

  53. Кве:

    Присоединяюсь к комментарию выше.

  54. Сергей:

    Установил патч на windows 7 sp1 — после окна «Запуск Windows» темный экран, время от времини запускается кулер на высоких оборотах, но загрузка далее не происходит. Методом проб и ошибок вияснил, что конфликтует драйвер Intel HD video. Если драйвер удалить, Windows запускается нормально.

  55. руслан:

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

  56. Акрам:

    После применения патча комп перезагрузился и вместо окно входа там мерцает экран с надписом Завешения работы, потом синий экран. Что делать?

Написать комментарий

Subscribe without commenting