ROS Port AMD64

Материал из Русский WINE
Перейти к: навигация, поиск

Данная страница описывает текущее состояние портирования ReactOS на AMD64. AMD64 относится к спецификациям AMD для 64-битного расширения набора x86-инструкций. Так же известна как x86-64 (или x86_64 и x64).

В r34699 Timo Kreuzer создал ветку ros-amd64-bringup для работы над данным портом.

Состояние

Ntoskrnl:

MM:

Freeldr:

HAL:

  • Все собирается
  • Bootcd создается
  • setupldr загружается, переключает процессор в long mode, инициализирует оборудование/память/подкачку и переходит к ntoskrnl
  • Базовая инициализация Mm выполняется, но затем, система падает
  • Non paged pool allocations работает
  • Отладка с помощью WinDbg (break points, single stepping и пр.) работает
  • При включении прерываний всё ломается

Статус реализации (приблизительно)

реализация комментарий
freeldr 95% ожидаются только исправления
hal 5% на первичной стадии разработки, не хватает поддержки прерываний
ntoskrnl/ke 50% базовая функциональность реализована
ntoskrnl/mm 10% немного функций реализовано, большинство их отсутствует
rtl 60% exception handling is missing and unwinding is incomplete
crt 60% missing stuff here and there
PSEH 0% 100% in MSVC Showstopper for AMD64 branch. Unimplemented: It waits for SEH support in mingw-w64 version of GCC compiler

See also Building_MINGW-w64, Techwiki:SEH64

Not a problem anymore with MSVC compiler http://www.dreimer.de/?p=1212

Сборка порта amd64

Во-первых, установите Amd64 addon for RosBE (взято отсюда), и запустите 64-разрядную сессию RosBE, подправив ярлык:

Ярлык для i386 выглядит так:

C:\Windows\System32\cmd.exe /t:0A /k "e:\RosBE\RosBE.cmd"

А для AMD64 его необходимо изменить:

C:\Windows\System32\cmd.exe /t:0A /k "e:\RosBE\RosBE.cmd" amd64

(И для ARM:

C:\Windows\System32\cmd.exe /t:0A /k "e:\RosBE\RosBE.cmd" arm 

)

Здесь "e:\RosBE" - путь к установленной RosBE.

Запустите исправленный ярлык, и затем, собирайте ReactOS как обычно (ninja bootcd и пр.). Вы можете собрать amd64 и arm в том же транке где у вы собираете x86. При сборке будут созданы новые каталоги, а у ISO-образа будет имя другое имя: ReactOS-amd64.iso.

(или ReactOS-arm.iso для ARM).

Ссылки

ReactOS
Search.png
Доклады
О ReactOS • ARWINSS • ЧеЗа
Информация Новости Выпуски новостей • Переводы блогов • Новости проекта • Видео • ReactOS на Хабре • USB от Вадима Галянта
Разработка Руководство по программированию • Отсутствующая функциональность • Ветви разработки • Компоненты системы • ReactOS и Wine • План работ • Roadmap ядра by Vgal • Разработчики • Совместимость с dll Windows • Наиболее значимые изменения за год • Используемые проекты • Google Summer of Code • Известные проблемы
Порты AMD64 • ARM • Xbox • PowerPC
Компоненты Файловые системы • Режим совместимости • Отчеты об ошибках • Печать • USB • Ядро
Загрузчик Восстановление MBR • Загрузка из GRUB • Параметры загрузки
Прочее ARWINSS • Приложения в ReactOS • Оформление ReactOS • Координаторы • "Пасхальные яйца" • Монетизация
Другое Типы ядер • FreeWin95
Помощь
RAM-диск ReactOS по PXE • с жесткого диска
Разработка Стиль написания кода • Стандарты RC-файлов • Работа с документацией • Венгерская нотация • GNU Indent • [ Subversion : ветви • слияние • использование TortoiseSVN ] • Основы перевода • Отправка патчей
Репорты Отладка в VirtualBox • Отладка на экран • Добавление программы в менеджер приложений • Отправка отчетов
Отладка Com0com • GDB • Kdbg • Rossym.gdb • Roswin.gdb • WinDBG • Руководство по WinDBG • Включение трассировки ядра • Коды DPRINT • Удалённый отладчик ReactOS
Сборка CMake • RBuild • Файлы RBuild • Автоматическое копирование файлов • Сборка MINGW-w64 • Сборка модулей • Среда сборки
Тестирование VirtualBox • VMware • QEMU • Hyper-V • Необходимый объём диска • Перенос файлов на виртуальный диск • Установка ReactOS • Установка драйверов
Сеть Общие папки • Samba • NFS
Игры Установка DirectPlay
Обновление ReactOS • Загрузочная флешка • Чем можно помочь проекту • Создание нового пользователя • Звук и сеть в VirtualBox • Съемка и публикация видео • IRC-канал • Сторонние компоненты • FAQ • ReactOS как рабочая станция • ReactOS и UEFI
Обзоры Оболочка • NTVDM • WOW • Community Edition • История сайта • ReactOS Server • Криптография • ПО времен XP