Здравствуйте, дорогие друзья!
Вот и заканчивается 2023 год. В этой статье я хочу продолжить начатую в 2021 году традицию вспоминать наиболее важные события из жизни ReactOS за год. То, что статьи не появляются на Хабре, не значит что система мертва. Медленно, но верно, в ReactOS реализуются разные фичи и исправляются баги. И в данной статье мы рассмотрим что произошло в жизни системы в 2023 году.
События
CLT2023
ReactOS приняла участие в CLT2023. Вот несколько фотографий со стенда проекта, предоставленных @EmuandCo:
![](https://habrastorage.org/getpro/habr/upload_files/10d/cd9/db2/10dcd9db226c9524ca1593f19074802f.jpg)
![](https://habrastorage.org/getpro/habr/upload_files/5d2/cdd/b28/5d2cddb28818c5686878748fdcdb1dc9.jpg)
![](https://habrastorage.org/getpro/habr/upload_files/65d/c5c/33c/65dc5c33cfd38141a8ce409a0f572541.jpg)
![](https://habrastorage.org/getpro/habr/upload_files/4b2/fb8/d60/4b2fb8d60acbc5d1b39ba3e35ed7e718.jpg)
Функции
"Выполнить" из адресной строки
![](https://habrastorage.org/getpro/habr/upload_files/3ec/ee1/68b/3ecee168b61f13e811450f031297da18.jpg)
В ReactOS добавили функцию запуска приложений из адресной строки подобно пункту выполнить. Теперь Вы можете запустить приложение введя команду в адресной строке, типа calc или winver.
Повышение стабильности работы сети
В основную ветку Дугом Лайонсом было добавлено исправление в драйвер TCP/IP, позволяющее использовать 0xFFFF в качестве корректного номера порта. Это дает исправление BSoD, который ранее возникал после нескольких часов/дней использования сети.
После исправления участник @KCSoftwaresсообщает о более чем 30 днях работы в сети без сбоев!
Азиатский ввод
Наш разработчик Katayama Hirofumi MZ реализует IME (Input Method Editor) - поддержку ввода азиатских языков.
IME у ReactOS настолько совместим с Windows-стандартом, что поддерживает сторонние методы ввода. Участник сообщества @Spz2022 присылал скриншот с демонстрацией работы одного из таких IME - Sogou Wubi Input Method 2.0.
![](https://habrastorage.org/getpro/habr/upload_files/27f/b1a/9da/27fb1a9da35f927cfa8aab4303cde5bd.jpg)
Поддержка новых системных звуков
В мае 2023 года участник сообщества под ником @TAN-Gaming реализовал в ReactOS поддержку новых звуковых уведомлений.
Аппаратное ускорение у DirectX
В конце июня в master-ветвь добавили патчи Олега Дубинского в win32k по DirectX и это значит, что теперь на реальном железе поддерживается аппаратное ускорение графики (с заменой следующих компонентов от XP/2003: ddraw.dll, d3d8.dll, d3d9.dll, dxg.sys).
И вот, участники сообщества тестируют данную наработку (правда, пока в виртуалке).
Панель задач запоминает положение
![](https://habrastorage.org/getpro/habr/upload_files/508/224/025/508224025ef5426c613b055b65061c19.jpg)
Благодаря закрытому пулл-реквесту и последующему коммиту в начале июля 2023 г. от участника сообщества @cbialorucki ReactOS запоминает положение панели задач и ее закрепление даже после перезагрузки.
Дописывание GUI-интерфейса первого этапа установки системы
Со 2 сентября 2023 года наш разработчик Hermes Belusca был нанят на 5 месяцев на завершение реализации GUI-интерфейса первого этапа установки. По завершении данного контракта должна получиться возможность установки системы из GUI-интерфейса в т.ч. с LiveCD.
![](https://habrastorage.org/getpro/habr/upload_files/cdb/8d5/d98/cdb8d5d98b3e8e8bf25c47d0e1678030.jpg)
Доступен опытный образ с наработками (от 19 декабря 2023 г.).
Перевод первого отчета о работе разработчика доступен в нашем vk-сообществе.
Windows 7-подобная панель задач
Благодаря участнику сообщества @cbialorucki в ReactOS были реализованы большие значки на панели задач, что делает ее похожей на панель Windows 7.
Параметры переключаются в настройках панели задач.
Группировка значков пока не реализована.
![](https://habrastorage.org/getpro/habr/upload_files/2ea/f2a/9f8/2eaf2a9f8ddfe5334b628105d9e6cba4.png)
![](https://habrastorage.org/getpro/habr/upload_files/60f/78f/1c3/60f78f1c3d5111e1c7f5e5cef3c8bfb6.png)
Новые функции внешнего вида папок
![](https://habrastorage.org/getpro/habr/upload_files/1c5/3b1/536/1c53b1536deeefeb421327712da926b7.jpg)
В проводнике ReactOS добавили функции настройки отображения полного пути в заголовке и адресной строке. Теперь можно либо скрыть полный путь в адресной строке (отображая только текущий каталог) либо напротив, показать полный путь в заголовке вместо текущего каталога.
Загрузка с NTFS
В конце августа в ReactOS был реализован загрузочный сектор NTFS, который загружает загрузчик системы - FreeLdr - из раздела NTFS. Но стабильного драйвера NTFS в ReactOS пока нет и без специальных танцев с установкой драйвера NTFS от Microsoft, копированием файлов и ручной установки загрузчика протестировать эту функцию пока не получится.
Аварийное завершение работы
![](https://habrastorage.org/getpro/habr/upload_files/5dc/ca9/d78/5dcca9d782d70a37de04f69b27006f34.jpg)
В Windows Server 2003 есть функция аварийного завершения работы/выхода из системы. Она запускается из Диалогового окна безопасности Ctrl-Alt-Del, при удержании клавиши CTRL и выборе параметра «Завершение работы»/«Завершение сеанса». При выборе аварийного завершения работы/сеанса компьютер перезагружается/завершает сеанс немедленно, без каких-либо попыток сохранить пользовательские данные.
Такая функция была реализована в компоненте Winlogon в ReactOS в конце августа 2023 г.
Исправление и проверка реестра
19 ноября 2023 года в основную ветку были объединены наработки нашего разработчика Джорджа Бисока, по исправлению и проверке реестра. Это важная веха на пути к повышению стабильности ReactOS и движения в сторону беты.
Принудительное выключение ReactOS (после зависания, BSoD или перезагрузки виртуальной машины) при следующей перезагрузке, могло привести к BSoD или непроходимому экрану входа в систему (Ctrl-Alt-Del). Данная проблема возникала из-за повреждения реестра, поскольку проверка и исправление реестра не были реализованы.
Теперь большинство этих случаев станут историей!
Драйвера сетевых карт для виртуальных машин от MS
В октябре 2023 г. в ReactOS был добавлен драйвер для сетевых карт серии 21x40 написанный @disean.
В аппаратном исполнении такую карту уже довольно сложно найти, но знаменита она тем, что используется в качестве эмулируемого сетевого адаптера в виртуальных машинах Connectix / Microsoft VirtualPC / HyperV.
Теперь драйвер не нужно искать и скачивать, он установится сам, полностью автоматически!
Вот скриншот, демонстрирующий это:
![](https://habrastorage.org/getpro/habr/upload_files/751/58d/2a0/75158d2a04110116504d079d956c4c44.jpg)
ARM
Хотя работы над ARM в ReactOS идут не так уж активно, есть некоторые подвижки.
Загрузчик ReactOS ARM на реальном оборудовании
![](https://habrastorage.org/getpro/habr/upload_files/067/06d/d5f/06706dd5f0c87e1dc9ba7b4d24dbda85.jpg)
Участникам сообщества получилось запустить FreeLoader (загрузчик ReactOS) на Lumia 950XL.
Приложения ReactOS портированные на ARM64 и запущенные на планшете с Windows 10
Несмотря на то, что на ARM еще не портированы многие системные компоненты и драйвера, пользовательские приложения компилируются для ARM и работают в Windows для данной архитектуры.
![](https://habrastorage.org/getpro/habr/upload_files/539/efd/519/539efd519e27c343417007796131df8d.jpg)
Серверы
Web и FTP сервера
Участник сообщества Артём Миляев запустил в ReactOS веб- и FTP- сервера.
Использовались программы:
Xitami 2.5c2 для запуска веб и FTP сервера
Wine Internet Explorer для просмотра страниц
FTPCommander 5.85 для просмотра FTP.
Minecraft Spigot Server
Участник сообщества @React0S запустил в системе Minecraft Spigot Server 1.16.5 на ReactOS x64 с 8 ГБ памяти, выделенной для JVM!
Это довольно быстро для клиента, но на сервере обновление интерфейса происходит медленно.
![](https://habrastorage.org/getpro/habr/upload_files/a86/1f1/1ee/a861f11eebcc2c661ccc4ba712b24184.jpg)
16 виртуальных машин с ReactOS с Minecraft-серверами
Участник сообщества @ThunderClapLP запустил в Proxmox 16 виртуальных машин с ReactOS, на каждой из которых был запущен сервер Minecraft.
Поддержка архитектуры x64
Участники сообщества продолжают тестировать сборки ReactOS для x64 архитектуры. И несмотря на то, что WOW64 в системе пока нет, список приложений, которые уже можно проверить в работе, весьма велик.
NewMoon
![](https://habrastorage.org/getpro/habr/upload_files/063/371/6ab/0633716ab29de52a4daca8a495d81733.jpg)
SumatraPDF
![](https://habrastorage.org/getpro/habr/upload_files/a73/670/9c3/a736709c3a3aef3a973b16676ef3ab34.jpg)
PeaZip
![](https://habrastorage.org/getpro/habr/upload_files/7c8/561/5f3/7c85615f3658877316af5ef74298cba3.jpg)
Putty
![](https://habrastorage.org/getpro/habr/upload_files/26f/d80/b31/26fd80b31d7ec2654792864b612ce0d0.jpg)
Notepad++
![](https://habrastorage.org/getpro/habr/upload_files/f83/3d4/30a/f833d430a23a87f3b320ff48992e5639.jpg)
Emule
![](https://habrastorage.org/getpro/habr/upload_files/00d/406/bea/00d406beaa341425c8b6ee628d2fb88a.jpg)
Firefox
![](https://habrastorage.org/getpro/habr/upload_files/7fd/c4e/bdc/7fdc4ebdc7e60f5321da24f606626f7a.jpg)
Gimp 2.8
![](https://habrastorage.org/getpro/habr/upload_files/47a/9a8/a38/47a9a8a3857652139ea7737cb5f0a5db.jpg)
ClassicCube 1.3.x
Тесты сообщества
Longhorn Aero в ReactOS
![](https://habrastorage.org/getpro/habr/upload_files/c3f/3cb/85a/c3f3cb85a62f884ac36a14cf39330c26.jpg)
Участник ReactOS-сообщества @The_DarkFireпровел интересный тест.
Благодаря замене win32ss и некоторых других файлов на файлы из Windows Longhorn 5048, а также благодаря хорошему пониманию устройства работы WDDM в аспекте пользовательского режима @The_DarkFire запустил в ReactOS Aero.
Эффекты работают на встроенном программном рендерере.
Были заменены следующие компоненты:
csrsrv.dll
d3d9
dxg
win32k
user32
winsrv
gdi32
uDWM
DWMAPI
MILCORE
Демонстрация возможностей режима совместимости
Игру CrispyDoom запустили в ReactOS x64 в режиме совместимости NT6.
Так же предоставлен скриншот с результатом запуска этой же версии CrispyDoom на Windows XP x64.
![](https://habrastorage.org/getpro/habr/upload_files/152/bab/5ab/152bab5abf40ffec7b9f9bcef84c4315.jpg)
Тестирование на реальном железе
В этом году было много тестов на реальном железе, но я вам покажу наиболее экзотические.
Xbox
SteamDeck
Результат теста от @The_DarkFire:
ReactOS на Steam deck.
![](https://habrastorage.org/getpro/habr/upload_files/eff/e7f/f2b/effe7ff2b8bd5c9df66d3716d370ff75.jpg)
Как пишет автор теста:
Благодаря прогрессу в разработке 64-битного порта и некоторым работам по UEFI, мы теперь можем загружать ReactOS на разном современном странном оборудовании.
Вот Steam deck под управлением ReactOS!
Очень минимален и, к сожалению, не имеет эмуляции PS/2. Но это первый звук нашего будущего!
Старенький ПК
![](https://habrastorage.org/getpro/habr/upload_files/d3a/cd9/ff0/d3acd9ff02324b058439440dfea02935.jpg)
ReactOS на ПК с процессором Intel Pentium II 233 MMX и 64 МБ ОЗУ. Загружается за 5 минут.
Тесты NTVDM
Участник сообщества @simonelombardo провел тесты с NTVDM в ReactOS.
![](https://habrastorage.org/getpro/habr/upload_files/55d/ebf/666/55debf66642a7d8dd30ef5539bc37ea7.jpg)
![](https://habrastorage.org/getpro/habr/upload_files/6f3/2d0/bee/6f32d0beea6b3be951331608500a0b4f.jpg)
![](https://habrastorage.org/getpro/habr/upload_files/fb5/ccd/2b6/fb5ccd2b642b49446b21cdcc651474b7.jpg)
![](https://habrastorage.org/getpro/habr/upload_files/f72/d81/074/f72d81074861a614a790fefbf16feb3d.jpg)
![](https://habrastorage.org/getpro/habr/upload_files/77c/dcb/274/77cdcb274fcee7ce0e13e4c43eaed5b4.jpg)
А участник @SigmaTel71 протестировал DynaBlaster (BomberMan):
![](https://habrastorage.org/getpro/habr/upload_files/147/b40/76c/147b4076ca0efabe918a3064c9565636.jpg)
ПО на x86
Chromium
![](https://habrastorage.org/getpro/habr/upload_files/ef3/48c/59f/ef348c59fef8f25510d492a86f0f6c9f.jpg)
После масштабной работы с подсистемой безопасности в ядре с 2021 года (Chromium очень много работает с токенами безопасности), благодаря нашему разработчику Джорджу Бисоку, в ReactOS работает Chromium 49 (скомпилированный для Windows XP/Server 2003)!
Но, требуется параметр «--no-sandbox», и залипает мышь. И то, и другое — наши ошибки недоработки. Тест провел: reactosfanboy
Сборки Chromium под XP - https://github.com/Alex313031/chromium-xp/releases
Adobe Photoshop 7
![](https://habrastorage.org/getpro/habr/upload_files/f85/e18/574/f85e18574f00b88f5ab4279170d5ad9f.jpg)
WinRAR 5.6
![](https://habrastorage.org/getpro/habr/upload_files/92f/498/eff/92f498eff3bf547ecbd807eb88292300.jpg)
Bryce 4
![](https://habrastorage.org/getpro/habr/upload_files/30e/1b3/885/30e1b3885b7554977728e89cc570061f.jpg)
![](https://habrastorage.org/getpro/habr/upload_files/291/ad7/170/291ad71701e05da85d504e0795454ec0.jpg)
![](https://habrastorage.org/getpro/habr/upload_files/f01/82d/1e5/f0182d1e52fe198db5c975afecb9aba3.jpg)
![](https://habrastorage.org/getpro/habr/upload_files/294/6b4/d28/2946b4d283fe6ff0a17609efe3af2110.jpg)
Bryce - программа для 3D моделирования. Последняя версия, 7, вышла в 2010 году. Протестированная версия, 4, вышла в 1999.
LMMS 1.2
![](https://habrastorage.org/getpro/habr/upload_files/926/cbc/04e/926cbc04e9e7ab739414f876aa563a10.jpg)
SoftMaker FreeOffice
![](https://habrastorage.org/getpro/habr/upload_files/0bf/4ce/0fd/0bf4ce0fd0a47969486e35c47501706b.jpg)
Timeline Maker Pro
![](https://habrastorage.org/getpro/habr/upload_files/434/808/ded/434808dedf5c63556405c71d0c7f7c36.jpg)
Timeline Maker Pro - инструмент визуального анализа с временным критерием и инструмент презентации. Программа создаёт диаграммы из заданных тем для построения разнообразных графиков для печати, распространения и презентации.
Игры на x86
Quake 2, 3 и Nerf Arena
Serious Sam Alpha и Half-Life
SubwaySurf
Icy Tower
![](https://habrastorage.org/getpro/habr/upload_files/c4d/8a4/803/c4d8a4803858121857fc9d6642568e00.jpg)
Гарри Поттер и Философский камень
Avatar The Last Airbender - The Path of Zuko
![](https://habrastorage.org/getpro/habr/upload_files/418/f02/650/418f02650c7d6d31626e00507137f6f2.jpg)
Samurai II - Vengeance
![](https://habrastorage.org/getpro/habr/upload_files/2a5/e6b/5c0/2a5e6b5c0aa75fd90ac8dec4b525c636.jpg)
UFO: Alien Invasion
![](https://habrastorage.org/getpro/habr/upload_files/9b7/ee0/b6d/9b7ee0b6d332176ace1e8cddae01c5fb.jpg)
The Simpsons
Pro Evolution Soccer 2013
![](https://habrastorage.org/getpro/habr/upload_files/9f6/dba/09a/9f6dba09a082ec65d699148e403656c9.jpg)
Rayman Origins Demo
MarbleBlast Ultra
WorldOfWarcraft
MageKnight Apocalypse
FNAF
![](https://habrastorage.org/getpro/habr/upload_files/169/7e1/a2c/1697e1a2cafa58151fe4b31169222270.jpg)
![](https://habrastorage.org/getpro/habr/upload_files/73d/c27/fe9/73dc27fe9aff76f71b31f2ca18d503f9.jpg)
![](https://habrastorage.org/getpro/habr/upload_files/248/c10/cc2/248c10cc238e8736b4fa1d82ba167f25.jpg)
ExiledKingdoms
Заключение
И вот, собственно, на этом я и хочу завершить "годовой отчет" ReactOS.
Желаю вам всем успехов на работе и дома!
До новых встреч и счастливого нового года!
Ссылки