Цель создать ОС (рабочее название Заря ОС) поддерживающий выполнения windows приложений Основная идея из имеющейся Windows XP созать свою ОС путем переработки или замены имеющегося кода Необходимо стремиться к созданию всего необходимого кода, который позволит не зависить от стороних(уже собранных программ)
*Version 10a, last updated 2024/02/03
Виртуальная или реальная машина последней версии Windows 10 с минимальным объемом дискового пространства 120 ГБ и 4 ГБ памяти и ядер процессора
Выделение диска D:\ для всего исходного кода (мин. 60 ГБ)
Отключить контроль учетных записей - необходимо для того, чтобы избежать экранов подтверждения
Скачать исходный код можно по ссылке git clone https://github.com/YurinKonstantin/ZaryaOS.git srv03rtm
. Лучше создайте свою ветку или форк
Важный! Отключение защиты в режиме реального времени от безопасности Windows
Распакуйте исходный код в D:\srv03rtm
Снимите флажок "только для чтения" в папке srv03rtm
Если у вас Windows 10 1809 и более поздние версии, установите driver.pfx из папки "tools" для локального компьютера и текущего пользователя, в противном случае, если ваш хост установлен до Windows Vista, удалите driver.pfx и переименуйте driver_3des.pfx в него.
Запустите командную строку от имени администратора и переключитесь на D:\srv03rtm.
Если вы используете ПК x64, выполните tools\razzle64 free offline
Если 32 разрядная машина то tools\razzle free offline
Запустите tools\prebuild
Выполните сборку build /cZP -M 4
Где (-M 4 для использования всех 4 ядер процессора)
Допускаются ошибки и warning, но для ibraries built ошибок быть не должно
Извлеките отсутствующие двоичные файлы в D:\binaries.x86fre Скачать https://disk.yandex.ru/d/LLfJvh4s58HXUA. При дублекате выберите пропустить. Повторяющееся не переписывать.
Выполните tools\postbuild -full
Выполните tools\oscdimg pro
для создания ISO-файла XP Professional Возможны варианты Home Edition/Server 2003 Standard Edition Вместо pro используйте per|srv
Серийный ключ, расположенный по адресу srv03rtm\base\ntsetup\pidgen\pidgen\spidgen.cpp, и это HB9CF-JTKJF-722HV-VPBRF-9VKVM
Руководство по сборке протестировано под Win10 x64 процесор AMD. Результаты могут отличаться в других операционных системах.
В файле "где что" несколько путей к опрделенным программам. Нужно их править и искать другие.
-Рекомендуется отключить любой AV перед извлечением/сборкой, так как оба эти действия создают много новых файлов (ваш AV, скорее всего, попытается просканировать каждый из них, немного замедляя извлечение/сборку) – это также имеет значение для любых других файлов. инструменты, которые отслеживают файлы, такие как voidtools Everything.
srv03rtm
в корне диска (важно, поскольку предварительно созданные файлы DirectUI будут правильно компоноваться только по этому пути), буква диска, похоже, не имеет значения (просто не Не используйте диск C:\, поскольку он обеспечивает дополнительную безопасность), используйте D:\srv03rtm\
в качестве пути для сопоставления двоичных файлов RTM._x64
в дерево исходного кода, перезаписав его, если потребуется.Если ваша ОС не использует UAC (XP/2003):
%windir%\system32\cmd.exe /k D:\srv03rtm\tools\razzle.cmd free offline
(см. пояснение ниже) и измените Start in
на D:\srv03rtm
razzle64.cmd
вместо razzle.cmd
Если ваша ОС использует UAC (Vista+):
Э:
cd srv03rtm
tools\razzle.cmd free offline
(при использовании 64-битной операционной системы вместо этого используйте tools\razzle64.cmd free offline
)
При первом запуске razzle внутри этой копии исходного кода ему потребуется инициализировать несколько вещей, подождите несколько минут, через некоторое время появится окно Блокнота - обязательно закройте его, чтобы инициализация продолжилась.Важно: После инициализации razzle запустите tools\prebuild.cmd
, чтобы завершить подготовку среды сборки (нужно запустить только один раз после первого запуска razzle в этом дереве).
Важно! В настоящее время сборка работает не очень хорошо при сборке с большим количеством (более 4) потоков. Если ваша машина сборки имеет больше этого числа, рекомендуется ограничить ее максимум четырьмя потоками с помощью переключателя -M 4
, добавленного в команду сборки (например, build /cZP -M 4
или bcz -M 4
)
Выполняет чистую перестройку всех компонентов (рекомендуется для первой сборки!):
build /cZP
(также имеет псевдоним bcz
)Собирает только те компоненты, которые изменились с момента последней чистой сборки:
build /ZP
(этому псевдониму также соответствует bz
)D:\binaries.x86fre
, должен был быть создан во время сборки), 7z должен содержат файлы для всех SKU (использует pidgen.dll из Win2003 Enterprise, поэтому ваши сборки должны принимать ключи продукта Enterprise)binaries.x86{fre/chk}\_pop3_00.htm
, binaries.x86{fre/chk}\ql10wnt.sys
и т. д.tools\postbuild.cmd
(используйте -sku:{sku}
, если вы хотите обработать только конкретный файл (без скобок!), ожидайте ошибок filechk
, если вы проигнорируете это и не сделаете это. используйте Missing.7z/missing.cmd с каждым артикулом)После завершения постбилда, если вы использовали приведенный выше файл win2003_x86-missing-binaries.7z
и правильно следовали руководству, мы надеемся, что он должен пройти успешно без ошибок и не должно быть никаких `binaries.x86fre\build_logs\postbuild. ошибка в файле!
В противном случае загляните в postbuild.err
— большинство сообщений здесь незначительны, но если вы видите ошибки filechk
, связанные с версией, которую вы хотите использовать, вам может потребоваться перезапустить missing.cmd
или извлеките 2k3-missing.7z
еще раз.
Если postbuild.err
содержит сообщения типа (crypto.cmd) ERROR
или (ntsign.cmd) ERROR
, попробуйте повторно импортировать ключевой файл tools\driver.pfx
(дважды щелкните его, нажмите "Далее" до конца). подсказки, пароль пуст) и убедитесь, что ваша системная дата установлена на текущую дату (обновленные сертификаты действительны только с октября 2020 года по октябрь 2021 года).
Если в postbuild.err есть ошибки filechk, связанные с отсутствием файлов hwcomp.dat
, попробуйте скопировать следующее в пакетный скрипт и запустить его в командной строке (после одного использования postbuild):
@echo off
hwdatgen -i:%_NTPOSTBLD%\pro\i386 -o:%_NTPOSTBLD%\.\hwcomp.dat
hwdatgen -i:%_NTPOSTBLD%\per\i386 -o:%_NTPOSTBLD%\perinf\hwcomp.dat
hwdatgen -i:%_NTPOSTBLD%\bla\i386 -o:%_NTPOSTBLD%\blainf\hwcomp.dat
hwdatgen -i:%_NTPOSTBLD%\sbs\i386 -o:%_NTPOSTBLD%\sbsinf\hwcomp.dat
hwdatgen -i:%_NTPOSTBLD%\srv\i386 -o:%_NTPOSTBLD%\srvinf\hwcomp.dat
hwdatgen -i:%_NTPOSTBLD%\ads\i386 -o:%_NTPOSTBLD%\entinf\hwcomp.dat
tools\oscdimg.cmd {sku} [файл-назначения (необязательно)]
, где {sku}
является одним из:
srv
- Windows Server 2003 Standard Editionsbs
- Windows Server 2003 Small Business Editionads
- Windows Server 2003 Enterprise Editiondtc
- Windows Server 2003 Datacenter Editionbla
- Windows Server 2003 Web Editionper
- Windows XP Home Editionpro
- Windows XP Professional{build-drive}\{build-tag}_{sku}.iso
, unless [destination-file]
is provided as a parameter.