![]() | |||
Открытые системы
Solaris или Windows NT?
Андрей Кожемяка
Не так давно (по историческим меркам) фирма Microsoft выпустила на рынок операционную систему Windows NT. Планировалось, что она станет тем самым снарядом, который разрушит до основания бастион UNIX. Однако снаряд превратился в бумеранг – ответный удар наносит SunSoft.
Вопреки ожиданиям аналитиков, мир UNIX воспринял удар стойко. Контратаку отразить всегда трудно, особенно если ставка делалась на блицкриг. Все системы клана UNIX живут и крепнут, а одна из них начала делать то, чего все ждали от NT. Данная статья призвана пролить свет на столкновение гигантов – SunSoft Solaris и Microsoft Windows NT.
История конфликта
В 1987 году фирмы IBM и Microsoft начали работу над операционной системой нового поколения – OS/2. Первые версии этой системы, ныне уверенной поступью движущейся по рынку, особого успеха не имели, поэтому партнеры занялись созданием новых 32-разрядных многозадачных графических систем – OS/2 2.0 и OS/2 NT3.0 (NT – New Technology, то есть новая технология). Последняя отличалась тем, что разрабатывалась как мобильная, то есть должна была существовать на разных платформах. Однако история распорядилась иначе – тактического успеха добилась графическая оболочка MS-DOS, а именно MS Windows, что привело к конфликту между компаниями. IBM занялась "доводкой до ума" OS/2 2.0, а программисты из другой фирмы, наскоро переделав интерфейс, ухудшив совместимость с OS/2, изменив название файловой системы и произведя еще кое-какие манипуляции, переименовали еще недоделанную OS/2 NT в Windows NT (это не случайно – вместо интуитивно понятного интерфейса OS/2 появился ужасающий и страшно неудобный суррогат оного из Windows 3.0) и продолжили ее разработку. Вскоре система была готова выйти на рынок.
В это же время программисты из Sun Microsystems продолжали работу над системой Solaris, принадлежащей славному семейству UNIX. Система включала в себя все, чего так не хватало персоналкам: графический интерфейс, сетевые возможности (в равной степени это относилось к поддержке как глобальных, так и локальных сетей), многозадачность и одновременную работу нескольких пользователей. Ядро системы родилось в начале 80-х, и за несколько лет в нем были исправлены практически все ошибки, несколько позже был отточен и графический интерфейс. Надо заметить, что свои 40% рынка рабочих станций фирма Sun завоевала во многом благодаря Solaris. К началу 90-х появились новые процессоры линии х86, хоть и имеющие несколько меньшую производительность, чем RISC-процессоры SPARC – сердце компьютеров Sun, но все же... Кроме того, чувствовалось, что пользователь созрел. Короче говоря, началась работа по переносу системы на PC-совместимую технику.
Первые бои
Три года назад (плюс-минус несколько месяцев) обе системы ворвались на рынок ОС. За спиной Solaris были магические 2/5 рынка рабочих станций и известность UNIX в деловом мире. Windows NT держалась на имевшемся в то время авторитете Microsoft. С первых же дней события развернулись не так, как планировал Билл Гейтс. Первоначально все считали, что NT быстро захватит огромный рынок PC (конкурентов как-то не углядели), а затем начнет планомерное перетекание на другие платформы. Однако пользователи нуждались в системе, удовлетворяющей хотя бы одному из следующих требований: та же мощность, но более экономичное отношение к ресурсам компьютера; большая мощность при том же "отъеме" ресурсов, разнообразие ПО, рассчитанное на красоты новой ОС. Закрепившись на компьютерах линии х86, NT получила больше места на машинах с процессорами MIPS и DEC Alpha, однако заняла лишь незначительную часть и без того небольшого рынка этой техники.
В это время к игрокам неожиданно присоединилась IBM, наконец-то доделав OS/2. Фирма Microsoft постаралась убить сразу четырех зайцев: во-первых, создать маленькую такую ОС для победы над IBM, во-вторых, сделать то же самое, но переносимое, в-третьих, создать "тяжелую", но мощную систему, и наконец, в-четвертых, перенести свои продукты на платформу PowerPC. Так родились проекты MS Windows 4.0 (она же "Чикаго", она же Windows'95), MS Windows NT Workstation и MS Windows NT Advanced Server (последние готовились и для PowerPC, где NT не существовала в виде одного продукта). Первый не реализован до сих пор (если судьба будет благосклонна к Microsoft, то "95-я форточка" появится в ближайшее время, второй конкурирует с OS/2 (судя по всему, это у него слабо получается), а последний все же сумел несколько расширить рынок (собственно, про него-то мм и будем говорить). В то же время Sun постепенно выпускала новые версии, чтобы справиться с ошибками старых. Вначале ошибок было много – переносу подверглась до конца не обкатанная вторая версия, но система вела войну на чужой территории, в отличие от OS/2 и Windows NT. Сопутствующие рынки (Alpha и так далее) были отданы на откуп всем, кто пожелает, поскольку, с точки зрения Sun, были бесперспективными. На рынке серверных OC начались первые схватки описываемых систем, заканчивающиеся с переменным успехом.
День настоящий
Сегодня перед нами две мощные операционные системы, обе 32-разрядные, многозадачные и графические. Требования к аппаратуре впечатляют (сейчас речь только о PC): процессор i386SX (лучше все же i486, а для Solaris при многопользовательской работе не лишним будет Pentium), 16Mb памяти (для мазохистов; при необходимости запускать только ОС лучше расширить до 64 1итили более), жесткий диск (хотя бы 540 Mb), монитор (если глаза не лишние, то не менее, чем с 17-дюймовой диагональю), мышь (для Solaris удобнее трехкнопочная). Резонный вопрос: а что можно получить за такую "цену"?
И вот тут-то начинается самое интересное. Несмотря на все свои недостатки, Windows NT Advanced Server является неплохой сетевой ОС, но не более того. Использование ее в этом качестве, конечно, достаточно удобно, но следует учесть, что многие "удобства" на клиентских рабочих местах появятся только в случае применения на них Workstation (неслабый такой клиент получается) или Windows'95. В общем и целом, подобная вычислительная система будет уж слишком "тяжелой" и дорогостоящей, а что-нибудь вроде NetWare/UNIXWare на таком "железе" покажет чудеса быстродействия или с таким же быстродействием снизит стоимость системы раза в два. Самым больным местом NT является программное обеспечение, точнее, его отсутствие. Для нее написано очень мало приложений, а их перенос с других платформ затруднен. Сейчас используют, в основном, программы для DOS/ Windows 3.x в режиме эмуляции, что явно не лучший выход – глупо покупать дорогую систему для того, чтобы эмулировать дешевую, но обладающую меньшей скоростью. Кроме этого, поддерживаются программы для OS/2 1.х, но только не имеющие графического интерфейса.
С широко разрекламированной поддержкой стандартов POSIX, пришедших из мира UNIX, складывается не самая простая ситуация: теоретически-то они поддерживаются, а практически – толку с того никакого (ничего не слышно о людях, сумевших извлечь практическую пользу из этого). Теоретически можно ожидать миграцию программного обеспечения из OS/ 2 и мира UNIX, однако это намного сложнее, чем кажется. Во-первых, Microsoft специально ухудшила совместимость с OS/2, чтобы избежать переноса прикладных программ из NT (никто не знал, что в положении "бедной программами" окажется NT), да и не для того фирмы работают над "софтом" для "полуоси", показывая тем самым ее важность в собственных планах, чтобы взять и отдать с таким трудом созданное ее главному конкуренту. Во-вторых, перенос с UNIX на NT ничуть не легче: создать нормально работающее полноценное приложение, полностью отвечающее POSIX и ничему больше, практически невозможно, а другие стандарты NT не поддерживает.
С Solaris дела обстоят несколько по-другому: система является многопользовательской. Что это дает? Приведем пример: имеется небольшая фирма, которая использует в работе шесть компьютеров на 286-м процессоре. Для большинства решаемых фирмой задач эта техника пока подходит, однако иногда требуется что-нибудь более производительное. В связи с необходимостью соединить компьютеры в сеть для использования в качестве сервера приобретен мощный PC (типа DUAL Pentium 120,64 Mb RAM, 2 Gb HDD). Если установить на сервер классическую сетевую ОС для PC (NetWare, Windows NT, LAN Server и тому подобное), фирма получит сеть из шести морально устаревших компьютеров и почти всегда простаивающего без дела "последнего писка моды".
Совсем другая картина в случае использования Solaris: на каждый PC устанавливается эмулятор терминала, что позволяет, учитывая многопользовательские возможности системы, запускать некоторые задачи на сервере, наблюдая результат у себя на мониторе. При этом оказывается, что потери быстродействия минимальны (обычная нагрузка на компьютер при работе на нем одного пользователя – 5%), то есть возникает ощущение того, что на каждом столе мощный компьютер.
Собственно, если быть до конца честным, подобное возможно и для других систем семейства UNIX, "живущих" на PC: UNIXWare, SCO Open Desktop, Dell UNIX и так далее, однако есть несколько причин, по которым можно предпочесть Solaris. Во-первых, для него создано больше программного обеспечения: несмотря на улучшение совместимости между различными диалектами UNIX, перенос сложного программного продукта с одного из них на другой до сих пор является непростой задачей, однако перенос "софта" со SPARC'OB на PC – это перенос в рамках одной ОС и даже одного диалекта; кроме того, можно догадаться, что "софтверные" фирмы никогда не обходили вниманием ОС, контролирующую 40% (с клонами SPARC уже 50%) рынка рабочих станций. Во-вторых, если в фирме уже имеется рабочая станция, то с вероятностью, близкой к 1/2, это SPARC. B-третьих, что является продолжением "во-вторых", после переноса Solaris на PowerPC появится возможность обойтись для любых целей одной ОС (конечно, если не использовать несовместимые со SPARC рабочие станции, компьютеры типа ДВК или Apple Macintosh). Ну и в конце концов, выбор диалекта UNIX чем-то сродни выбору жены, и стоит задуматься над тем, что многие предпочитают "жениться" именно на семейке Solaris.
Что дальше
В ближайшее время обе системы будут, скорее всего, активно развиваться, и мы увидим их 64-разрядные версии. После сокрушительного провала, ожидающего Windows'95, NT станет основным продуктом Microsoft, и ей будет уделяться больше внимания. Solaris сменит разрядность при поставках компьютеров на базе нового процессора UltraSPARC, a NT – тогда, когда захотят производители, так как система уже трудится на 64-разрядном процессоре.
Новым витком "войны ОС" станет расширение зоны боевых действий за счет платформы PowerPC, на которой Solaris получает еще одно преимущество перед Windows NT и OS/2 – эмуляция DOS и Windows. В последних двух ОС такая работа производилась в "тепличных условиях": на процессорах х86, где все вышеуказанное и создавалось. У Solaris же, напротив, имеется опыт запуска приложений для PC на аппаратно не совместимой с ними платформе. Процессоры PowerPC, так же как и SPARC, аппаратно не совместимы с Intel x86, что, возможно, позволит Solaris заработать еще несколько очков. А в общем: подождем – увидим.
Вот такая картина складывается на рынке. Конечно, можно утверждать, что все не так, что UNIX уже мертв (так часто говорят апологеты Windows NT) и так далее. Однако факты таковы: планы Microsoft по захвату рынка не выполнены, и этой компании остается лишь мечтать о том, что Windows'95 хотя бы догонит OS/2 по объему продаж раньше 2095 года. И напротив, изделие SunSoft превратилось в этакий современный DOS, охватывающий все большее число компьютеров. Вполне реально, что менее чем через год количество проданных копий Solaris достигнет критической массы и тогда начнется активное производство "софта" для этой ОС, а это приведет к еще более широкому ее распространению. А может быть, этого не случится. В общем, как говорили классики: да пребудет с нами UNIX.