При офисном использовании UNIX не имеет никаких преимуществ перед Windows. Переход на UNIX, решая одни проблемы, добавляет множество новых. Крис Касперски
— Я поставил Linux. Что мне теперь делать?
— Удалить и поставить обратно Windows!
Из диалогов RU.LINUX
Всплеск интереса к Linux переживает настоящий взрыв, и по агрессивности рекламы обгоняет все системы Windows вместе взятые. Утверждается, что это надежная, профессионально ориентированная, хорошо защищенная система, которая никогда не зависает и показывает чудеса производительности даже на морально устаревшем оборудовании. Но так ли это на самом деле?
КЕСАРЮ КЕСАРЕВО
Основной сегмент рынка операционной системы UNIX и производных от нее систем приходится на долю наукоемких вычислений, мощных серверов и промышленных роботов. Ее можно обнаружить и в исследовательских лабораториях, и в центрах управления полетами, и в проектных институтах, и даже в окружающем нас электротехническом оборудовании, например в контроллере лифта или плейере MP3.
Заметим, что ни домашние, ни офисные компьютеры мы не упомянули. И дело отнюдь не в отсутствии у UNIX графического интерфейса или сложности ее освоения. Есть и интерфейс, и интуитивно-понятное программное обеспечение, зачастую даже более дружелюбное к неподготовленным пользователям, чем продукция Microsoft. Так почему же тогда UNIX-подобные системы не имеют в этом сегменте рынка никакого успеха?
Если, установив UNIX, пользователь немедленно хватается за мышь в поисках Might Commander и Star Office, то, скорее всего, он попросту не осознает свои потребности, и UNIX ему совсем ни к чему. Ему нужны Windows, возможность запускать программы Windows, средства работы с документами Windows (точнее, с документами, создаваемыми приложениями Windows) и т. д.
Переход на UNIX, решая одни проблемы, добавляет множество новых и в целом не обеспечивает никаких преимуществ. Напротив, вы будете ограничены в выборе аппаратного обеспечения, останетесь без систем распознавания текста, словарей-переводчиков, финансового программного обеспечения и полноценной поддержки документов Office. Взамен же не получите ровным счетом ничего. Надежность? Будучи неправильно настроенными, все системы без исключения перестают реагировать на подаваемые команды, и UNIX в том числе. Стабильность? Ни одна более или менее серьезная программа не застрахована от ошибок, а качество тестирования большинства дистрибьютивов UNIX, вообще говоря, невысоко. Защищенность? С точки зрения архитектуры системы UNIX находятся на одной ступени с Windows NT и без регулярной установки свежих обновлений быстро превращаются в рассадник вирусов, троянских коней и «червей». Производительность? Если забыть о командной строке, с которой ни одна секретарша ни за что не согласится иметь дело, то для нормальной работы потребуется достаточно мощный компьютер, желательно даже более мощный, чем для Windows NT, поскольку качество оптимизации офисных программ под UNIX оставляет желать лучшего.
Словом, при офисном использовании UNIX не имеет никаких преимуществ перед Windows NT. В техническом плане эта ОС, бесспорно, намного совершеннее и элегантнее Windows (достаточно отметить хотя бы тот факт, что Windows не поддерживает разделяемых динамических библиотек, что ведет к перерасходу памяти и снижению производительности). Однако в целом ядра обеих систем предоставляют схожие функциональные возможности, а основная доля различий связана с культурой программирования и сложившейся идеологией проектирования прикладного программного обеспечения.
Устанавливая UNIX, вы попадаете в совершенно иной мир, где профессионал чувствует себя комфортно, а новичок — очень неуютно. Если вы не умеете работать с литературой, не готовы или не хотите копаться в исходных текстах либо изучать миллионы страниц документации — этот мир не для вас. Для UNIX существует огромное количество инженерных, научных и издательских программ, но, чтобы начать получать от них реальную отдачу, пользователю придется очень многому научиться. Это рай для экспериментаторов и индивидуалистов, презирающих готовые решения и обожающих заниматься ручной настройкой системы под себя.
Применяя заплатку к Windows, вы передаете управление «черному ящику», зачастую даже не догадываясь, что конкретно тот делает и насколько это вам необходимо. Хуже того, попадаете в зависимость от поставщика и, если Microsoft прекратит поддерживать Windows 2000, будете вынуждены перейти на очередную операционную систему независимо от вашего желания, финансовых и технических возможностей, поскольку самостоятельно исправить двоичный код в общем случае нереально. Наличие исходных текстов существенно упрощает задачу и делает ее посильной для программиста средней руки. Операционную систему не придется дизассемблировать только затем, чтобы написать свой диспетчер задач, поскольку ключевые функции по тем или иным причинам оказались недокументированными.
Что касается офисного программного обеспечения, то приходилось ли вам сталкиваться с ситуацией, когда документы отображаются совсем не так, как печатаются, или когда при обработке документов приложение перестает реагировать на запросы? В UNIX, где подавляющее большинство документов хранится в тщательно документированных текстовых форматах, всегда можно заглянуть в файл и выяснить, в чем же причины. Настоящие профессионалы преимущественно руками и работают, предпочитая мыши — клавиатуру, а визуальным редакторам — редактор vi. Считается, что это требует определенных инженерных навыков и среднестатистическому пользователю vi не по зубам. Отчасти это действительно так, хотя не следует забывать, что, когда компьютеры были большими, пользователи и не с такими программами справлялись. Не без предварительного обучения, конечно.
Не претендуя на точность аналогии, UNIX — это профессиональный фотоаппарат, а Windows — автоматическая «мыльница», и возможности самовыражения в последнем случае более чем ограничены. С другой стороны, при минимальных познаниях в области фотографии получить качественный снимок с помощью профессионального фотоаппарата намного сложнее, чем с «мыльницей». Преимущество UNIX над Windows не возникает само по себе, а достигается лишь за счет профессионализма ее использования. Массовое распространение компьютеров породило острый дефицит грамотных пользователей без надежды на его скорое преодоление. Сейчас, когда система образования оказалась на грани распада, каждый вынужден осваивать компьютер самостоятельно, методом проб и ошибок. Эта тактика вполне возможна в мире Windows, но неприемлема по отношению к UNIX.
Хотите обучать пользователей за свой счет? Пожалуйста! Но прежде давайте попробуем подсчитать, какие реальные перспективы вам дает переход на UNIX и как быстро он себя окупит. Впрочем, сначала договоримся о терминах.
СОГЛАШЕНИЯ О НАИМЕНОВАНИЯХ
Под Windows, если только не оговорено обратное, далее подразумевается вся линейка 32-разрядных систем этого семейства, а именно: Windows 95/98/Me/NT/2000/XP/ 2003. Под Windows NT — вся линейка систем на базе NT, а именно: сама Windows NT, Windows 2000/XP/2003.
Под операционной системой UNIX подразумевается любая UNIX-подобная операционная система, включая Linux, которую следует отметить особо. Linux — это некоммерческая экспериментальная система, ориентированная преимущественно на исследовательскую деятельность в области программирования и на самообучение. Что-то вроде ZX SPECTRUM, куда каждый мог залезть паяльником и изо всех сторон которого наружу торчали провода. Для «промышленного» употребления она непригодна. Да, при желании из нее можно сконструировать все, что хочешь, но, если вы не намерены собирать систему каждый божий день, лучше обратите свой взор на FreeBSD, от которой, по меткому выражению одного из администраторов, «ни добавить, ни отнять».
Агрессивная политика распространения Linux привела к тому, что в умах обывателей пингвин превратился чуть ли не в безальтернативный клон UNIX. Неудивителен и результат: познакомившись с Linux поближе, среднестатистический пользователь навсегда теряет интерес ко всем UNIX-подобным систем. А жаль... Начни он с той же FreeBSD, все могло бы оказаться совсем не так...
НАДЕЖНОСТЬ
Легендарная надежность систем UNIX объясняется отнюдь не их специфическими качествами, а господствующей идеологией. Если некорректно написанное приложение и/или бездумные действия пользователя приводят к зависанию Windows, то виноватым традиционно объявляется Билл Гейтс и его программное обеспечение, а все окружающие начинают понимающе сочувствовать. Если же ошибки в драйвере UNIX приведут к порче содержимого жесткого диска из-за того, что он был помещен на одну шину SCSI с ленточным накопителем, то разработчики драйвера возложат всю вину на глупость пользователя, а компьютерные гуру лишь хмыкнут: кому, мол, придет в голову совмещать на одной шине быстрое и медленное устройство?
Вопреки расхожему мнению, Windows представляет собой чрезвычайно стабильную систему, способную работать без зависаний и перезагрузок годами. Да, в ней есть какое-то (по некоторым оценкам, очень большое) количество ошибок, однако подавляющая их часть никак не влияет на работу пользователей, а те, что все-таки мешают, устраняются в оперативном порядке. Всякое зависание системы указывает на наличие серьезной проблемы и необходимость срочного хирургического вмешательства. Виновником могут быть и аппаратные дефекты, и нестабильные драйверы, и вирусная инфекция, и некорректная конфигурация, наконец. Если вы не способны даже такую простую систему, как Windows, заставить работать нормально, то за UNIX не стоит и браться — будет еще хуже.
В Windows на каждом шагу вас окружают мастера, помощники, контекстные меню и полностью автоматизированные инсталляторы. В UNIX же все делается преимущественно руками и головой пользователя. И без того низкое качество тестирования программного обеспечения в UNIX усугубляется тем обстоятельством, что большинство приложений и утилит распространяется в виде «полуфабрикатов», иначе называемых исходными текстами. В зависимости от версии компилятора, ключей компиляции, выбора целевой платформы и компилируемых компонентов, возникают то одни, то другие ошибки. Зачастую скомпилировать программу с первой попытки вообще не удается! Для этого могут потребоваться библиотеки, которых у вас нет, или версии уже установленных библиотек могут вступить в конфликт. Надо быть готовым и к тому, что в конфигурацию системы придется вносить серьезные изменения, никак не отраженные в документации. Неправильно же установленная программа будет работать крайне нестабильно, а то и совсем не сможет функционировать.
Нет никаких статистических данных, свидетельствующих в пользу того, что грамотно настроенная система UNIX работает стабильнее правильно установленной Windows. В профессиональных руках обе системы демонстрируют приблизительно одинаковый уровень устойчивости. Просто в мире UNIX профессионалы встречаются гораздо чаще (так как непрофессионалы здесь не задерживаются), вот за ней и закрепилась слава надежной системы.
ЗАЩИЩЕННОСТЬ
Утверждения о превосходной защищенности систем UNIX лишены всякого основания. Да, UNIX обеспечивает разграничение доступа к файлам, принтерам и прочим ресурсам, изолирует адресные пространства различных процессов, блокирует прямой доступ к оборудованию, защищает критические системные компоненты от преднамеренного или непреднамеренного искажения, протоколирует все более или менее значимые события и происшествия. Однако те же самые услуги предоставляют и операционные системы семейства Windows NT! Архитектуры подсистем безопасности обеих систем во многом схожи и наследуют общие проблемы.
Во всех ОС можно найти «дыры», куда стремятся проникнуть хакеры, «черви» и вирусы. На «дыры» в срочном порядке накладываются заплатки, в противном случае компьютер превращается в рассадник всяческой заразы. Различные источники приводят сильно отличающиеся рейтинги уязвимости операционных систем, и поэтому провести беспристрастное сравнение чрезвычайно сложно, да и полезность такого исследования представляется весьма сомнительной.
Как бы там ни было, коробочная версия UNIX обеспечивает лишь минимальный уровень безопасности, и над ее укреплением приходится работать и работать. Причем, если вы не гуру, шансы на создание защищенной системы близки к нулю. То же самое, впрочем, относится и операционным системам семейства Windows NT.
Иногда приходится слышать, будто бы системы UNIX неподвластны вирусам. Это неверно. Для UNIX имеется около десятка вирусов, внедряющихся в исполняемые файлы. Однако они единодушно признаны неактуальными лишь потому, что в UNIX непривилегированный пользователь теоретически лишен возможности навредить системе. Кстати, в Windows NT тоже. Но наличие «дыр» разрушает эту теорию.
Примечательно, что из десяти крупнейших вспышек вирусных эпидемий шесть затронули линейку Windows NT, а остальные делят между собой FreeBSD, Linux и Solaris. Это наводит на серьезные размышления, которые вроде бы свидетельствуют отнюдь не в пользу Windows NT. На самом деле ситуация не так уж и плачевна. Между «официальным» открытием «дыры» и появлением первых вирусов, использующих ее для своего распространения, проходит немало времени — по меньшей мере месяцы, а иногда и годы. Не успеть установить заплатку может только ленивый. Вы не умеете или забываете устанавливать заплатки?! Тогда переходите на QNX и вообще отключите компьютер от сети (в смысле Internet), а для достижения наивысшей степени безопасности и от электрической сети тоже.
ЛЕГКОСТЬ УПРАВЛЕНИЯ ПРОТИВ ФУНКЦИОНАЛЬНОСТИ
Ненавистники Windows часто апеллируют к формуле «если вы создадите вещь, которой сможет пользоваться каждый дурак, только дураки ею и будут пользоваться». Позвольте, а как же карандаши, автомобили, телевизоры, микроволновые печи? Ребенок, увлеченно расчеркивающий расстилающийся перед ним лист, ничего не знает ни о графите, ни об особенностях строения его кристаллической решетки. Принципы, лежащие в основе телевещания, ему неведомы, а о существовании невидимых глазу электромагнитных полей он даже не подозревает. Однако для переключения телевизионных каналов необязательно быть инженером. Да, когда-то существовали такие таинственные для обывателей слова, как гетеродин, развертка, частота строк, сведение лучей и т. д., но теперь они уже в прошлом — современные телевизоры способны настраиваться самостоятельно, хотя бы ценой нескольких лишних блоков. Большая аппаратная сложность (а значит, и себестоимость) в обмен на прозрачность управления — это вполне нормально. Так стоит ли упрекать Microsoft в том, что она стремится низвести компьютер до уровня бытового прибора, которым может управлять всякая домохозяйка?
На самом деле, к сожалению, обещанная Гейтсом информационная революция пока так и не состоялась. «Интуитивно-понятный» интерфейс Windows для неквалифицированных пользователей оказался далеко не интуитивным, а наоборот — непонятным, поэтому им приходится ограничиться лишь небольшой толикой операций, найденных методом «научного тыка». Как следствие, работа на компьютере превращается в борьбу с ним!
Когда компьютеры были большими, широкое распространение имело такое понятие, как автоматизированное рабочее место, или, сокращенно, АРМ. Оператор получал для выполнения конкретных операций компьютер, на котором не было ничего лишнего. Поэтому на освоение программного обеспечения уходило совсем немного времени. А что мы имеем сейчас? На рабочем столе громоздятся пиктограммы, для чего они — непонятно. Одно неверное движение мыши и — куда подевалось мое окно. Хуже того, при всей своей избыточной сложности программы Windows не обеспечивают и минимума функциональности, предоставляя огромный набор готовых заготовок вместо небольшого количества примитивов.
Идеология меню хороша в ресторане. Бифштекс с кровью есть, бифштекс с кровью, зеленью и кетчупом тоже. А вот бифштекс с кровью и зеленью, но без кетчупа, увы, рецептурно непредусмотрен... Командная строка не только принципиально отличный механизм управления, это еще и особый способ мышления. Вместо того чтобы лихорадочно искать в меню наиболее подходящие блюда, вы самостоятельно составляете заказ, отмечая индивидуальные особенности его приготовления. Конечно, для этого потребуется изучить язык, а пользоваться меню можно и без знания оного. Однако время, потраченное на обучение, с лихвой окупается в первые же месяцы профессиональной эксплуатации программ. Если в Windows — вы посетитель ресторана, то в UNIX — сам шеф-повар.
Ни для кого не секрет, что с ростом сложности систем эффективность графических интерфейсов падает в геометрической прогрессии. Меню распухают и разветвляются в мощные иерархические структуры, в них становится все труднее и труднее ориентироваться. За время, потраченное на достижение пункта нижней иерархии, можно успеть набрать десяток-другой консольных команд («горячие» клавиши вряд ли стоит принимать в качестве контраргумента, поскольку осмысленных комбинаций на все случаи жизни все равно не хватит).
В редакторе vi управление осуществляется при помощи специального командного языка. Немногим удалось набрать в нем «Hello, World!» без многочасового изучения документации. Однако по мере освоения всех хитростей интерфейса производительность набора текста все повышается, обгоняя показатели пользователей, работающих в Microsoft Word или аналогичном текстовом редакторе.
Строго говоря, интерфейс прикладных программ не имеет никакого отношения к операционной системе, все это можно найти и в Windows. Соответственно, в мире UNIX имеется множество программ с графическим интерфейсом, причем порой намного более неудобным, чем в Windows. Большинство профессиональных текстовых редакторов, электронных таблиц и издательских систем либо перенесены на Windows, либо изначально разрабатывались для нее. Профессиональное рабочее место можно обустроить и на Windows. Дело даже не в том, что Word не поддерживает регулярных выражений или глобальных механизмов поиска — эти возможности легко добавляются. Пользователи, избалованные графическим интерфейсом, отказываются понимать, что компьютер — это сложная вычислительная машина, и, чтобы работать на ней, следует долго учиться. Если вы действительно хотите повысить производительность своего труда — изучите Visual Basic и активно используйте макросы. Конечно, Word никогда не сравнится по эффективности обработки текстов с vi, TeX или EMACS, но и его возможностей для большинства задач окажется более чем достаточно.
Таким образом, ни Windows, ни UNIX для организации автоматизированных рабочих мест пригодны лишь условно. Профессиональный пользователь уверенно чувствует себя в любой системе, а для начинающих неудобны обе. Другой вопрос, что администрирование Windows NT из инженерной задачи превращается в искусство борьбы с ней, но на рядовых пользователях это обстоятельство никак не отражается. Более того, операционные системы семейства Windows худо-бедно сами способны позаботиться о себе, а UNIX без грамотного администратора, скорее всего, не станет работать вовсе. А как известно, хорошие администраторы UNIX очень дороги, да к тому же еще и редки.
ПРОГРАММНО-АППАРАТНАЯ СРЕДА
После перехода на UNIX придется намного тщательнее относиться к выбору аппаратного обеспечения. Со всяким устройством поставляется обязательно драйвер для Windows, причем он автоматически устанавливается в систему при запуске программы setup или install. И хотя производители дешевого оборудования зачастую ограничиваются поддержкой Windows 9x, игнорируя линейку Windows NT, в целом ситуация достаточно благоприятная и подобрать совместимые комплектующие не составляет труда.
Обладателям UNIX приходится намного сложнее. Во-первых, список оборудования, штатно поддерживаемого системой, довольно ограничен. Во-вторых, далеко не весь декларируемый перечень совместимых комплектующих действительно совместим с системой (обычно это характерно для мощных видеокарт, так как производители не склонны раскрывать своих технологических секретов, и зачастую драйверы приходится писать вслепую). Проблема не так остра для серверов, конфигурации которых более или менее предсказуемы, но с офисными компьютерами, традиционно отличающимися большим разнообразием компонентов, придется повозиться. Куда девать несовместимые комплектующие — не ясно. Теоретически их можно списать или обменять, но на практике за такое предложение среднестатистический начальник по головке не погладит.
Для некоторых устройств (в особенности сканеров, фотопринтеров и плат видеозахвата) драйверов под UNIX нет и не будет. О программных модемах (так называемых «вин-модемах») вообще не стоит говорить, поскольку тем, кто работает на UNIX, программный модем «не нужен».
И хотя все перечисленные проблемы в принципе решаемы (особенно если это компьютеры с предустановленной ОС UNIX от крупного поставщика, такого, например, как Sun), задумайтесь — а получите ли вы взамен хоть какое-нибудь преимущество?
Что касается совместимости с программным обеспечением, то дела обстоят еще хуже. Несмотря на все усилия разработчиков, обеспечить полноценную поддержку документов MS Office так и не удается, а потому переход на UNIX, вместо ожидаемого избавления от проблем, только подбрасывает новые. Присланный документ не открывается или отображается в «арабской» кодировке? Что ж, попросите отправителя сохранить его в формате RTF и переслать заново. Все равно не удается открыть? До предела упростите форматирование, переслав документ как простой текст, а потом мы его на месте заново отформатируем. Теперь не открывается наш документ?! Хорошо, сейчас мы сохраним его по-другому...
Добрая треть серверов Web частично или полностью недоступна пользователям UNIX, так они создавались исключительно для просмотра в IE без оглядки на остальных клиентов. С электронными письмами, набранными в Outlook Express (а они по умолчанию сохраняются в формате HTML), наблюдается приблизительно та же картина. Неясно также, что делать с нестандартными форматами, поддерживаемыми исключительно конкретными приложениями Windows (например, PhotoShop). Искать машину с Windows, чтобы перевести их в gif/bmp/jpg?
К тому же очень многих программ на UNIX просто нет (к этой категории преимущественно относятся финансовые программы, системы распознавания текста, электронные словари, ну и, естественно, игры). О всякой полезной мелочи, вроде редакторов печатей или редакторов открыток, не стоит и говорить.
Перевод отечественного офиса на UNIX просто нереален, поскольку на каждом компьютере присутствует огромное количество действительно необходимых программ, отказ от которых невозможен. Их аналоги для UNIX (если они вообще есть) не обеспечивают ни повышенной производительности, ни особенной надежности. Решение установить UNIX, чтобы набирать тексты в редакторе TeX, достойно уважения, но переходить на UNIX ради Star Officе — это, извините, ни в какие ворота не лезет.
Несколько слов о локализации. Поддержка национальных языков в UNIX представляет собой одну большую проблему. Приблизительно две трети всех программ соглашаются понимать русский язык только после индивидуальной настройки, оставшиеся не поддаются переходу на кириллицу в принципе. Одновременная поддержка нескольких языков (например, русского и украинского) теоретически вполне возможна, но для практического осуществления этой затеи понадобится по меньшей мере два суперзнатока UNIX и ящик холодного пива (впрочем, без пива можно и обойтись, но только сумма контракта увеличится вдвое).
Что получается в итоге? Возможность видеть свои родные национальные символы на экране (не без предварительной перекодировки документа, конечно), набирать их на клавиатуре, использовать при наименовании файлов. Автоматический перевод в верхний/нижний регистр, поиск по тексту и, естественно, проверка правописания не гарантированы. Не дай бог, попадется документ, где шрифт специфицирован явным образом, а его кириллической версии у вас нет. Большинство программ UNIX выведет на экран сплошную абракадабру и вряд ли позволит принудительно сменить шрифт (этим, в частности, отличались ранние версии Netscape Navigator).
Символ перевода каретки в UNIX тоже особенный — не такой, как в MS-DOS и Windows, поэтому для совместной работы над документами придется либо выбирать редакторы, воспринимающие оба типа перевода каретки, либо заниматься постоянными перекодировками файла. И кому нужна эта лишняя головная боль?
Коротко говоря, переходя на UNIX, вы добровольно отрезаете себя от всего остального мира. Учитывая, что сотрудники многих компаний работают не только в офисе, но еще и дома, проблема совместимости с Windows оказывается более чем актуальна. Только не предлагайте устанавливать UNIX и на домашние компьютеры — дети, лишенные возможности играть, нас не поймут. Два компьютера или две операционные системы на одном компьютере? Конечно, такой вариант вполне возможен, только не совсем ясно, а ради чего?
ТЕХНИЧЕСКАЯ ПОДДЕРЖКА И ДОКУМЕНТАЦИЯ
Документация бывает двух типов: плохой и очень плохой. Но даже очень плохая документация лучше, чем полное отсутствие таковой. Коммерческие клоны UNIX относятся к первой категории, некоммерческие — ко второй, а операционные системы семейства Windows NT — к третьей. Штатная документация последней — по меньшей мере насмешка над здравым смыслом. Взять хотя бы голубой экран, который появляется при возникновении серьезных неполадок. Даже не пытайтесь искать в документации расшифровку кодов исключений — ее там нет! Зато она присутствует в DDK — комплекте разработчика драйверов — и частично в базе знаний, распространяемой на лазерных дисках по подписке или через Internet. А реестр? Это же сплошное нагромождение недокументированных ключей! Кое-какую информацию можно найти в базе знаний, SDK и DDK, но, во-первых, она неточна и неполна, а, во-вторых, процедура поиска занимает очень много времени.
Коммерческие клоны UNIX обычно документируются весьма обстоятельно, поэтому подобных проблем никогда не возникает. Техническим писателям из Microsoft до такого уровня еще далеко, да они, похоже, к нему и не стремятся, поскольку Windows NT позиционируется как система, которая все делает сама и в доработке не нуждается. Внутренние механизмы полностью скрыты от пользователя, снаружи виден лишь графический интерфейс. Вы можете переключать скорости, давить на газ, но вот регулировать карбюратор никто официально не разрешит, и вы вынуждены делать это вслепую, на свой страх и риск.
Некоммерческие клоны UNIX документируются урывками в свободное от программирования и отладки время. Документация крайне хаотична и беспорядочна. Необходимая информация рассеяна среди комментариев, файлов readme, встроенных подсказок, многочисленных справочников man, периодически выходящих faq и т. д. В крайнем же случае, можно заглянуть в исходный текст и попытаться разобраться в проблеме самостоятельно.
Сказанное относится главным образом к профессиональным пользователям UNIX — программистам и администраторам. Обычный пользователь в исходных текстах не сможет прочитать и комментарии — он и русскоязычную документацию на Office никогда не читал. Кстати, надо отдать должное — по качеству документации офисных программ Microsoft превосходит любого из своих конкурентов. Уже за то, что файл подсказки на русский язык переведен, компании следует сказать большое спасибо. Во всяком случае, на скупость документирования офисных программ еще никто не жаловался.
НАЛИЧИЕ ИСХОДНЫХ ТЕКСТОВ
Исходные тексты операционной системы значительно облегчают ее администрирование. В исходных текстах остро нуждаются разработчики драйверов и специфических приложений. Рядовой же пользователь заглядывает в них от силы пару раз в жизни, да и то больше из интереса, чем по необходимости. Кстати, большинство кустарных дистрибьютивов UNIX распространяются без исходных текстов — спрос определяет предложение. Отсутствуют они и в коммерческих версиях UNIX (или же для ознакомления с ними следует предварительно подписать соглашение о неразглашении).
Чем полезны исходные тексты? При наличии грамотного администратора вы можете самостоятельно решать все возникающие проблемы, включая собственноручное изготовление заплаток и доводку операционной системы на предмет устранения программистских ошибок и повышения ее защищенности. И если поставщик неожиданно заморозит проект, вы сможете продолжить его разработку собственными силами, оперативно внедряя в операционную систему поддержку всех новомодных устройств и технологий. В конце концов свернете прежний бизнес и начнете торговать своим клоном UNIX. Это, конечно, штука и исходные тексты вам совершенно не нужны. Забудьте о них.
Кто сказал, что открытость системы существенно увеличивает качество ее тестирования и способствует скорому обнаружению «дыр» разного размера и калибра? Эксперты всего мира ждут не дождутся, чтобы проштудировать гигабайты исходных текстов очередной версии, ведь не Маринину же им перед сном читать! На самом деле грамотных экспертов по безопасности очень и очень немного. Просмотреть все исходные тексты они физически не в состоянии. Нет времени, да и не за это им платят. А вот какой-нибудь хакер, изнывающий от безделья, может методично просматривать один исходный текст за другим... Сколько таких? И где гарантия, что найденная «дыра» не будет использована во зло?
Закрытость или открытость системы сама по себе еще ни о чем не говорит. Среди открытых систем есть дырявые как решето, а среди закрытых — неприступные, словно скала.
ПРЕЕМСТВЕННОСТЬ
Ругая научно-технический прогресс за его стремительный полет, мы как-то не замечаем, что программы, созданные в 2003 г., в большинстве своем неплохо совместимы с Windows 98, а то и Windows 95! Однажды установив операционную систему, можно забыть о том, что ее, вообще говоря, требуется обновлять (внимание: к заплаткам сказанное не относится), поскольку все необходимые библиотеки поставляются вместе с каждой солидной программой.
В UNIX (и в особенности в Linux) ситуация с преемственностью значительно хуже. Новые версии создаются, как на потоке. И если у вас ядро месячной версии, то срочно в Internet за новым — ведь это же каменный век! Даже коммерческие дистрибьютивы очень быстро устаревают, и к тому же программное обеспечение, разработанное для одного клона UNIX, не всегда выполняется на остальных.
Упрекая Microsoft в чересчур динамичном развитии Windows и сворачивании линейки Windows 9x, поклонники UNIX забывают, что смерть или расщепление клонов UNIX — вполне обычное дело, которым никого не удивишь. Вот и Red Hat отвернулась от индивидуальных пользователей, переключившись на корпоративный сегмент. Кто будет следующим?
Система должна иметь стабильную финансовую поддержку (а не развиваться на основе энтузиазма отдельных индивидов), пользоваться вниманием как производителей аппаратного обеспечения, так и разработчиков программного обеспечения, снабжаться хорошей документацией и современными средствами безопасности... Увы, эти требования во многом взаимоисключающие, и все клоны UNIX так или иначе не идеальны. Гусарский наскок на рынок офисных компьютеров все еще будоражит воображение апологетов UNIX, поэтому в настоящий момент UNIX динамично развивается, отказываясь от обратной совместимости в угоду сиюминутной выгоде. Кто знает, лет через пять, может, все и успокоится, но сейчас UNIX к употреблению органически не готова. Увы.
ЮРИДИЧЕСКАЯ ЗАЩИЩЕННОСТЬ
Представьте себе картину: просматривая свежую корреспонденцию и попивая утренний чай, вы неожиданно обнаруживаете письмо от Sun Microsystems, где предписывается немедленно прекратить использование Windows NT или же заплатить названной компании определенную сумму в долларах, в противном случае на вас будет подан иск за незаконное использование языка Java в составе системы.
Как бы там ни было, но во всех конфликтах с конкурентами Microsoft, если таковые возникли, разбиралась сама, и ее клиентов они никоим образом не затрагивали. В случае свободно распространяемых клонов UNIX ситуация иная. Хотите использовать их? Пожалуйста! Только помните, что юридически вы не защищены. Нет никаких гарантий, что неожиданно не окажетесь втянутыми в судебную тяжбу или же из следующей версии UNIX не будет изъяты некоторые жизненно необходимые вам компоненты.
Коммерческие клоны UNIX с юридической точки зрения защищены ничуть не хуже Windows, однако и стоимость у них соответствующая. Кстати, о стоимости...
СТОИМОСТЬ
Единого мнения на этот счет нет. С одной стороны, полноценный дистрибьютив некоммерческого UNIX даже у официальных распространителей можно приобрести буквально за копейки (про пиратский рынок и упоминать не стоит). В комплект поставки входит большое количество разнообразного программного обеспечения, более или менее полно покрывающего потребности сервера локальной сети, но категорически недостаточного для офисного использования. Это объясняется тем, что офисное программное обеспечение распространяется преимущественно на коммерческой основе и по цене сопоставимо с приложениями Windows аналогичного назначения (что, собственно, и не удивительно, так как зачастую и те и другие выпускаются одним производителем).
Про издержки, связанные с несовместимостью оборудования, мы уже говорили. Добавьте сюда расходы, вызванные несовместимостью программного обеспечения, и не забудьте о затратах на техническую поддержку и консультации. Если после всех расчетов и оптимизации бюджета UNIX по-прежнему будет казаться вам экономичным вложением средств, попробуйте найти толкового администратора, согласного тянуть все это хозяйство за номинальную сумму. Не надейтесь, что однажды настроенная UNIX в дальнейшем будет исправно работать сама по себе. Не сегодня-завтра вступят в действие новые законы, изменится схема налогообложения, и существующее программное обеспечение необходимо будет кардинально модернизировать. Затем появятся новые устройства передачи данных. Быстрые, дешевые и надежные. Сумеете ли вы самостоятельно подружить их с UNIX, учитывая, что для этого может потребоваться перекомпиляция ядра?
Неоднократно проверено: дешевый сыр бывает только в мышеловке. Лишь глупцы называют UNIX системой для бедных. Дешевизна ее приобретения оборачивается дороговизной администрирования и технической поддержки. В мире все уравновешено. Иначе и не может быть. Если Microsoft зарабатывает свои миллиарды на продажах программного обеспечения, то поставщики UNIX — на ее обслуживании.
Для энтузиастов программирования UNIX действительно наиболее дешевый выбор, но только не для клерков и неквалифицированных пользователей!
ЗАКЛЮЧЕНИЕ
И наконец хотелось бы сказать: не пытайтесь переделывать UNIX в Windows. У Microsoft есть отличный продукт — Office, и равных ему не существует. Господствующее положение Windows на рынке офисных компьютеров как раз и объясняется тем, что это действительно хорошая система, которая всех устраивает. UNIX же прочно удерживает рынок серверов и мощных вычислительный центров.
Время само расставит всех по своим местам. Ажиотаж вокруг офисного варианта UNIX либо постепенно затихнет, либо UNIX приобретет худшие черты Windows, потеряв то, в чем операционная система UNIX всегда был традиционно сильна. Какой смысл переделывать трактор в автомобиль? Если вам нужен автомобиль — приобретайте автомобиль. Если трактор — приобретайте трактор. Если же нужно и то, и другое — купите лошадь. На ней можно и кататься, и дрова возить. Ну а навоз и все сопутствующие ему проблемы — это издержки универсальности. Не хотите иметь дело с навозом — покупайте отдельно автомобиль и отдельно трактор.
Крис Касперски — независимый автор. С ним можно связаться по адресу: kk@sendmail.ru.