Обзоры
Опять о BeOS… Пять
0

Опять о BeOS… Пять

Итак, долгожданный (конечно, для определенного круга поклонников) пятый релиз BeOS появился на свет. Косметические отличия, незначительное расширение базы поддерживаемых аппаратных средств — все это, казалось бы, не позволяет уделять "новой" BeOS сколько-нибудь пристального внимания. Зато с точки зрения условий лицензирования, "пятерка" начинает нарушать все рыночные каноны. Если добавить к этому, мягко выражаясь, дивный механизм инсталляции системы, ставшее уже привычным "пополнение семейства Be" кажется достаточно любопытным (или, если хотите, — симптоматичным). Вполне вероятно, что будущий успех (или совсем наоборот) новой политики Be подскажет интересные пути распространения персональных ОС в ближайшем будущем.

Ситуация

Прежде чем непосредственно "подобраться" к BeOS 5, имеет смысл разобраться с сегодняшней ситуацией на рынке "настольных" ОС. Триумфальное шествие MS Windows 2000, совершенно не омраченное напомнившей о себе после долгой спячки антимонопольной политикой правительства США, убедительно доказывает наличие пока одного-единственного лидера. Устойчивое положение Sun, подкрепленное своевременным "освобождением" ОС Solaris, также не оставляет больших надежд новичкам на далеко не такой аппетитный, как десять лет назад, но все еще очень емкий рынок "персональных рабочих станций". Третий игрок — Apple, абсолютно ничего и никого не боясь, открыто готовит к решающей битве, возможно, самый серьезный "козырь" — MacOS X (другими словами, обновленную NextStep). Linux-"базар", похоже, начинает терять набранные в ходе стремительного начального развития баллы, свидетельством этому являются пусть незначительные, но весьма неприятные факты, как-то: отказ Wyse (компании с безукоризненной репутацией в корпоративном мире) от использования Linux в качестве ОС для своих графических Windows-терминалов и растущая сегментация уже даже не реализаций или дистрибутивов, а концептуальных идей развития системы… "Тройка" ОС, вполне подходящих для "настольного" применения, — *BSD (Free/Open/Net) и "примкнувшая к ним" BSDI прекрасно чувствуют себя в своей нише, без всякого шума расширяя "зону влияния". Канадская QNX незаметно "проталкивается" сквозь немногочисленную очередь разработчиков ОС для пост-ПК-устройств к "большому рыночному пирогу". Среди всего этого великолепия, также без большого шума, можно даже сказать, с какой-то обреченностью, IBM продолжает совершенствовать OS/2 Warp 4 — по upgrade-схеме и без обещаний на будущее… Ну и, наконец, Be, динамично изменяющая версии BeOS, ставшей бесплатной, но не открытой.

Приведенная "карта мира ОС", естественно, далека от совершенства. Позиции многих производителей операционных систем, даже дистанцированных от массового "настольного" рынка, достаточно устойчивы (например, SCO). Оставшиеся же вне "поля зрения" ОС, в первую очередь яркие исследовательские разработки (Plan 9, Oberon), несмотря на обширный круг ярых поклонников, в силу своей некоммерческой направленности большой "погоды", увы, не делают.

Версия

Если подкрепить анализ рынка знаниями о происхождении той или иной ОС, возникает странное подозрение. Давайте вспомним, что основной коллектив архитекторов MS Windows NT имеет непосредственное отношение к созданию одной из самых удачных ОС прошлого — DEC VAX VMS (Virtual Memory Storage). Дополним эту информацию тем, что в основе WIndows 2000 заложено ядро NT. Теперь пристальнее взглянем на "остальных бойцов за десктоп": Solaris, MacOS X, Linux, *BSD и BSDI, QNX — все это реализации спецификаций Unix (на сегодняшний день такое определение кажется автору единственно точным). IBM OS/2 и BeOS в нашей условной классификации можно отнести к небольшой группе "других ОС, обладающих свойством частичной POSIX-совместимости".

А теперь самое время вспомнить историю… Давным-давно, когда машины класса VAX (1—5 млн. операций в секунду) гордо именовались "супер-мини", уже произошла "великая битва операционных систем". И сражались в ней… да-да, вы уже догадались — VMS и Unix. Причем "бойцы" находились в абсолютно неравных условиях и пользовались совершенно разным оружием. "В руках" разработчиков VMS было чуть ли не идеально отточенное технологическое совершенство, Unix же "отбивалась" на первый взгляд хрупкой концептуальной целостностью. "Другие ОС", в достаточном количестве существовавшие и в те времена, несмотря на их декларируемую идеальность (Multics) или коммерческую популярность (OS/370 и SVM), навсегда канули в Лету…

Авторы "Экклезиаста" оказались правы. Древний конфликт между совершенством реализации и совершенством идеи разгорелся с новой силой. В нем участвуют практически те же стороны (VMS, Unix и "другие ОС"), ну а предсказание исхода сражения — дело аналитиков (или фанатиков).

Странности

Вне зависимости от симпатий или антипатий BeOS заслуживает по крайней мере одного титула — самой странной ОС всех времен и народов. Пятый релиз это утверждение подкрепил более чем убедительно: BeOS 5 — единственная полноценная мультизадачная ОС, требующая для установки… наличия другой операционной системы. Естественно, речь идет о бесплатной версии, доступной для загрузки с сайта компании Be. Такую политику можно было бы назвать "заботой о пользователе", если бы все потенциальные пользователи BeOS делились на две категории — те, кто выбрал Windows или Linux. Но перечень популярных ОС намного обширнее, и огромной (в первую очередь, по меркам сравнительно немногочисленного сообщества любителей BeOS) аудитории приходится "изрядно попотеть", прежде чем "дружелюбная" установка будет побеждена.

В частности, автору пришлось специально установить на свой компьютер (основная и единственная ОС — FreeBSD) MS Windows только для того, чтобы затем инсталлировать BeOS 5. Такие же "маленькие радости" ожидают и всех остальных "неправильных" пользователей.

Вторая "странность" сказалась в ходе "упрощенной" установки ОС: видеоакселератор на одном из самых качественных в модельном ряду чипсетов компании S3 — 968 (4 MB VRAM и "скорострельный" DAC от IBM), не вызывавший ни одной претензии у Windows, Linux, *BSD, Solaris, Unixware, Oberon и по этой причине выбранный автором с особой тщательностью и надолго, — принципиально "отказался" работать… Пришлось срочно проводить "модернизацию" в соответствии с прихотливыми запросами BeOS. Аналогичная проблема возникла и со звуковой картой Soundblaster (SB) 16, безукоризненно работавшей под управлением всех перечисленных ОС, и с сетевой платой 3C509…

Что здесь странного? Собственно говоря, почти ничего: далеко не всякая ОС поддерживает все существующее "железо". Кроме нескольких "но"…

Во-первых, зачем избалованному обилием ПО легальному пользователю MS Windows, проводящему время за мощным ПК с высококачественным 3D-акселератором (а все другие видеокарты BeOS "не любит"), может понадобиться "вторая ОС"? Тем более далеко не блещущая разнообразием прикладного ПО…

Во-вторых, зачем пользователю Linux мощный и дорогой 3D-акселератор, ведь перечень массового, в первую очередь игрового, ПО для Linux крайне ограничен?

В-третьих, если наш абстрактный пользователь — вовсе и не пользователь, а скорее — непрограммирующий программист, предпочитающий "гонять" красивые игрушки в Windows (здесь они имеются), а "ковыряться" в C++ программах — в Linux/FreeBSD/Solaris/… (хотя бы потому, что это самые дешевые интегрированные инструментальные системы), то у него есть все необходимое (и мощный 3D-акселератор, и требуемые ОС) для установки BeOS. Кроме одного — зачем ему еще одна ОС?

Третья и четвертая "странности" настолько серьезны, что заслуживают отдельного детального рассмотрения. Речь пойдет о производительности ПК под управлением BeOS и спектре прикладного программного обеспечения.

Скорость

Ранние эксперименты, проводившиеся автором на совсем "дряхлом" ПК (CPU Pentium 166 MHz), не позволяли в полной мере ощутить разницы в производительности между достаточно перегруженной приложениями ОС Linux и практически ничем дополнительным не оснащенной BeOS. Время идет, и привыкнув к "реактивной" скорости 500 MHz, поддерживаемой тщательно "вылизанной" FreeBSD, появилась возможность реально оценить разницу между совершенно противоположными с архитектурной точки зрения операционными системами. Неоднократно повторенные "исследования", заключающиеся в запуске одной и той же тестовой программы (знаменитые "чайники" — тест OpenGL), показали несколько неожиданный результат: находящиеся в одинаковых условиях (имеется в виду общая аппаратная платформа) BeOS и FreeBSD существенно отличаются по производительности. Причем не в пользу первой из них… Не следует думать, что OpenGL-тест недостаточно показателен — на самом деле программы, использующие библиотеку OpenGL, интенсивно работают и с виртуальной памятью, и с графической подсистемой, и с общесистемными вызовами ОС. С учетом огромных технологических отличий (FreeBSD, как и любая Unix ОС в неоклассическом исполнении, основана на монолитном ядре с отдельной графической подсистемой X Window и глобальном использовании "тяжелых" процессов; BeOS — микроядерная объектно-ориентированная архитектура, изначально нацеленная на приоритет "легковесных" процессов/потоков/threads) низкие скоростные показатели BeOS можно считать симптоматичными для всех аналогичных систем. Здесь сказывается влияние двух основных факторов: несоответствия возможностей архитектуры микропроцессоров семейства Intel x86 требованиям "потокового" ПО (для таких программ более перспективны RISC-процессоры с большим количеством регистров, например UltraSPARC) и, возможно, отсутствие явных преимуществ "легковесных" процессов в целом (идеология и архитектура threads подвергалась и подвергается жесткой критике со стороны заслуженно уважаемых во всем мире компьютерных "гуру").

Программное обеспечение

Операционная система — не самоцель (это высказывание не касается, пожалуй, только Unix, которая по замыслу разработчиков является самодостаточной инструментальной ОС). В случае установки бесплатной версии BeOS пользователь попадает на территорию, где "еще не ступала нога человека". "Облегченная" до приемлемого для Internet-распространения размера (компрессированные дистрибутивы для Windows и Linux не превышают 50 MB) базовая система содержит вполне работоспособный броузер без поддержки Java и пустой каталог, предназначенный для средств разработки. Все это не страшно — остается загрузить еще 19 MB ПО для разработчика (с достаточно серьезными ограничениями, но этой процедуры не избежать — дополнительные мегабайты содержат библиотеки и файлы заголовков, необходимые для программирования в BeOS), а также компилятор gcc, портированный для BeOS, и редактор Vim. К сожалению, бесплатные серьезные программы для отладки отсутствуют…

Для ощущения полноты мультимедиа-3D-ориентированности BeOS стоит загрузить весьма пристойный пакет 3D-моделирования Blender (www.blender.nl) и мощную программу рендеринга POV-Ray. Популярные форматы файлов .ps и .pdf, де-факто-стандарт распространения технической информации и документации в Internet, можно сколько-нибудь пристойно просматривать с помощью опять же портированной программы Ghostscript. Вопреки распространенному мнению о выдающихся мультимедийных способностях BeOS ничего подобного, например, классической программе Rosegarden автору найти не удалось (для справки: Rosegarden представляет собой очень удачное сочетание нотного редактора, MIDI-интерфейса и мощного секвенсора, www.bath.ac.uk/~masjpf/rose.html), ресурсоемкость же самого популярного аудиоприложения — проигрывателя MP3-файлов — оказалась ощутимо выше бесплатного Unix-аналога.

После знакомства с перечнем доступного ПО (имеются в виду вполне работоспособные и проверенные временем версии) читатель, знающий не понаслышке о таких ОС, как Linux, FreeBSD или Solaris, уже должен прийти к очевидному выводу… Для пользователей Windows или MacOS придется сделать одно маленькое уточнение: все перечисленные выше программы существуют давным-давно и разработаны… для ОС Unix. Здесь кроется ответ и на вероятно возникший после прочтения о "странностях" BeOS вопрос: почему автор предусмотрел возможность существования "непрограммирующего программиста", использующего только комбинацию MS Windows/Unix? Ведь есть еще и другие "формы отклонений от нормы". Действительно, есть, но… Зачем "подгонять" свой компьютер под требования ОС, в которой все равно будут работать только некоторые приложения куда более неприхотливых платформ, а большая часть действительно интересных приложений останется недоступной…

Лицензирование, или Снова странности

Не следует обольщаться номинальной бесплатностью BeOS PE (Personal Edition) — действие лицензии распространяется исключительно на индивидуального пользователя копии ОС, не применяющего ее в коммерческих целях. Что это значит, сказать трудно. Например, к какому роду деятельности можно отнести индивидуальную разработку ПО для BeOS с помощью доступных и легально бесплатных программ GNU с целью его последующей продажи? Или же установку BeOS в качестве intranet-сервера небольшой организации? Странное отношение компании Be к "святая святых" в мире операционных систем — прикладным программистам, превращающим "голую" ОС в удобное рабочее место, — похоже, сказывается уже не на перспективности, а на жизнеспособности системы в целом. Эта странность заключается во взимании денег с разработчиков, а не с потребителей готового ПО, хотя по логике вещей все должно быть совсем наоборот. Сложившуюся ситуацию можно представить в виде следующей неформальной модели: комплект полноценного ПО разработчика для BeOS достаточно дорог, ряд причин не позволяет портировать в BeOS весь инструментальный спектр GNU, количество пользователей системы ограничено — все это снижает ее перспективность с точки зрения программистских компаний, что сужает спектр доступного на рынке ПО, что сокращает количество пользователей… Круг замкнулся.

Жизнеспособная модель

Что может случиться с BeOS в будущем — этот вопрос очень интересен и, можно сказать, важен для формирующейся новой модели индустрии программного обеспечения. Флагманы "открытого" поколения разработчиков ПО — такие компании, как Scriptics, Sun, Netscape, недавно изменившие свои позиции BSDI и Apple, — хорошо осознали одну ошибку, допущенную предшественниками. Можно выйти на рынок с очень ярким, гениальным и опережающим время интеллектуальным товаром (лучший пример подобного — ОС NextStep), но для развития этого товара необходимо или придерживаться жесткой монопольно-корпоративной линии развития, или переходить к открытому и взаимовыгодному сотрудничеству с потребителями и сторонними разработчиками. Именно по последнему принципу развивается бесплатно доступная среда программирования и интеграции приложений Tcl/Tk (Scriptics), открытые реализации ОС Solaris, броузер Netscape, ОС FreeBSD ( и будущая BSDI) и, наконец, наследница NextStep — MacOS X.

В случае с BeOS открытая модель, вероятнее всего, принесла бы компании только выгоду. Например, сообщество Unix в достаточной степени заинтересовано в легковесной альтернативе X Window для систем с ограниченной функциональностью, и на ее роль вполне могла бы претендовать реализация GUI BeOS. Соответственно, облегчилась бы миграция ПО между двумя платформами, а BeOS заняла бы нишу удобной однопользовательской Unix (точнее, пользовательской Unix). На пути к такой идиллии главное, что требуется от компании Be, — не опоздать. Ведь ничего революционного в GUI BeOS не наблюдается, единственное достоинство этой подсистемы — проверенная и надежная реализация, вероятнее всего, неплохо "стыкующаяся" с любой POSIX-совместимой ОС. А ведь не за горами день, когда увидит свет первый альфа-релиз ожидаемой от Apple Aqua, повторяющей уникальную идеологию NextStep на качественно новом уровне… С точки зрения и разработчика, и пользователя, Aqua вообще не оставляет шансов ни одному из существующих на сегодняшний день GUI…

С ядром BeOS также дело обстоит не лучшим образом. Его организация могла бы послужить прототипом для весьма интересных ОС, если бы не одно "но"… Уже существуют, работают и развиваются не менее (если не более) изящно организованное и, вероятно, реализованное (причина сомнений — не низкое качество кода Vsta, а невозможность "взглянуть" на код ядра BeOS) ядро Vsta (www.zendo.com/vsta/) и даже вполне функциональная (с хакерской точки зрения) одноименная ОС.

Вывод отсюда следует такой — или в ближайшее время политика распространения BeOS для ПК изменится в сторону большей открытости, или… BeOS станет еще одной "когда-то бывшей ОС".

Не судьба

Прослеживая невольно образовавшийся мини-цикл статей о BeOS, читатель может упрекнуть автора в резком изменении позиции по отношению к этой ОС. Увы, дело здесь не в личных пристрастиях — все мы радуемся, получив в руки новую красивую игрушку (не зря гласит пословица, что мужчина — всегда ребенок, разница только в стоимости игрушек). Затем, вдоволь наигравшись, мы трезвеем и начинаем задумываться о целесообразности этой игрушки или даже искать способ ее применения хоть с какой-то пользой.

BeOS была бы прекрасной учебной партой для начинающих "с нуля" программистов, в первую очередь, желающих освоить язык С++, но для объектно-ориентированного проектирования и программирования нужна достаточно мощная инструментальная поддержка, которой на сегодняшний день бесплатный вариант системы не обладает. Тратить же немалые деньги на малораспространенную систему представляется весьма нелогичным, хотя это личное дело каждого.

Мультимедийное позиционирование системы, казалось бы, делает ее довольно привлекательной на массовом рынке, но… Найти ПО, подтверждающее мультимедийные отличия BeOS, практически невозможно — все, что есть для этой системы, есть и для многих других.

Идея утилизации богатых возможностей 64-битовой журнальной файловой системы BeOS в серверах начального уровня опять же разбивается если не об отсутствие эффективных реализаций сетевых сервисов, то о крайне слабую поддержку аппаратных средств, свойственных серверным приложениям (особенно плохо обстоит дело со SCSI- и RAID-контроллерами).

Почин бесплатного распространения предустановленной BeOS с новыми ПК, похоже, не нашел поддержки ни в рядах производителей, ни среди основной массы потребителей. Сегодняшняя ставка Be на рынок Internet-устройств, учитывая громкие имена участников альянса, вероятнее всего, больше скажется на позиции Be-компании, а не Be-операционной системы. Узкоспециализированные Internet-приставки — это не универсальные компьютеры, для которых необходимо огромное количество прикладного ПО, здесь достаточно броузера и нескольких небольших "провайдер-ориентированных" приложений.

В заключение хотелось бы еще раз вернуться к истории, подтверждающей справедливость "Экклезиаста". Точность, с которой Be повторяет весь путь Next Computers, просто удивляет: обе компании начинали со схемы "дорогое железо и ОС в нагрузку", обе успешно проиграли битву на аппаратном рынке из-за неправильного выбора процессоров для своих машин и явно несоответствующей времени ценовой политики, обе в максимально короткие сроки перенесли свои ОС на платформу IBM PC… Единственное отличие — NextStep была и остается все-таки гениальной ОС, со временем ставшей больше идеей, чем конкретным продуктом. А идеи живут очень долго…

Смогла ли BeOS стать идеей — покажет неумолимое время.


Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: