Копнув глубже, мы наткнемся и на некоторые не очень приятные нововведения. Структура каталогов изменилась, что может привести к тому, что программы, написанные под Zeta, не будут работать под BeOS/Haiku. Более того, библиотека libzeta.so во многом дублирует стандартную библиотеку libe.so, описывающую функции для работы с AppServer. Следовательно, приложения, написанные с использованием этой библиотеки, тоже не будут работать под BeOS. Не знаю, насколько это было продиктовано необходимостью, - больше похоже на маркетинговый ход, искусственную попытку нарушения совместимости с BeOS R5 PE/Haiku, сделанную для победы в конкурентной борьбе.
Подводя итог, можно сказать, что Zeta - вполне целостная система, которой в наследство от BeOS достались многие плюсы, такие как быстродействие, стабильность и пользовательский интерфейс. Однако с выходом она запоздала. Если в 2000 году BeOS во многом была лучше Windows, то теперь Zeta находится в стане догоняющих. Впрочем, все шансы «догнать и перегнать» у нее есть, и дело здесь за малым: нужна лишь поддержка независимых разработчиков.
Zeta очень не хватает современного офисного пакета, который мог бы сделать ее прекрасной офисной системой. Правда, YellowTab сейчас занимается портированием OpenOffice 2, что не может не радовать пользователей (хотя это и не «путь BeOS»). Будем надеяться, что появится и коммерческий пакет - по словам YellowTab, этим тоже занимается один из производителей ПО.
Уже летом YellowTab выпустила первое обновление системы до версии 1.1, что говорит о внимательности компании к мнению пользователей и желанию работать над ошибками.
Для тех, кто не хочет покупать кота в мешке, есть Zeta 1.1 LiveCD - запускаемый с компакт-диска вариант, в котором вы увидите не весь набор ПО, а только демо-версии.
Немного японской поэзии
Пожалуй, сейчас уже можно с уверенностью говорить о существовании ОС под названием Haiku - она перешла ту грань, за которой код становится работающей программой. Теперь это не набор отдельных модулей, а система, способная загружаться без посторонней помощи (в том числе и с CD) и поддерживающая Hyper-Threading и многопроцессорные системы.
Желающие могут поэкспериментировать с ней уже сейчас. Каждые шесть часов на сайте разработчиков haiku-os.org выкладывается последняя сборка Haiku в виде образа диска, который можно запустить или на виртуальной машине (QEMU), или на реальной - перенеся образ на винчестер и загрузившись с него. К сожалению, в виртуальной машине система работает очень нестабильно, хотя немного «поковыряться» можно и там. Для запуска Haiku на реальной машине потребуется иметь уже установленную BeOS, чтобы подготовить раздел для установки и перенести Haiku с образа диска на реальный диск. Еще можно скачать последний вариант исходников Haiku и самому скомпилировать их, например, в Linux.
Я выбрал первый вариант - он оказался самым простым, поскольку BeOS у меня уже стояла. Достаточно было создать раздел bfs[Файловая система, используемая в BeOS], подмонтировать образ диска Haiku при помощи утилиты imagemounter и скопировать все файлы с подмонтированного диска в этот раздел. Можно загружаться! Честно говоря, не ожидал, что после таких простых действий все заработает, но, как оказалось, тревожился я зря. Haiku запустилась (рис. 8) и порадовала меня своим рабочим столом (даже в цвете!) и открывшимся окном терминала[Haiku, как и BeOS, - система со встроенным графическим интерфейсом, и для работы с командной строкой требуется запустить терминал].
Как видим, интерфейс пока очень аскетичный, но мы это исправим. Структура каталогов в Haiku такая же, как и в BeOS, так что мы без труда можем найти и запустить два основных приложения: Tracker (менеджер файлов) и Deskbar (панель задач).
Ну вот, теперь чувствуем себя совсем как в BeOS (рис. 9).
Продолжим. Оказывается, здесь не так уж мало стандартных программ: впрочем, бОльшая их часть была написана для повторения функциональности BeOS и тестирования работы системы (рис. 10). Однако главная цель Haiku - создание ОС, бинарно совместимой с BeOS R5. Как видно из рис. 11, Haiku с этим уже частично справляется. Также отметим, что множество приложений из BeOS доступны в исходном коде, и с портированием трудностей возникнуть не должно. Как правило, достаточно перекомпиляции.
Теперь поговорим об отличиях. Haiku уже сейчас сделала несколько шагов вперед по сравнению с BeOS R5. В частности, появился новый сетевой стек, основанный на сетевом стеке FreeBSD, а также новый USB-стек. В Haiku в настоящий момент пишутся API для работы с OpenGL 1.5 (BeOS поддерживала только версию 1.1). Драйверы Haiku для видеокарт с графическим процессором от nVidia поддерживают аппаратное 3D-ускорение. Также во второй версии этой операционной системы планируется использовать третью и четвертую версии компилятора gcc, что предоставит разработчикам более широкие возможности.
Пути развития
Итак, мы рассмотрели две системы, которые претендуют на звание наследниц BeOS. Давайте попробуем сравнить если не сами разработки (это пока преждевременно, учитывая альфа-статус Haiku), то по крайней мере выбранные подходы.
Zeta в полной мере демонстрирует эволюционный путь развития системы. Наверное, такой или похожей была бы BeOS R6, если бы Be Inc. продолжала ею заниматься. Однако, похоже, YellowTab не поспевает за развитием компьютерной индустрии. По сути, Zeta (с небольшими улучшениями) осталась на том же уровне, что BeOS в 2001 году, а на дворе уже 2005-й. Zeta идет по пути коммерческого ПО и поэтому в меньшей степени руководствуется подходами BeOS, что может привести к загромождению кода и программ.
А вот Haiku можно назвать перерождением BeOS в полном смысле слова. Система полностью написана «с нуля». Почти готов уникальный API, позволяющий писать очень эффективные программы с графическим пользовательским интерфейсом. Расширена аппаратная поддержка.
Что можно ожидать в будущем? Мне видятся два варианта дальнейшего развития событий:
1. Zeta будет все меньше и меньше совместима с Haiku, чтобы коммерческие приложения, способные заинтересовать корпоративного клиента, не работали под управлением конкурирующей ОС. Однако команде Haiku ничто не мешает написать модули совместимости с Zeta - благо возможности для этого есть. Более того, наверняка появятся желающие перенести Haiku на другую аппаратную платформу (уже идут разговоры о Mac [PowerPC] и PlayStation 3), что может способствовать популярности системы. Для Zeta с ее закрытым кодом и ограниченными ресурсами это менее вероятно.
2. С выходом Haiku YellowTab подключается к работе над нею, используя собственные наработки, осуществляет поддержку корпоративных пользователей этой системы - то есть перестраивается на бизнес-модель, используемую поставщиками open source-решений.
Второй путь был бы, наверное, идеальным для нас, потребителей. Но, как говорится, поживем - увидим.
BeLinux?
Haiku не единственный открытый проект, нацеленный на создание BeOS-подобной операционной системы. Другая инициатива в этом направлении - система Cosmoe , основанная на ядре Linux. Она не является «клоном BeOS» в полном смысле слова - автор не ставил честолюбивых целей добиться бинарной совместимости, так что для запуска BeOS-программ под Cosmoe потребуется как минимум перекомпиляция. Хотя разработка практически свернута (последний релиз датируется декабрем 2004 года), кое-какая активность в списке рассылки все же наблюдается, - так что не исключено, что в будущем мы увидим несколько открытых операционных систем, основанных на идеях Be Inc.