Разделы

Бизнес ПО Свободное ПО

Windows и Linux удалось договориться?

В начале ноября прошлого года владелец платформы Windows и один из ведущих поставщиков Linux договорились о сотрудничестве. Взаимодействие Microsoft и Novell позволит Linux и Windows лучше "понимать" друг друга – это необходимо многим потребителям, прежде всего, в корпоративном секторе. Но наибольшую известность приобрёл другой пункт договора – о взаимном отказе от патентных исков к клиентам и некоторым разработчикам; он вызвал горячую дискуссию. Многие сторонники открытого кода подвергли соглашение критике, а Фонд Свободного ПО включил запрещающие подобный "сговор" пункты в черновик новой версии GPL.

Конкуренция между платформами Windows и Linux (во многом – между Microsoft и открытым ПО в целом) в последние годы стала одной из важнейших "интриг" на рынке информационных технологий.

За последние годы было создано немалое количество открытых, или свободных, программ. Они распространяются без ограничений, их исходные коды открыты для модификации и создания новых вариантов. Начавшись с компьютерщиков-энтузиастов, нарастающая волна открытого ПО захлестнула множество компаний (включая IBM и Hewlett Packard). При их участии постепенно создавалась платформа, оставившая позади "традиционный" Unix и способная на равных конкурировать с доминирующей на рынке продукцией Microsoft. Совместная работа многих независимых участников над открытыми проектами показала себя весьма эффективной и с технической, и (во многих случаях) с коммерческой точки зрения.


Стив Баллмер публично зая вил о том, что в Linux нарушаются патенты Microsoft

Взаимодействие между двумя "мирами" ПО было связано с немалыми проблемами. Закрытые форматы данных и сетевые протоколы, применяемые Microsoft, было сложно реализовать в открытом ПО. Например, когда в 2002 г. вышел пакет OpenOffice.org (полноценная свободная альтернатива Microsoft Office), реализация в нём "офисных" форматов Microsoft была далеко не идеальной; с тех пор ведутся постоянные работы по её улучшению, но достичь абсолютной совместимости вряд ли возможно в принципе.

Компания Microsoft, правда, периодически говорит о взаимодействии с сообществом открытого ПО и предпринимает некоторые инициативы; но, как правило, они либо касаются программного "наполнения" для платформ Windows и .NET, либо попросту не принимаются всерьёз основной частью сообщества.

Так, новая версия офисных форматов Microsoft, основанная на XML, была опубликована, но сторонники открытого ПО в основном предпочитают созданный консорциумом OASIS формат Open Document Format (ODF). Для этого была веская причина: длительное время формат Microsoft Open XML предоставлялся на несовместимых с открытым ПО патентных условиях. Сейчас, однако, они исправлены, а "война форматов" продолжается.

Мост через пропасть

Но от события, произошедшего в начале ноября 2006 года, "отмахнуться" невозможно. Компании Microsoft и Novell объявили о "партнёрстве" с целью улучшения взаимодействия Windows и Linux. Компании создадут совместный исследовательский центр, который будет работать над совершенствованием совместимости по нескольким направлениям (выполнение каждой из ОС в "виртуальной машине" под управлением другой ОС, общее управление сетевыми сервисами, а также переносимость всё тех же "офисных" файлов). Более того – Microsoft приобретает некоторое количество (примерно 70 тысяч в год) купонов на приобретение, поддержку и обслуживание Novell Linux (SuSe). Купоны предназначены для заказчиков Microsoft, желающих использовать Linux вместе с Windows. (Компания успешно выполняет план по их распространению).

Как заявил исполнительный директор Microsoft Стив Баллмер на пресс-конференции 2 ноября, соглашение станет мостом, соединяющим открытое и проприетарное (закрытое) ПО.

Заметим, что компания Microsoft и раньше заключала соглашения о техническом сотрудничестве с некоторыми поставщиками продуктов с открытым кодом – например, SugarCRM и JBoss. Но впервые участником соглашения стал весьма заметный поставщик Linux для корпоративного рынка. (С тех пор компания Red Hat стала участником программы Microsoft Interop vendor Alliance, но это связано в первую очередь с продукцией всё той же JBoss, ставшей теперь частью Red Hat).

Соглашение Microsoft-Novell, вскоре прозванное "Microvell", стало подлинной неожиданностью для сообщества открытого ПО.

К сожалению, далеко не все сочли новость хорошей. И речь отнюдь не только об убеждённых противниках компании Microsoft, посылающих дежурные проклятия Биллу Гейтсу. По их мнению, разумеется, компания Novell заключила сделку с дьяволом. Но без дополнительных аргументов это мало кого интересовало бы.

Чем заменить иностранные ECM
Импортонезависимость

Однако среди договорённостей обнаружился пункт, который, возможно, помогает Microsoft заложить мину под рынок открытого ПО в целом. Microsoft и Novell обязались не подавать в суд на клиентов друг друга за нарушение в применяемом продукте патентов другой компании. Предусматриваются отчисления за это обязательство – причём Microsoft платит заметно больше, чем Novell.

Окна, Окна, я – Пингвин! Как слышно?

Конечно же, патенты – далеко не единственная причина для соглашения Microsoft и Novell. С тех пор, как открытое ПО начало активно распространяться в коммерческом секторе, проблема его взаимодействия с решениями софтверного гиганта не перестаёт быть насущной.

Так, операционная система Windows и ряд других продуктов Microsoft установлены на подавляющем большинстве клиентских (настольных и портативных) компьютеров. "Типовой" вариант предусматривает серверную инфраструктуру также под управлением продукции Microsoft (Windows Server, Exchange...) Клиенты и серверы взаимодействуют при помощи сетевых протоколов, форматов данных и т.п., разработанных в Microsoft. Заставить компанию отказаться от них в пользу открытых стандартов, созданных другими разработчиками, в большинстве случаев невозможно.

Николай Шуткин, ВТБ: Основной фокус в ближайшие годы мы сделаем на автоматизации и самообслуживании
ИТ в банках

Потребитель может выбрать для серверов платформу Linux – благо на серверном рынке её позиции вполне крепки. Или же, наоборот, в рамках Windows-сети опробовать активно развиваемые клиентские решения на базе открытого ПО (под тем же Linux или даже под Windows, например, офисный пакет OpenOffice.org или почтовую систему Thunderbird). Но, чтобы всё работало идеально, программы должны "говорить на том же языке", что и продукция Microsoft. Между тем, нужные протоколы и форматы отнюдь не всегда и не полностью открыты.

Разработчики давно пытаются справиться с этой задачей. Наиболее важный вклад внесли, вероятно, создатели проекта Samba. Они "разобрали" и реализовали важнейшие сетевые протоколы, используемые Windows – прежде всего SMB (Server message Block). На некоторых этапах работать приходилось без всякой документации – просто "перехватом" пакетов; такие исследования называются реверс-инжинирингом (reverse engineering).

К настоящему моменту Samba позволяет Linux-системе предоставлять многие сервисы Windows (от файлового сервера до контроллера домена) или, наоборот, подключаться к Windows-серверам. Некоторая часть протоколов реализована по документации, выпущенной Microsoft – но её хватает далеко не всегда.

Понятно, что созданный при помощи реверс-инжиниринга продукт не будет идеально надёжным. К тому же Microsoft всегда может изменить свои протоколы в новых версиях ПО, и Samba придётся "догонять" (немалые изменения, в частности, произведены в Windows Vista).

Более того – в США и других странах, где на программное обеспечение выдаются патенты, любой из протоколов может оказаться запатентован. А если это так, то Microsoft могла бы попробовать запретить Samba или потребовать оплаты лицензий.