- PVSM.RU - https://www.pvsm.ru -

ReactOS стал самодостаточным в год своего 21-летия

Привет! У нас есть внезапные новости!

image

Пьер Швецер, один из основных разработчиков операционной системы ReactOS, сделал в своем твиттере резонаное сообщение [1]. Теперь новые билды операционной системы можно собирать, пользуясь исключительно средствами этой ОС и ее официальной среды сборки RosBE. Сама среда сборки так же собирается из исходников при первом запуске сценария сборки.

Таким образом, ОС ReactOS достигла состояния, называемого Self-Hosted [2]. Символично, что данное событие происходит в тот момент, когда проект, по некоторым расчетам, достигает своего полного совершеннолетия по человеческим меркам (21 год). На скриншоте ниже показан заключительный этап сборки и смонтированный средствами ОС, только что собранный, новый образ Live-дистрибутива ReactOS. Официальная инструкция [3] по сборке обновлена в соотвествии с новым положением дел.

image

В целом, это эпохальное событие стало возможно благодаря совместной целенаправленой работе Томаса Фабера над контролером кеша и Пьера над драйвером файловых систем FastFAT и CDFS непосредственно. О чем будет рассказано гораздо подробнее к в анонсе к грядущей версии 0.4.9. За поддержанием возможности самосборки теперь будут постоянно следить, поэтому следующим этапом будет установка билд-бота для регулярной сборки публичных тестовых образов ReactOS на ReactOS.

Одним из последних, недостающих для самосборки компонентов, стала несовершенная реализация алгоритма qsort в библиотеке msvcrt.dll. Это обнаружилось при очередных попытках скомпилировать ReactOS в ReactOS, когда сборка останаливалась из-за сбоя в подготивтельном этапе компиляции компонета USB-стека библиотеки USBD [4]. Правильную реализацию qsort быстро перенесли из FreeBSD, за что этому проекту выражается отдельная благодарность.

Заключительным штрихом стало устранение Гермесом Белуской древних несовершенств [5] в командной оболочке CMD, связанных с управлением заголовком окна, которые раньше можно было игнорировать или обходить хаком.

Состояние self-hosted достигалось и ранее в 2003 [6] и 2009 [7] годах. Но оба раза утрачивалось, так как не являлось приоритетным. В первом случае — из-за экспоненциального роста функционала и объема кодовой базы, а во втором — из-за значительной модернизации средств среды сборки и формата исходников (переход с rbuld на cmake)

Релиз 0.4.9 станет первым в новейшей истории проекта, который будет полностью поддерживать самосборку. Хотя до выхода 0.4.9 еще около месяца — для предварительного тестирования уже доступен релиз-кандидат [8], впечатляющий своей стабильностью работы по сравнению с предыдущими выпусками ОС.

Автор: Речицкий Александр

Источник [9]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/open-source/282149

Ссылки в тексте:

[1] резонаное сообщение: https://twitter.com/HeisSpiter/status/1002986910258786304

[2] Self-Hosted: https://en.wikipedia.org/wiki/Self-hosting

[3] Официальная инструкция: https://www.reactos.org/wiki/Building_ReactOS

[4] библиотеки USBD: https://doxygen.reactos.org/dir_7d4ff58ba0b2cebbcecb41bbd2237878.html

[5] древних несовершенств: https://github.com/reactos/reactos/commit/a16599906794d2069392fbd57b1f01ae9dcc983c

[6] 2003: https://developers.slashdot.org/story/03/02/02/2031252/reactos-010-released

[7] 2009: https://twitter.com/reactos/status/1411536210

[8] релиз-кандидат: https://sourceforge.net/projects/reactos/files/ReactOS/0.4.9/

[9] Источник: https://habr.com/post/413461/?utm_source=habrahabr&utm_medium=rss&utm_campaign=413461