Это
мой походовый микро-мануал рассчитанный
если можно так выразится на уже давно начинающих пользователей любителей хаков, разгонов и других девиаций с
операционными системами в частности виндовс, а конкретнее Хр в виртуальных
системах.
Для кого может быть
полезна данная статья?
1 – для тех, кто захочет поэксперементировать и
попробовать как я пропатчить 32 разрядную Хр живущую в виртуалке и иногда
выходящую на физическую ОС.
2 – для тех, кто хочет подробнее разобраться в механизмах
работы патча на практике и полу-ручному его внедрению.
3 – может, кому то просто будет интересно почитать, что и
где можно делать с ОС.
А может и не кому не будет интересно, тогда статейку буду
перечитывать только я из-за тщетных попыток повторить данный трюк, если
затеряется данный мануала на компьютере.
Какая от этого
польза?
В
принципе вероятности что кто то будет запускать 32 разрядную Хр в виртуальной,
системе и ему понадобится в ней больше 3 гб ОЗУ пока довольно низкая. Но
с возникновением все более производительного железа и деградацией последующих
после Хр операционок от майкрософт вполне вероятно , что кому то данный
материал и пригодится. К тому же на много безопасней экспериментировать в
виртуальной среде доделывая систему, а уже потом при необходимости развертывать
её на любое железо. А вот как раз таки на «любом железе» может быть больше 3 гб
ОЗУ. Почему бы не поставить просто 64 разрядную описано очень доходчиво и
искрометно в мануале от, fix128-ver.0.40
который можно скачать
на рутрекере. От себя замечу что пробовал и 64, и 32 и Хр и 7 и 10.
Остановился на 32 разрядной Хр она наиболее гибкая в плане настроек, удобная и
в отличии от всех остальных пока все еще поддерживает большую часть софта. Хотя
компания майкрософт всяческий этому препятствует, пытаясь втюхать свои новые и
уже убогие продукты. Единственной проблемой в использовании 32 разрядной Хр для
меня было то что она не видит более 3 гиг из-за чего мне пришлось перейти на 64
разрядную 7. Но докрутив Хр вернусь обратно и займусь разработкой и докруткой
порядочного линукса или аналогичной бесплатной ОС. Впрочем, в свою сборку я уже
докрутил пупи и колибрию.
--- Патчь ядра
1 – архиватором (раром зипоп)
распаковать fix128-ver.0.40
+log=detail.exe
2 - там взять с папки utils экзешник PatchPae3.exe и кинуть в созданную на
диски С папку TEST
3 – с папки system32 (C:\Windows\System32) запустить cmd.exe
или нажать Win+R (Пуск->Выполнить) и в окне "Выполнить" ввести cmd или
cmd.exe
4 – перейти в
каталог c:\TEST.
Для этого надо в черное окно вставить текст: cd c:\TEST
5 – потом туда же вставить полностью эту
строчку и нажать энтер:
PatchPae3.exe
-type kernel -o "C:\WINDOWS\system32\PAE128GB.EXE"
"C:\WINDOWS\system32\ntkrnlpa.exe"
Если все идет успешно, то в конце должно
появиться слово «Patched.» Ядро пропадчено, точнее попадчена его копия которая
должна добавится в папке system32 под именем PAE128GB.EXE
--- Патчь хал
1 - С папке i386 которая находится по пути C:\WINDOWS\Driver Cache\ открыть архиватором файла sp3.cab или sp3.cab.fix128-baq (если уже пропатчин) найти нам halmacpi.dll и др. файлы начинающиеся на hal с окончанием
.dll и кинуть в C:\WINDOWS\system32
2 - Аналогично пункту 5 вставить строчку:
PatchPae3.exe -type hal -o
"C:\WINDOWS\system32\hal64gb.dll"
"C:\WINDOWS\system32\halmacpi.dll"
--- добавление загрузочной записи в boot.ini
1 - У файла boot.ini по умолчанию атрибуты стоят изначально «скрытый»,
«системный», «только» для чтения. Поэтому его не видно и изменить нельзя. Для
того что бы его изменить нужно включить отображение
скрытых системных файлов и папок. Потом кликнуть на самом файле boot.ini правой кнопкой и в свойствах убрать
галочку «только для чтения». После патча
она снова появится и надо будет повторить процеруду если файл надо будет опять
отредактировать.
2 – открыт на диски С блокнотом или др.
текстовым редактором файл boot.ini и добавить
туда почти, в самый низ, а точнее в секцию [operating systems] вот эти строчки:
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="PAE
- ACPI Multiprocessor PC" /fastdetect /pae /noexecute=optin
/kernel=PAE128GB.EXE /hal=hal64gb.dll
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="PAE - ACPI Uniprocessor
PC" /fastdetect /pae /noexecute=optin /kernel=PAE128GB.EXE
/hal=hal64upc.dll
В файле boot.ini уже будут аналогичные строчка и там нужно
сверить что бы загружаемая рабочая система была аналогична добавленным строчкам
в начале строки. А именно вот этот код должен совпадать multi(0)disk(0)rdisk(0)partition(1)\ Если он
не совпадает то его надо изменить аналогично рабочему который уже есть в boot.ini
. Т.е. если там уже есть multi(0)disk(0)rdisk(1)partition(1)\ то аналогично надо поменять и тот код который
вставляется изменив 0 на 1. В общем цифры вначале должны совпадать.
Если делать на виртуалке то она должна поддерживать PAE
Патч в VMware
Сразу отмечу что проведение данных
махинаций немного через опу, тем не менее, у меня только так сработало.
Установка на голую ХР в ВМВ не привела к результату. А режима PAE я не нашел.
Хотя может в VMware Player 6 его и нет. Но
зато это, как не странно, бесплатная программа, поддерживающая в отличии от
виртуалбокса безболезненный запуск системы на любом компе прям с внешнего ХДД.
В то время как при запуске виртуал ОС на другом железе бокс матюкается
вылетает. лягает и единственным выходом дает только перезалить… В общем не в этом суть не обещаю, что … у кого-то
данный метод может сработать, но у меня сработал.
Итак,
1 - распаковываем акрониксом или чем-то
еще машину с виртуалки на реальный комп с оперативной, разумеется, больше
3х гб. Распаковывать надо именно ту виртуальную машину, которую планируется
патчить.
2 - патчим либо по вышеприведённой схеме,
либо через fix128-ver.0.40 . Далее, можно опять завертуть систему тем
же акрониксом в гостевую ОС. Хотя после этого у меня был черный экран и
пришлось поработать парагоном изменив МБР. Увы, нет времени расписывать, как
это делать. Тем более это и не надо, потому что может сработать и более простой
способ.
3 - А именно надо банально взять с
пропатченной ТОЙ ЖЕ системы, но на
физической машине PAE128GB.EXE hal64gb.dll и
hal.dll с папки C:\Windows\System32
и
кинуть в аналогичную папку ТОЙ ЖЕ системы,
но на виртуалке. Ну и конечно же добавить загрузочную
записи в boot.ini
Хотя я скинул все файлы, начинающиеся на
hal и заканчивающиеся .dll, но по сути измененными оказались два вышеописанных.
Если все вышеописанное не сработает, то
можно повторно попробовать повторить патч ядра и хала по вышеописанной схеме.
Если что не понятно, то гуглить и читать по ключевым фразам: