Metamorf
- Longevity: 9 years 8 months
- Posts: 85
- REPUTATION:3[+] [-]
- Location: Барнаул
|
Большинство пользователей Windows убеждены, что 32 битные ОС Microsoft не поддерживают более 4 Гб оперативной памяти. Таким образом, максимум памяти, доступной в Windows x86 — 4 Гб. А с учетом того, что Windows резервирует часть памяти под свои нужды и нужды периферийных устройств (чаще всего для видеокарты), конечному пользователю для использования доступны обычно около 3-3,5 Гбайт памяти. На первый взгляд все логично – пределом адресации для 32 разрядной адресной шины являются те самые 4 Гб. Во всех официальных документах Microsoft указывает именно этот максимальный размер памяти, поддерживаемый во всех клиентских версиях x86-системе. Хотя на самом деле Microsoft немного вводит всех в заблуждение. Но есть один интересный режим управления памятью:Physical Address Extension (PAE) — режим работы встроенного блока управления памятью x86-совместимых процессоров, в котором используются 64-битные элементы таблиц страниц (из которых для адресации используются только 36 бит), c помощью которых процессор может адресовать 64 ГБ физической памяти (вместо 4 ГБ, адресуемых при использовании 32-разрядных таблиц), хотя каждая задача (программа) всё равно может адресовать максимум 4 ГБ виртуальной памяти. -- определение взято с Википедии В Windows ХР, PAE подключается добавлением в строке загрузки (в файле boot.ini) ключа /PAE в строчке загрузки операционной системы:[boot loader] timeout=30 default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS [operating systems] multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional RU" /noexecute=optin /fastdetect /PAE Включить режим PAE в Windows 8 (Windows 8.1) штатными средствами не получится (для этого придется вручную в HEX редакторе править файл ядра ntoskrnl.exe и переподписывать его). Проще всего воспользоваться готовым патчем PatchPae2, который написан энтузиастом Wen Jia Liu. Скачать патч PatchPae2 можно тут. Патч представляет собой небольшую утилиту командной строки, которая позволяет модифицировать файлы ядра 32 битных версий Windows с целью активация режима PAE, позволяющего использовать более 4 Гб оперативной памяти (до 128 Гб памяти). Патч PatchPae2 будет работать со следующими ОС: Windows Vista SP2 Windows 7 / Windows 7 SP1 Windows 8 / Windows 8.1 Установка: - Распакуйте архив и скопируйте файл PatchPae2.exe в каталог %Windir%\system32 (обычно он находится на диске C:\) - Запустите командную строку с правами администратора. - Создадим модифицированную копию ядра Windows 8, поддерживающего работу с памятью объемом до 128 Гб:PatchPae2.exe -type kernel -o ntoskrnx.exe ntoskrnl.exe - Создадим новый модифицированный загрузчик, позволяющий отменить проверку наличия цифровой подписи ядра при загрузке:PatchPae2.exe -type loader -o winloadp.exe winload.exe Примечание: В случае успешного каждой из предыдущих команд должна появиться надпись «Patched» - Далее создадим новый вариант загрузки, скопировав текущий и в качестве комментария указав “Windows (PAE Patched)” (или любой другой комментарий):bcdedit /copy {current} /d "Windows (PAE Patched)" . - Далее необходимо скопировать полученный уникальный {boot ID} — {074c09ef-9794-11de-aef9-935525eb400a} (в вашем случае он будет отличаться) и последовательно выполнить следующие команды (в качестве boot ID необходимо использовать полученный вами идентификатор): - Выберем загружаемое ядроbcdedit /set {boot_ID} kernel ntoskrnx.exe - Зададим новый загрузчикbcdedit /set {boot_ID} path \Windows\system32\winloadp.exe - Отменим проверку подписи загрузчикаbcdedit /set {boot_ID} nointegritychecks 1 - Зададим вариант загрузки с модифицированным ядром по умолчаниюbcdedit /set {bootmgr} default {boot_ID} Зададим таймаут загрузки (время отображения загрузочного меню), например 10 секундbcdedit /set {bootmgr} timeout 10 Осталось перезагрузить компьютер и, если вы все сделали правильно, появится такой экран. Выберем вариант Windows (PAE Patched), после чего 32-битная версия Windows 8 или 8.1 должна загрузиться в режиме, поддерживающем более 4 Гб оперативной памяти. . P.S. В Linux необходимо подключать модуль PAE kernel. В каждом дистрибутиве это делается по своему, к примеру в Ubuntu так:1 sudo apt-get install linux-generic-pae linux-headers-generic-pae
Last edited by Metamorf on 2016-12-07 11:55; edited 1 time in total
|
zxen
- Longevity: 10 years
- Posts: 263
- REPUTATION:21[+] [-]
- Location: Siberia
|
Этот патч может помочь и в том случае, если винда не использует всю память, не в смысле то, что овер 4 гб, а бывают глюки, когда винда ни в какую не хочет использовать даже все ~3,2 гб, может зарезервировать даже пару гигов, неизвестно куда. Такое случается. И.. предостережение, так как патч вмешивается в управление памятью, драйверы некоторых устройств, могут вызвать BSOD. Замечал такое с вебкамерой и тв тюнером.
|
Metamorf
- Longevity: 9 years 8 months
- Posts: 85
- REPUTATION:3[+] [-]
- Location: Барнаул
|
Ну меня конкретно по ХП спросили. Решил выложить сюда заодно сразу и о восмерке. zxen, Предостережение правильное. Добавлю, что проблемы могут появится и при обновлениях винды. И еще. ОДИН процесс (приложение) в любом случае не сможет использовать более 4-х Гб.
|
Xki
- Longevity: 8 years 10 months
- Posts: 28
- REPUTATION:0[+] [-]
|
Metamorf, Очепятка - В Windows ХР, PAE подключается добавлением в строке загрузки (в файле boot.ini) ключа /PAE[boot loader] timeout=30 default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS [operating systems] multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional RU" /noexecute=optin /fastdetect /PAE
|
Metamorf
- Longevity: 9 years 8 months
- Posts: 85
- REPUTATION:3[+] [-]
- Location: Барнаул
|
Xki, Спс, хотел выделить изменения жирным, но внутри тега "code" не работают другие тэги (((
|
nikzzzz
- Longevity: 9 years
- Posts: 3114
- REPUTATION:127[+] [-]
|
Патч уже обсуждался здесь, писал под него батник.@echo off cd /d %~dp0 md BackUp PatchPae2.exe -type kernel -o %SystemRoot%\system32\ntkrnlpx.exe %SystemRoot%\system32\ntkrnlpa.exe PatchPae2.exe -type loader -o %SystemRoot%\system32\winloadp.exe %SystemRoot%\system32\winload.exe bcdedit /export "BackUp\bcd-backup" for /f "tokens=2 delims={}" %%a in ('bcdedit /copy {current} /d "Windows (PAE)"') do set id=%%a bcdedit /set {%id%} kernel ntkrnlpx.exe bcdedit /set {%id%} path \Windows\system32\winloadp.exe bcdedit /set {%id%} nointegritychecks 1 color 9e echo. echo ############################################################### echo ####################### ############################# echo ####################### Completed ############################# echo ####################### ############################# echo ############################################################### echo. set /p xx=^>^> color 0f goto :eof В принципе, если не нужно меню загрузки без pae, можно просто заменить ntkrnlpx.exe и winloadp.exe, можно просто заменить эти файлы пропатченными, не трогая BCD.
|
nikzzzz
- Longevity: 9 years
- Posts: 3114
- REPUTATION:127[+] [-]
|
33293А у меня один вопрос - а какая крайность вообще ставить 32х битную ОС на ПК с 4 и более ГБ ОЗУ учитывая кучу возможных глюков? Неполноценная поддержка x86 подсистемы, некоторые программы просто вылетают с ошибкой. Проблема с драйверами, для некоторых устройств драйвера просто не существуют. Проблема с не подписанными драйверами. Ну, и наконец, лишнее потребление ресурсов, например при 4 Gb на x86 можно в большинстве случаев работать без файла подкачки, для x64 этой памяти может не хватить.
|
stea.61
- Longevity: 8 years 10 months
- Posts: 671
- REPUTATION:100[+] [-]
- Location: 61 RUS
|
3330133298Ставить Primo RAMdisk ..... Использовать невидимую память. И использовать его как файл подкачки ? То-же вариант, но напоминает танцы с бубнами. Имеющий, правда, целых 2 существенных, на мой взгляд, ПЛЮСА по сравнению с PAE-патчем: 1. Отсутствие проблем с драйверами встроенной графики INTEL 2. Родные подписанные файлы в системе и, следовательно, легитимные загрузка и обновление.
|
Kon Diter
- Longevity: 8 years 8 months
- Posts: 15
- REPUTATION:0[+] [-]
|
Давненько уже, когда экспериментировал с подобными патчами, столкнулся с тем, что действительно требовательные приложения падают, когда пытаются выйти за границы использования памяти в x86 системах. Как минимум, падал x264 кодек, при использовании высоконагруженных avisynth скриптов, кушающих память. Отсюда вопрос к тем, кто продолжает экспериментировать с pae на системах, где он изначально отключен: вы пробовали тестировать систему ну хотя бы сжав большой файл при помощи 7zip, задав в настройках большой размер словаря?
|
Отправлено: 16-Dec-2016 11:35
(after 1 hour 30 minutes)
Kon Diter
- Longevity: 8 years 8 months
- Posts: 15
- REPUTATION:0[+] [-]
|
отлично, тогда какой смысл в этом патче, если нельзя задать ограничение в 2gb на процесс для произвольного приложения?
|
Отправлено: 16-Dec-2016 15:21
(after 1 hour 50 minutes)
nikzzzz
- Longevity: 9 years
- Posts: 3114
- REPUTATION:127[+] [-]
|
33473отлично, тогда какой смысл в этом патче, если нельзя задать ограничение в 2gb на процесс для произвольного приложения? Это ограничение самого x32 приложения, даже при запуске его в winx64 оно остается, и не зависит от подключенной памяти.
|
Page 1 of 2
Current time is: 04-Dec 19:18
All times are UTC + 3
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You can download files in this forum
|
|