Выпуск ReactOS 0.4.16

6 мин
Выпуск ReactOS 0.4.16

Дорогие авчане и все участники русского сообщества, кто следит за проектом ReactOS!

Представляю вам свой перевод вчерашней новости с официального сайта о выпуске новой версии.


Здравствуйте, дорогие друзья!

29 августа, после полутора лет разработки, инициатива ReactOS показал свежий выпуск системы и в данной статье мы рассмотрим его новшества.

Из основных нововведений можно выделить следующие:

  • свежий графический установщик;

  • универсальный образ загрузочного CD и LiveCD;

  • улучшения в работе с видео, аудио, сетью и хранилищем;

  • новый тип установки;

  • а также синхронизация кода сторонних разработчиков.

Графический установщик и загрузочный CD «все в одном».

Исторически так сложилось, что ReactOS предлагал для загрузки два образа: LiveCD, позволяющий протестировать ReactOS в режиме только для чтения, и BootCD, позволяющий инсталлировать ReactOS на жесткий диск с помощью текстового установщика. За счёт усилиям разработчика Гермеса Белуски (Hermès Bélusca‑Maïto), ReactOS 0.4.16 получил новый графический установщик и комбинированный загрузочный CD и LiveCD. Теперь вы можете протестировать и установить ReactOS, используя один и тот же образ.

Видео

В ходе разработки версии 0.4.15 основной разработчик Эрве Пуссино (Hervé Poussineau, hpoussin) заложил основу для поддержки нескольких мониторов и переключения на VGA‑драйвер, если драйверы дисплея не загружаются. Эта основа позволила разработчикам продолжить работу над улучшением совместимости видеодрайверов в версии 0.4.16.

На протяжении многих лет ReactOS страдает от различных проблем, связанных с драйверами видеокарт от всех основных производителей. В частности, графические процессоры Nvidia страдали от проблемы замедления работы, которую исследовали многие талантливые разработчики и специалисты. В конце концов, Джастин Миллер (Justin Miller, The_DarkFire_) понял, что ядро ​​испытывает нехватку записей в таблице страниц системы (PTE) при загрузке драйверов сторонних разработчиков.

Это ограничение наиболее очевидно в случае с графическими драйверами, которые выделяют больше памяти, чем большинство других драйверов. Джастин изменил схему размещения памяти, используемую нашим менеджером памяти, чтобы увеличить количество системных таблиц записи (PTE). Это исправило трудно поддающуюся отладке ошибку, приводящую к замедлению работы видеокарт Nvidia.

При использовании видеодрайверов AMD окно OpenGL оставалось пустым. Эта проблема была решена путем переписывания ExtEscape, вдохновлённый патчем от покойного основного разработчика Джеймса Табора (James Tabor, jimtabor), который скончался в 2023 году.

Эти улучшения повысили стабильность, улучшили управление ресурсами новых устройств и исправили множество ошибок, возникающих в нашем драйвереwin32k.sys. Мы благодарим наших участников сообщества и разработчиков за уделенное время, поскольку для внесения этих исправлений потребовалось невероятное количество исследований.

Аудио

До версии 0.4.16 поддержка звука высокой четкости (HD‑аудио) в ReactOS была неполной. Драйверы HD‑аудио зависят от драйвера шины (hdaudbus.sys), в том числе драйверы от AMD, IDT, Nvidia, Realtek и SigmaTel. Наша первоначальная реализация была написана давным‑давно Йоханнесом Андервальдом (Johannes Anderwald, janderwald). Эта реализация так и не была завершена и часто вызывала ошибки при попытке установить драйверы контроллера HD Audio. Основной разработчик Олег Дубинский импортировал sklhdaudbus, новый драйвер для шины HD‑аудио, взамен нашей старой реализации.

Контроллеры HD‑аудио, совместимые с Windows XP и Windows Server 2003, теперь должны функционировать в ReactOS 0.4.16. Вот видео, демонстрирующее работу аудиоконтроллера Realtek HD на ReactOS 0.4.16:

Новый драйвер шины HD Audio зависит от Kernel Mode Driver Framework (KMDF). Компания Microsoft открыла исходный исходник KMDF в рамках репозитория Windows‑Driver‑Frameworks. Джастин импортировал KMDF для нового драйвера шины HD Audio, и теперь мы можем применять KMDF для импорта или разработки других драйверов.

Олег также исправил ползунки громкости и баланса в свойствах звука (mmsys.cpl) и микшер громкости звука (sndvol32.exe). Теперь уровни громкости и баланса сохраняются и восстанавливаются при перезагрузке при использовании аудиокодека HD. Кроме того, Олег обновил исходник перечисления аудиоустройств для поддержки большего количества звуковых карт. Так же, Олег улучшил бинарную совместимость со стеком аудио Windows за счёт некоторым исправлениям, которые он внес в наш стек Plug and Play (PnP) и SetupAPI.

Память

Начиная с 2009 года, ReactOS использует драйвер хранилища UniATA для реализации поддержки SATA, AHCI и разделов размером более 8 ГБ. В свое время, это очень помогло ReactOS, но сегодня UniATA является причиной медленной загрузки и сбоев при загрузке на многих устройствах, что приводит к печально известной ошибке INACCESSIBLE_BOOT_DEVICE( 0x7B).

В ReactOS 0.4.16 представлен свежий драйвер ATA, разработанный участником проекта Дмитрием Борисовым (disean). Этот новый драйвер ATA позволяет ReactOS загружаться в гораздо большем количестве сред, в том числе внутри Hyper‑V первого поколения.

В 2021 году мы импортировали и активировали драйвер Microsoft FastFAT с открытым исходным кодом. К сожалению, это нарушило нашу функция восстанавливать разделы FAT с помощью chkdsk. Основной разработчик Дуг Лайонс (Doug Lyons, Doug‑Lyons) пофиксил наши процедуры проверки файловой системы FAT с помощью chkdsk, чтобы они работали с драйвером Microsoft FastFAT.

Главный разработчик Марк Янсен (Mark Jansen, learn‑more) внедрил утилиту для очистки диска в ReactOS 0.4.16. Утилита очистки диска совместима с расширениями для утилиты очистки диска Windows, что позволяет сторонним программам очищать не только операционную систему, но и использование дискового пространства.

Сеть

В ходе разработки ReactOS 0.4.15 Дмитрий показал новый драйвер сетевого адаптера DC21×4 для улучшения совместимости с оборудованием. Этот драйвер используется на устройствах с сетевыми адаптерами на базе DECchip 21×4, а также в виртуальных машинах у Microsoft Virtual PC 2007 и Hyper‑V первого поколения. Теперь ReactOS 0.4.16 может загружаться и получать доступ к интернету на обоих эмуляторах.

В ReactOS 0.4.16 также добавлена ​​поддержка асинхронного соединения. Это повышает эффективность сети, позволяя приложениям выполнять сетевые операции без задержек. Это равным образом улучшает совместимость приложений, поскольку многие программы предполагают, что эти асинхронные программный интерфейс‑интерфейсы для подключения всегда доступны.

ReactOS Server Core

ReactOS поддерживает два типа установки: рабочая станция и хост. В установке для рабочих станций по умолчанию включены более сложные графические параметры по сравнению с установкой для серверов. В дополнение к этого, в настоящее время папки пользователей в параметре для рабочих станций находятся в папке «Мои документация», хотя в Windows Vista и более новых версиях эти папки были перемещены из папки «Документы» как в параметрах для серверов, так и для рабочих станций.

Заинтересовавшись более широким использованием ReactOS в серверных и встроенных средах, разработчик Карл Бялоруцки (Carl Bialorucki, cbialorucki) внедрил тип установки Server Core. Этот тип установки отключает графическую оболочку проводника, но в остальном загружает полную подсистему Win32. ReactOS Server Core работает аналогично Windows Server Core, который был представлен в Windows Server 2008.

Синхронизация кода со сторонними проектами

В своей кодовой базе ReactOS использует некоторое количество других проектов с открытым исходным кодом. Один из крупнейших таких проектов — это Wine, переработанная версия нескольких программный интерфейс Windows для Unix‑подобных операционных систем. ReactOS использует форк Wine, который взаимодействует напрямую с ядром, подобным Windows, вместо того, чтобы преобразовывать вызовы в ядро, подобное Unix.

В течение многих лет ReactOS был ограничен версиями Wine 2.x и 3.x из‑за проблем с совместимостью, связанных с использованием api, более новых, чем те, что были доступны в Windows Server 2003. Ближе к концу цикла разработки версии 0.4.15 мы отказались от строгого соблюдения совместимости с Windows Server 2003, что позволило нам постепенно обновить нашу версию Wine до Wine 10.0. Работа над этим обновлением еще не завершена, но значительная часть этой работы уже включена в версию 0.4.16. Мы ожидаем, что за счёт этим усилиям по обновлению до Wine 10.0 обновление до этой версии станет значительно проще.

В настоящее время образ ReactOS по‑прежнему скомпилирован только с экспортом для Windows Server 2003, поскольку существует несколько программ, которые ожидают наличия всех экспортируемых компонентов Windows Vista и более новых версий, даже если доступны лишь некоторые из них. Если вы хотите поэкспериментировать с поддержкой приложений в Windows Vista и более новых версиях, соберите ReactOS, используя при сборке флаг-DDLL_EXPORT_VERSION.

В начальный раз в образы релизов ReactOS будет включен WineVDM, что повышает совместимость с 16-битными приложениями Windows. WineVDM — это инициатива пользователя otya128, доступный здесь.

Заключительные мысли

Миссия ReactOS — «запускать ваши любимые приложения и драйверы Windows в среде с открытым исходным кодом, которой вы можете доверять». С каждым релизом мы приближаемся к достижению этой цели. Мы с нетерпением ждём возможности поделиться с вами дальнейшими новостями и достижениями.

Мы выражаем глубочайшую благодарность нашему сообществу, спонсорам и жертвователям. Без помощи участников нашего сообщества мы не смогли бы добиться такого прогресса в разработке. Без поддержки наших жертвователей мы не смогли бы финансировать инфраструктуру для тестирования и размещения программного обеспечения, а также контракты на разработку, необходимые для ускорения прогресса. А без нашего сообщества никто бы и не узнал о нашем существовании. Спасибо за то, что сделали ReactOS возможным!

Если вы заинтересованы в присоединении к нашему сообществу, участии в проекте ReactOS или пожертвованиях, посетите нашу главную страницу, где вы найдете страницу для пожертвований, ссылки на социальные сети и наш GitHub.

Искренне,

Команда ReactOS

Скачать ReactOS 0.4.16

Статистика

Решено задач в Jira: 381

Коммитов: 2808

Самая старая решенная проблема в Jira: CORE-3804 от 3 февраля 2009 г.

Ветка releases/0.4.16 была создана путем форка из главный ветки 28 апреля 2026 года после коммита bac97c5.

Читают сейчас

39 минут назад

Операционная платформа «Альт Образование» бесплатна для школ — акция от «Базальт СПО»

Операционная платформа «Альт Образование» бесплатна для школ — акция от «Базальт СПО» Организация «Базальт СПО» запускает специальное предложение для школ: операционная система «Альт Образование» 11 п

Google добавила агентный аналитика видео в Gemini 3.7 Flash, 3.6 Flash и 3.5 Flash-Lite

48 минут назад

Google добавила агентный аналитика видео в Gemini 3.7 Flash, 3.6 Flash и 3.5 Flash-Lite

Google запустила агентный анализ видео для Gemini 3.7 Flash, 3.6 Flash и 3.5 Flash-Lite. Теперь модель анализирует видео не как последовательность кадров с фиксированной частотой, а сама решает, какие

Апдейт платформы «Октопус» от ГК «Юзтех»: историческая анализ и расширенная сопровождение инфраструктур

2 часа назад

Апдейт платформы «Октопус» от ГК «Юзтех»: историческая анализ и расширенная сопровождение инфраструктур

В новых версиях «Октопус» мы сфокусировались на трёх направлениях: расширении возможностей управления ИТ-инфраструктурой, повышении производительности и развитии интеграций. Система получила новые сце

Frank Media рассказал о сложностях, с которыми столкнулись пользователи при попытке воспользоваться цифровым рублём

2 часа назад

Frank Media рассказал о сложностях, с которыми столкнулись пользователи при попытке воспользоваться цифровым рублём

С 1 сентября должно было начаться массовое добавление цифрового рубля — третьей формы денег, которую Банк России обсуждает уже около шести лет. Тем не менее, судя по первым дням запуска, доступ к ново

2 часа назад

Digital Q.Sensor BI от «Диасофт» модернизировал ИИ-агента: визуальные правки дашбордов без доступа к данным

«Диасофт» представил обновленные возможности ИИ-агента платформы Digital Q.Sensor BI: теперь он может вносить правки в готовый дашборд, ориентируясь в том числе на его визуальное отображение. ИИ-агент