Haiku — свободная операционная система для персональных компьютеров, первая версия которой нацелена на бинарную совместимость с операционной системой BeOS.

Haiku воплощает в себе основные идеи BeOS. Это будет модульная система, архитектурно решённая как «модульное ядро», способная динамически подгружать необходимые модули. К интересным особенностям системы следует отнести архитектуру трансляторов — системных интерпретаторов файловых форматов (например, JPEG).

О проекте

ad block

Закладки

Устойчивое движение к первому альфа-релизу

В эти выходные проект Haiku сделал несколько больших скачков вперёд. Два из них отметим особо: Инго Вейнхольд и Аксель Дёрфлер прибили, наконец, баг 2059. Эта ошибка препятствовала использованию Haiku в качестве чего-либо серьёзного, окроме тестирования, поскольку вызывала обрушение ядра в любой произвольный момент, особенно при активной работе с диском. И всё, что должно было быть записано на диск, после такого краха терялось безвозратно. К счастью, из-за поддержки файловой системой журналирования и логов, это не означало потерю всего раздела, но то, над чем вы работали в тот момент, терялось. С исправлением этой ошибки мы ещё приблизились к моменту полноценной самосборки системы, то есть полноценному использованию Haiku для разработки. Это и есть самая главная цель, которую мы хотим достичь перед релизом альфы R1.

Вторым значимым достижением стало поддержка смешанной GCC4/GCC2 среды. Как стало известно некоторое время назад, благодаря исследованиям Майкла Лотца, в Хайку, собранной под GCC4 возможно запускать приложения, собранные в GCC2, и наоборот. Для этого надо установить соответствующие библиотеки в соответствующие места, чтобы приложения линковались с правильными их версиями и не путались. Чего не хватало до сих пор - так это поддержки системного загрузчика (это такой системный компонент, который запускает приложения и связывает их с нужными ему библиотеками), чтобы он делал это сам и по всей системе. Кроме того, в системе для сборки отсутствовала поддержка такой гибридной схемы. Обе эти проблемы были решены разработчиком Инго Вейнходлом. После этого Майкл Лотц обнаружил специфические проблемы со стабильностью, которые возникают при использовании определённых версий GCC4. Их можно избежать, если отключить определённые настройки оптимизации при сборке. Всё это значит, что Haiku сможет использовать более новый GCC4 для себя, при этом оставаясь совместимой с огромным парком уже существующих GCC2-приложений полностью автоматически и прозрачно.

Перед выпуском первой альфы осталось решить ещё несколько важных проблем. Есть бреши и пустоты в инструментах для разработчиков. Например, нет полностью родного порта Subversion. Насколько мне известно, ошибки в реализации TCP мешают этому, но, когда вы это будете читать, эти проблемы скорее всего уже решат. Будет проведено формальное тестирование, чтобы убедиться, что вся цепочка работает правильно. Аксель Дёрфлер разработывает менеджер устройств, системный компонент, который будет работать со всеми драйверами и переферией. Есть проблемы с аппаратными прерываниями, которые, будучи исправленными, должны решить проблемы с некорректной работой некоторых драйверов/железа.

В завершение, хочу сказать большое "Спасибо" всем, кто помогает отслеживать и сообщает об ошибках в наш баг треккер, всем, кто выпускает заплатки, и, конечно же, самим разработчикам! Я лично восхищён происходящими изменениями. Спасибо всем, кто помогает нам в движении к намеченной цели!

Штефан Ассмус

2008/05/18
метки:

Архивы

Сентябрь 2007| Октябрь 2007| Январь 2008| Февраль 2008| Март 2008| Апрель 2008| Май 2008