Metamorf
- Стаж: 9 лет 9 месяцев
- Сообщений: 85
- Репутация:3[+] [-]
- Откуда: Барнаул
|
Большинство пользователей 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
Последний раз редактировалось: Metamorf (2016-12-07 11:55), всего редактировалось 1 раз
|
zxen
- Стаж: 10 лет
- Сообщений: 263
- Репутация:21[+] [-]
- Откуда: Siberia
|
Этот патч может помочь и в том случае, если винда не использует всю память, не в смысле то, что овер 4 гб, а бывают глюки, когда винда ни в какую не хочет использовать даже все ~3,2 гб, может зарезервировать даже пару гигов, неизвестно куда. Такое случается. И.. предостережение, так как патч вмешивается в управление памятью, драйверы некоторых устройств, могут вызвать BSOD. Замечал такое с вебкамерой и тв тюнером.
|
Metamorf
- Стаж: 9 лет 9 месяцев
- Сообщений: 85
- Репутация:3[+] [-]
- Откуда: Барнаул
|
Ну меня конкретно по ХП спросили. Решил выложить сюда заодно сразу и о восмерке. zxen, Предостережение правильное. Добавлю, что проблемы могут появится и при обновлениях винды. И еще. ОДИН процесс (приложение) в любом случае не сможет использовать более 4-х Гб.
|
Xki
- Стаж: 8 лет 10 месяцев
- Сообщений: 28
- Репутация: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
- Стаж: 9 лет 9 месяцев
- Сообщений: 85
- Репутация:3[+] [-]
- Откуда: Барнаул
|
Xki, Спс, хотел выделить изменения жирным, но внутри тега "code" не работают другие тэги (((
|
nikzzzz
- Стаж: 9 лет
- Сообщений: 3114
- Репутация: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
- Стаж: 9 лет
- Сообщений: 3114
- Репутация:127[+] [-]
|
33293А у меня один вопрос - а какая крайность вообще ставить 32х битную ОС на ПК с 4 и более ГБ ОЗУ учитывая кучу возможных глюков? Неполноценная поддержка x86 подсистемы, некоторые программы просто вылетают с ошибкой. Проблема с драйверами, для некоторых устройств драйвера просто не существуют. Проблема с не подписанными драйверами. Ну, и наконец, лишнее потребление ресурсов, например при 4 Gb на x86 можно в большинстве случаев работать без файла подкачки, для x64 этой памяти может не хватить.
|
stea.61
- Стаж: 8 лет 10 месяцев
- Сообщений: 671
- Репутация:100[+] [-]
- Откуда: 61 RUS
|
3330133298Ставить Primo RAMdisk ..... Использовать невидимую память. И использовать его как файл подкачки ? То-же вариант, но напоминает танцы с бубнами. Имеющий, правда, целых 2 существенных, на мой взгляд, ПЛЮСА по сравнению с PAE-патчем: 1. Отсутствие проблем с драйверами встроенной графики INTEL 2. Родные подписанные файлы в системе и, следовательно, легитимные загрузка и обновление.
|
Kon Diter
- Стаж: 8 лет 9 месяцев
- Сообщений: 15
- Репутация:0[+] [-]
|
Давненько уже, когда экспериментировал с подобными патчами, столкнулся с тем, что действительно требовательные приложения падают, когда пытаются выйти за границы использования памяти в x86 системах. Как минимум, падал x264 кодек, при использовании высоконагруженных avisynth скриптов, кушающих память. Отсюда вопрос к тем, кто продолжает экспериментировать с pae на системах, где он изначально отключен: вы пробовали тестировать систему ну хотя бы сжав большой файл при помощи 7zip, задав в настройках большой размер словаря?
|
Отправлено: 16-Дек-2016 11:35
(спустя 1 час 30 минут)
Kon Diter
- Стаж: 8 лет 9 месяцев
- Сообщений: 15
- Репутация:0[+] [-]
|
отлично, тогда какой смысл в этом патче, если нельзя задать ограничение в 2gb на процесс для произвольного приложения?
|
Отправлено: 16-Дек-2016 15:21
(спустя 1 час 50 минут)
nikzzzz
- Стаж: 9 лет
- Сообщений: 3114
- Репутация:127[+] [-]
|
33473отлично, тогда какой смысл в этом патче, если нельзя задать ограничение в 2gb на процесс для произвольного приложения? Это ограничение самого x32 приложения, даже при запуске его в winx64 оно остается, и не зависит от подключенной памяти.
|
Страница 1 из 2
Текущее время: 15-Дек 13:04
Часовой пояс: UTC + 3
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете прикреплять файлы к сообщениям Вы можете скачивать файлы
|
|