После двух лет разработки и спустя неделю после того как проекту исполнилось 25 лет опубликован шестой бета-выпуск операционной системы Haiku R1. Изначально проект был создан как реакция на закрытие ОС BeOS и развивался под именем OpenBeOS, но был переименован в 2004 году из-за претензий, связанных с использованием в названии торговой марки BeOS. Для оценки работы нового выпуска подготовлено несколько загрузочных Live-образов (x86_64, x86 1.4 ГБ). Исходные тексты большей части ОС Haiku распространяются под свободной лицензией MIT, исключение составляют некоторые библиотеки, медиа-кодеки и компоненты, заимствованные из других проектов. ОС Haiku ориентирована на персональные компьютеры, использует собственное ядро, построенное на основе модульной архитектуры, оптимизированное для высокой отзывчивости на действия пользователя и эффективного выполнения многопоточных приложений. Для разработчиков представлен объектно-ориентированный API. Система напрямую базируется на технологиях BeOS 5 и нацелена на бинарную совместимость с приложениями для данной ОС. Минимальное требование к оборудованию: CPU Pentium и 384 МБ ОЗУ (рекомендовано Pentium4 и 512 МБ ОЗУ, а при выполнении сборки b - 2 ГБ ОЗУ). В качестве файловой системы используется OpenBFS, поддерживающая расширенные атрибуты файлов, журналирование, 64-разрядные указатели, поддержку хранения мета-тэгов (для каждого файла можно сохранить атрибуты в форме ключ=значение, что делает ФС похожей на БД) и специальных индексов для ускорения выборки по ним. Для организации структуры директорий используются "B+ tree" деревья. Из кода BeOS в состав Haiku включён файловый менеджер Tracker и панель Deskbar, исходные тексты которых были открыты после ухода BeOS со сцены. Основные новшества:
Источник: https://www.opennet.ru/opennews/art.shtml?num=66149
- Добавлена поддержка актуальных выпусков Firefox и основанных на технологиях Mozilla проектов, таких как LibreWolf, Waterfox, Floorp и Icedove (Thunderbird), которые теперь можно установить через репозиторий HaikuDepot.

Портирован гипервизор NVMM (NetBSD Virtual Machine Monitor), при помощи которого в QEMU теперь можно запускать виртуальные машины, используя механизмы аппаратной виртуализации Intel VT-x и AMD-V.

Проектом HaikuPorts обеспечена поддержка портов различных программ, включая многие приложения KDE и GNOME. В репозиторий добавлен порт компилятора и runtime для языка программирования Go.

Внесены многочисленные оптимизации производительности, которые в совокупности привели к сокращению времени сборки HaikuWebKit почти в два раза (с 4h53m до 2h33m). В 5-10 раз ускорена обработка MIME-типов. Ускорены реализации функций хэширования. В ядре улучшена работа с блокировками в VFS и системе управления памятью. Повышена производительность неименованных каналов. Повышена эффективность кэширования элементов каталогов и inode, что привело к значительному ускорению операций при работе с большим числом файлов. Проведён рефакторинг управления памятью. Улучшена работа в условиях нехватки памяти. На 20% снижено потребление памяти структурами в packagefs. Повышена эффективность работы с атрибутами памяти и mprotect-областями. В libc добавлена новая реализация функции malloc, основанная на коде из OpenBSD. Улучшена реализация mmap. Внесённые оптимизации позволили загрузить Haiku в графическом режиме на 32-разрядной системе, имеющей всего 128 МБ ОЗУ. В файловом менеджере Tracker при нажатии клавиши Shift при открытом меню реализовано изменение действия некоторых элементов меню (например, вместо помещения в корзину показывается кнопка для удаления). В интерфейсе поиска файлов добавлена возможность ограничение поиска определёнными директориями.

В SoftwareUpdater реализовано автоматическое удаление старых состояний пакетов, спустя определённое время после их удаления. В утилите pkgman реализован вывод рекомендации по запуску команды "pkgman cleanup" при обнаружении большого числа старых состояний пакетов. Во встроенную утилиту для создания скриншотов, вызываемую клавишей PrintScreen, добавлена поддержка выделения сохраняемой области на экране. В утилите Team monitor, вызываемой нажатием Ctrl+Alt+Del, обеспечена группировка не-GUI приложений, запущенных программой с графическим интерфейсом.

В менеджер разделов DriveSetup добавлено меню "Disk image" для работы с дисковыми образами (монтирование образов, копирование содержимого дисковых разделов в образы и наоборот). В дисплейном сервере и оконном менеджере app_server реализована поддержка переподключения приложений и восстановления их состояния (после аварийного завершения app_server все ранее запущенные приложения теперь автоматически переподключаются). В индикаторе состояния аккумуляторов PowerStatus добавлена поддержка систем с несколькими аккумуляторами. В различных приложениях улучшена поддержка тёмного режима оформления и HiDPI. В утилите launch_roster реализована возможность отображения состояния всех сервисов и работ в табличном формате. В ФС FAT добавлена поддержка 4KB-секторов и дисков, размером более 2TB. В BFS оптимизировано сканирование свободных блоков. Улучшена поддержка аппаратного обеспечения, выпущенного за последние 5 лет. Решены проблемы с выводом звука. Расширена поддержка Ethernet и Wi-Fi адаптеров с интерфейсом USB за счёт переноса драйверов из FreeBSD и OpenBSD. Расширена совместимость с POSIX, добавлена поддержка функций getresuid, setresuid, getresgid, setresgid, pipe3, dup2, mkostemp, reallocarray, memmem, qsort_r, posix_devctl, pthread_getcpuclockid и posix_spawn_file_actions_add[f]chdir, а также флагов O_CLOFORK, MSG_CMSG_CLOEXEC, MSG_CMSG_CLOFORK, SOCK_SEQPACKET, MSG_TRUNC, MSG_PEEK и WCOREDUMP. Добавлена поддержка функций, специфичных для систем GNU и BSD: getloadavg, closefrom и closerange. Улучшена совместимость с API FUSE, применяемом в реализациях ФС squashfs и exFAT. Продолжено развитие порта для архитектуры ARM64, который теперь успешно загружается в виртуальной машине. Проводятся эксперименты по запуску Haiku на системах с чипами Apple M1.
Источник: https://www.opennet.ru/opennews/art.shtml?num=66149