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

Конкуренция между платформами 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 заключила сделку с дьяволом. Но без дополнительных аргументов это мало кого интере совало бы.

Однако среди договоренностей обнаружился пункт, который, возможно, помогает 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 или потребовать оплаты лицензий.

Европейская комиссия еще в 2004 году обратила внимание на вопрос взаимодействия "стороннего" ПО с продукцией Microsoft. Компании периодически назначаются немаленькие штрафы. Microsoft подготовила документацию, но Европейская комиссия по-прежнему считает ее неадекватной и угрожает новыми санкциями.

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

Защита от неизвестности

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

Рон Овсепян: Соглашение с Microsoft никоим образом не является признанием, что Linux нарушает какую-либо интеллекту альную собственность Microsoft

Компания Microsoft дала обязательство не подавать в суд на клиентов (конечных пользователей) Novell за нарушение своих патентов. Такое же обязательство дала и Novell - т.е. если в Windows, Microsoft Office и т.п. нарушен какой-либо патент Novell, пользователи будут защищены от иска с ее стороны.

Кроме того, Microsoft не будет подавать в суд за нарушение патентов на "некоммерческих" разработчиков свободного ПО (т.е. на энтузиастов, не получающих вознаграждения за создание кода) и на личных участников проекта OpenSuSe.

Официально, за такое патентное разрешение компании заплатили друг другу - причем Microsoft платит больше, поскольку у Novell (предположительно) больше важных патентов, поэтому "в итоге" деньги перешли от Microsoft к Novell. Впрочем, Novell также будет отчислять Microsoft некоторый процент с продаж открытых продуктов. (При этом "кросс-лицензирования", обычного для патентных соглашений, в данном случае не будет; друг на друга компании по-прежнему могут подать в суд).

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

Договор стал защитой клиентов (и некоторых из некоммерческих разработчиков) от весьма расплывчатой, но реальной угрозы. Если в открытом ПО есть "интеллектуальная собственность" (точнее, нарушение патентов) Microsoft, то, по американским законам, отвечать за это могут даже конечные пользователи; владелец патента имеет право взыскать с них по суду разумную лицензионную оплату. (Дополнительные санкции возможны лишь в случае, если патент нарушен намеренно - это к конечным пользователям, скорее всего, относиться не может).

Отсель грозить мы будем...

Впрочем, хотя подробности угрозы неизвестны, само ее наличие не заметить невозможно. Об эт ом позаботился Стив Баллмер.

На ноябрьской конференции профессионалов SQL Server в Сиэтле (Австралия) Баллмер пояснил смысл соглашения с точки зрения Microsoft. По его словам, компания стремится решить два вопроса одновременно. Многие клиенты используют как Windows, так и Linux и хотели бы улучшить их взаимодействие. Между тем "тот факт, что Linux использует нашу патентованную интеллектуальную собственность - проблема для наших акционеров. Мы тратим семь млрд долл. в год на исследования и разработки, и акционеры ожидают, что мы... получим выгоду от патентованных инноваций".

Соглашение с Novell, по мнению Стива Баллмера, снимает оба вопроса одновременно. В частности, Novell "должным образом вознаградила Microsoft за интеллектуальную собственность, что для нас очень важно. В некотором смысле можно сказать, что у каждого, кто применяет Linux в дата-центре, есть неотмеченная задолженность - причем речь не только о патентах, принадлежащих Microsoft".

Таким образом, руководитель Microsoft публично объявил фактом наличие в Linux нарушения патентов Microsoft. Правда, предположенияна эту тему делались и раньше. Наиболее известное и детально проработанное из них - исследование, проведенное в 2004 г. Patent Public Foundation. Среди 283 патентов, которые (согласно этому исследованию) потенциально нарушает ядро Linux, есть и 27 принадлежащих Microsoft. Однако авторы исследования подчеркивают, что ни сам факт нарушений, ни действительность патентов не были проверены. (По законодательству США, выданный патент вполне может оказаться полностью или частично недействительным в результате судебного процесса).

Заметим, что утверждения Баллмера о якобы существующих патентных нарушениях в Linux отнюдь не начались с подписания соглашения Microsoft-Novell. Еще в 2004 году, на форуме для лидеров азиатских правительств, проведенном Microsoft в Сингапуре, Баллмер заявил, что "когда-нибудь, для всех стран, вступающих в ВТО, кто-нибудь придет за деньгами" за интеллектуальную собственность в Linux. Пр и этом он сослался на исследование Public Patent Foundation. Однако теперь Баллмер ни на что не ссылается, говорит о "факте" и о том, что нарушены именно принадлежащие Microsoft патенты. Нельзя, правда, исключить, что г-н Баллмер просто было неосторожен в формулировке.

Рон Овсепян, исполнительный директор Novell, ответил на высказывание Баллмера открытым письмом. Он считает главной частью соглашения работу над техническим взаимодействием Windows и Linux, и опровергает "недавние заявления Microsoft по вопросу Linux и патентов". Как сказано в письме, "соглашение с Microsoft никоим образом не является признанием, что Linux нарушает какую-либо интеллектуальную собственность Microsoft... Мы категорически возражаем против использования соглашения для предположений о том, что члены сообщества Linux должны Microsoft что-либо".

Microsoft вскоре опубликовала заявление о том, что соглашение действительно не является признанием факта нарушений. "Microsoft и Novell согласились не соглашаться" в вопросах о нарушении патентов, согласно этому документу.

Несмотря на это, Баллмер по-прежнему упоминает соглашение с Novell в контексте оплаты "интеллектуальной собственности", якобы использованной в Linux. На февральской встрече с финансовыми Аналитиками он заявил, что соглашение "четко устанавливает: открытый исходный код не бесплатен, и должен уважать чужие права интеллектуальной собственности так же, как любой другой конкурент".

Утверждения Баллмера звучат вполне однозначно, и, в принципе, сами по себе могут стать предметом судебного разбирательства. Публичное заявление о "факте" использования чужой "интеллектуальной собственности" в Linux может быть воспринято как клевета на его создателей и распространителей. При этом Microsoft хранит молчание о том, какие патенты якобы нарушены.

По мнению Ричарда Столлмана, хорошо, что соглашение появилось именно сейчас: теперь можно учесть его в разработке GPL 3

Немалую популярность приобрел сайт showusthecode.com, предлагающий Microsoft прояснить, какие именно ее права нарушены, до 1 мая 2007 г.; в противном случае "все, кто поддерживают данную инициативу, будут считать заявления компании пустыми и клеветническими". Немалое количество профессионалов и компаний присоединились к предложению, но на момент выхода статьи ни одной общеизвестной компании в списке нет. Такое публичное требование могло бы быть подготовкой к судебному процессу по обвинению в клевете; но для того, чтобы сколько-нибудь успешно вести процесс против Microsoft, требуются огромные финансовые ресурсы, а их обладатели пока что не сказали свое слово.

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

Критика набирает обороты

Благодаря "патентному" пункту соглашения, оно было воспринято "в штыки" немалой частью разработчиков, распространителей и сторонников открытого ПО. Комментарии Microsoft, разумеется, подлили масла в огонь.

Одними из первых с критикой выступили разработчики Samba, хотя их продукт вполне может выиграть от сотрудничества Microsoft и Novell. Один из основателей и ведущих авторов Samba, Джереми Аллисон, работал в Novell c 2005 года; но после заключения соглашения он ушел из компании и перешел на работу в Google. В письме о своем увольнении он заявил, что считает соглашение "ошибкой, которая повредит успеху Novell в будущем... пока патентное соглашение с Microsoft действует, мы никак не сможем исправить отношения с сообществом".

По словам Скотта Креншоу, директора Red Hat по управлению продуктами и маркетингу, немалое количество разработчиков ПО покинули Novell.

Известный активист открытого ПО Брюс Перенс в открытом письме обвинил Novell в предательстве по отношению к сообществу. П о мнению Перенса, Novell теперь будет вместе с Microsoft поддерживать патентную систему, угрожающую всему открытому ПО как таковому. При этом ни Novell, ни ее клиенты не защищены от патентных исков от других компаний (кроме Microsoft). В марте Брюс Перенс провел пресс-конференцию с критикой соглашения, причем она проходила непосредственно напротив входа на официальную конференцию Novell - BrainShare (Солт-Лейк-Сити, штат Юта, США).

Джонатан Шварц, президент и исполнительный директор Sun Microsystems, присоединился к критике. В ноябре он объявил о долгожданном переводе Java в разряд открытого ПО, под лицензией GPL. Выбор в ее пользу был, по утверждению г-на Шварца, сделан в значительной степени из-за соглашения Microsoft-Novell, которое "предполагает, что свободное и открытое ПО не безопасно без оплаты отчислений... Это нонсенс. Свободное ПО может быть свободно и от отчислений, и от препятствий к широкому, глобальному принятию и использованию". Те, кто утверждает иное, "просто продвигают собственные замыслы без какого-либо фактического основания".

GPL 3 - ответ запретом на запрет?

Среди противников соглашения особое место занимает Фонд Свободного ПО (Free Foftware Foundation, FSF) и лично его основатель, Ричард Столлман.

Все современное богатство открытого ПО в какой-то мере происходит от проекта GNU, начатого Столлманом в 1980-х годах. Столлман считал и считает, что в идеале все программы должны быть свободными. Свобода запускать продукт, распространять любое количество копий, изучать и модифицировать должна быть у всех пользователей.

Лицензия GNU General Public License, или GPL (первая версия - 1989 г., вторая - 1991) была разработана, чтобы защитить эти свободы. Основная идея GPL - "запрет на запрет". Если разработчик программы выпустил ее под GPL, то при любом ее распространении должна предоставляться возможность получить исходный код. Причем с этим кодом можно делать что угодно - изучать, переделывать, передавать кому-либо еще. "Закрыть" GPL-программу не льзя, причем этот запрет был подтвержден судебными процессами в США и Германии.

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

Именно на лицензию GPL направлена основная критика компании Microsoft.

Цель GPL - не допустить "закрытия" выпущенных под ней программ, но соглашение Microsoft-Novell никак не противоречит ее нынешней версии (GPL 2). Ричард Столлман считает нужным внести в новую вариант лицензии запрет на подобные соглашения. Работа над GPL версии 3 идет уже больше года, и в предыдущих черновых версиях есть требования, касающиеся патентов, но соглашение вполне совместимо с ними. По мнению Столлмана, хорошо, что соглашение появилось именно сейчас: теперь можно учесть его в разработке GPL 3 и убедиться, что финальная версия лицензии будет запрещать подобные сделки.

Новый черновой вариант GPL версии 3 вышел 28 марта. К нему прилагается обширное разъяснение причин внесенных по сравнению с предыдущим вариантом изменений. В пункт 11, посвященный патентам, добавлены новые параграфы 4 и 5, нацеленные против соглашений типа Microsoft-Novell. Однако далеко не очевидно, что эти параграфы действительно "сработают".

Параграф 4 касается случая, когда кто-либо распространяет или "обеспечивает распространение" GPL3-программы и при этом предоставляет кому-либо из получателей патентную лицензию (этот термин включает обещание не подавать патентные иски и т.п.). Эта лицензия, по условиям параграфа, автоматически распространяется на всех получателей той же программы.

Брэд Смит: Microsoft не отказывается от патентной системы

Поскольку Microsoft в рамках соглашения распространяет купоны на Novell/SuSe Linux, предполагается, что компания при этом "обеспечивает распространение". И если, напри мер, ядро Linux окажется под GPL 3, то предоставляемые Microsoft гарантии (отказ от патентного преследования) окажутся применимы ко всем пользователям ядра.

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

Если четвертый параграф расширяет любую патентную лицензию до всеобщей, то параграф 5 запрещает распространение GPL-программ тем, кто состоит в соглашениях строго определенного вида. Чтобы этот запрет действовал, соглашение должно подпасть одновременно под несколько условий, сформулированных довольно заковыристо и "нацеленных" специально на Novell: Другая сторона ведет бизнес по распространению ПО (в случае Novell другая сторона - Microsoft) Производится оплата согласно объемам распространения (Novell платит Microsoft некоторые отчисления с объема продаж SuSe Linux) Кому-то из тех, кто приобретает GPL3-программу, другая сторона по данному соглашению предоставляет патентную лицензию (в широком смысле слова) Лицензия не позволяет им полностью использовать предоставленные GPL свободы (или действует только в случае, если свободы не используются). Речь идет о свободе запуска, копирования, изучения и модификации. Поскольку Microsoft предоставляет "лицензию" (точнее, обязательство не подавать иск) только "конечным пользователям", FSF предполагает, что от них требуется не распространять ПО дальше

Формулировки настолько узки, что обойти этот параграф, вероятно, окажется просто. После выхода GPL 3 подобные соглашения должны будут заключаться иным образом, чтобы какое-либо из условий не выполнялось - например, без привязки отчислений к количеству проданных копий.

Более того - даже в нынешнем виде соглашение Microsoft-Novell может и не подпасть под условия параграфа 5, в зависимости от подробностей соглашения (они пока что не опубликованы). Вполне возможно, что "конечные пользователи& quot; - это все, кто приобрели и используют Linux-продукты Novell. От того, что кто-либо из них распространяет копии Novell Linux, "защита" от Microsoft не изменяется. (Но вот получатели копий уже не "защищены").

Попытка FSF запретить "патентные сговоры" при помощи новой версии GPL вряд ли окажется эффективной, и при этом она может привести к потере главного достоинства прежних версий GPL. Их требования были, в конечном счете, просты и ясны: при любой передаче копии ПО нужно предоставить (как минимум по запросу) исходный код, и не пытаться запретить что-либо получателю. "Закрыть нельзя", и не более того.

Введение сложных условий, таких как параграфы 4 и 5, создает поле для различных интерпретаций. Причем отнюдь не факт, что в суде победит мнение FSF. Подобные "юридические шахматы", соревнование трактовок - неисчерпаемая кормушка для юристов. Выигрывают, как правило, большие компании, способные оплачивать высококлассных адвокатов - а это отнюдь не "аудитория" FSF. Чтобы действительно защищать свободу, GPL должна оставаться простой.

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

Кроме того, Столлман не совсем верно описывает ситуацию. Патентное соглашение Microsoft-Novell не может заставить клиентов приобретать ПО именно у Novell. Как это ни странно, оно почти не влияет на ситуацию конечных пользователей, хотя касается именно их. Ведь любой другой держатель патентов по-прежнему может (теоретически) найти нарушение в Linux и подать на них в суд. Об этой опасности известно давно, и компания Novell еще с 2004 года предоставляет всем своим клиентам гарантию защиты и компенсации ущерба (indemnification) в подобном случае. С недавнего времени такие же гарантии предоставляют Oracle и Red Hat (возможно, они приняли такое решение отчасти благодаря шуму вокруг соглашения Microsoft-Novell).

Именно гарантия з ащиты, а не то или иное соглашение, обеспечивает клиентам спокойствие. Пока "программные патенты" вообще действуют, корпоративным клиентам будет проще приобретать открытое ПО у поставщиков, дающих подобную гарантию. Запретить ее GPL, скорее всего, не сможет.

Патенты против открытого ПО?

Соглашение Microsoft-Novell в очередной раз поднимает вопрос о "программных патентах". В США и ряде других стран чисто программные решения могут патентоваться, тогда как в России, Евросоюзе и т.д. такие патенты не выдаются (или не действуют). В частности, Патентный закон РФ (ст.4, п.2) не считает изобретениями "правила и методы игр, интеллектуальной или хозяйственной деятельности", а также "программы для электронных вычислительных машин".

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

Но даже узнать об этом нарушении непросто. В США существует огромное количество патентов, и они сформулированы весьма сложно. К тому же патент может быть опубликован уже после выпуска программы, нарушающей его (поскольку публикация производится не в самом начале рассмотрения).

Кроме того, многие патенты непросто "не нарушить". В патентной заявке зачастую указываются весьма широкие рамки; патент может относиться к целому классу функций, необходимых для решения той или иной задачи. Правда, такой патент может быть полностью или частично аннулирован в суде; но судебное разбирательство - дело весьма дорогостоящее, и для небольшой компании - поставщика ПО нежелателен даже риск суда. А ведь патентное преследование возможно не только против разработчиков и распространителей, но и конечных пользователе й (хотя с них, как правило, по суду можно взыскать только "разумную" лицензионную оплату).

Таким образом, по мнению противников "программных патентов", патентная система - серьезное препятствие на пути разработчиков ПО. Она особенно сильно бьет по создателям открытого ПО, поскольку лицензирование патентов нередко производится по числу проданных копий - а это несовместимо со свободным распространением. В подобной ситуации поставщик закрытого ПО может приобрести лицензию, а в открытом ПО придется обходиться вообще без патентованного алгоритма.

(Именно поэтому открытые программы для проигрывания распространенных медиа-форматов, например MP3, не включаются в коммерческие поставки Linux в США. В странах, где программные патенты не действуют, эти программы вполне легальны).

Сторонники "программных патентов", в свою очередь, считают, что патентная система способствует инновациям. Так, Владислав Шершульский, менеджер по стратегии платформ Microsoft в России, считает, что "программный продукт - принципиально сложный, и защитить права его создателей невозможно, опираясь исключительно на один специализированный вид охраны, например, созданный первоначально для литературных произведений. Я считаю нужным как-то обеспечить права не только непосредственных авторов кода, но и тех, кто придумывает архитектуру и алгоритмы. И отказ от такой защиты может иметь серьезные последствия для технического прогресса".

По его мнению, уровень драматизма вокруг нарушений патентов несколько преувеличен, как и сложность их выявления. Между индустрией ПО и любой другой высокотехнологичной отраслью нет больших различий. Базы патентов открыты. Патентные поверенные умеют отрабатывать свой хлеб. И можно ли представить, скажем, авиационное КБ, которое знакомится с патентами уже после завершения проекта?

Следует, однако, заметить, что авиационная промышленность - удел отнюдь не маленьких компаний. Для ИТ-корпорации, сравнимой по масштабам с Boeing, патенты действительно не являются проблемой. У вс ех серьезных игроков на рынке ПО есть немаленькие "портфели" патентов; в основном они не лицензируют отдельные продукты, а заключают друг с другом кросс-лицензионные соглашения, предоставляющие (на тех или иных финансовых условиях) взаимный доступ к множеству ним.

Патенты не являются серьезной проблемой и для энтузиастов, ведущих разработку ПО в качестве хобби. Те суммы, которые можно потребовать за нарушение патента в подобном масштабе, не оправдывают стоимости подачи иска. Можно сравнить их с любителями авиамоделирования: представить себе, как компания Boeing подает на моделиста в суд за нарушение патента на форму крыла, сложно.

Но начинающая компания с 20 сотрудниками, или даже с 2-3 сотрудниками и десятками энтузиастов по всему миру, вряд ли сможет построить пассажирский самолет - а вот создать и распространять нужную многим программу вполне в состоянии. Именно мелкие производители и поставщики оказываются наиболее уязвимы для программных патентов. Правда, если начинающая компания не будет уничтожена патентными исками в самом начале, она может набрать свой портфель патентов, заключить нужные лицензионные соглашения и войти в "привилегированный клуб".

Например, если бы программные патенты активно применялись в 70-е годы, создатели языка BASIC (Кемени и Курц) запатентовали бы его. Молодой программист Билл Гейтс должен был бы без начального капитала справиться с патентным поиском и получить лицензию, чтобы в 1975 г. предложить компании MITS версию BASIC для домашнего компьютера Altair. Неизвестно, насколько ему удалось бы решить эту задачу - и основать компанию "Micro-Soft".

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

Иногда, правда, и крупные компании подвергаются патентной атаке; в частности, Microsoft недавно про играла крупный патентный иск, и по приговору должна заплатить Alcatel-Lucent за использование патентов на MP3-технологии. Но компания не отказывается от поддержки патентования ПО, даже когда часть патентов ей невыгодна. Но главный юрист компании Брэд Смит подчеркивает, что "Microsoft не отказывается от патентной системы. Мы не согласны с требованиями Alcatel-Lucent, но мы все выигрываем от права на такие требования".

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

Так, в 2005 г. с участием IBM, Novell, Philips, Red Hat и Sony была основана компания Open Invention Network (OIN). Официальная задача этой компании - приобрести достаточный набор патентов, чтобы при помощи кросс-лицензирования защищать систему Linux (не только ядро, но и ряд приложений). Участники передали OIN заметное количество патентов, которые доступны бесплатно всем желающим - но в обмен на обещание не применять патентные иски против Linux. Недавно компания Oracle официально приняла это предложение; она получает доступ к патентам OIN, но не сможет применить свои патенты, в частности, против открытых конкурентов в области баз данных - MySQL и PostrgeSQL. Важно, что абсолютно все разработчики, распространители и пользователи этих продуктов защищены от исков со стороны Oracle; тогда как соглашение Novell с Microsoft защищает только клиентов Novell - и именно поэтому подвергается критике.

Если Microsoft когда-либо выполнит свои угрозы и применит патенты против Linux, то вполне может оказаться, что сама компания нарушает тот или иной принадлежащий OIN патент; в этом случае может быть подан встречный иск, и начнется "патентная война". В бизнес-практике такие "войны" зачастую оканчиваются соглашением о кросс-лицензировании...

Впрочем, нужно еще раз подчеркнуть, что факт наличия на рушений отнюдь не доказан. В рамках ядра и других основных частей ОС принципы построения Linux и Windows отличаются весьма заметно; патент, "захватывающий" обе системы, с немалой вероятностью содержит слишком широкие требования и встретится с проблемами в суде.

Правда, некоторые открытые программы для Linux созданы специально, чтобы повторить системы Microsoft. В этом случае нарушение патентов куда более вероятно. Наиболее яркий пример - WINE, эмулятор, позволяющий исполнять Windows-программы под Linux. Однако применение WINE в корпоративном секторе вряд ли оправдано; эмуляция сложной и во многом закрытой системы не может быть действительно надежной, и при этом современные средства виртуализации позволяют куда более корректно исполнять Windows-программы (вместе с самой Windows) на Linux-компьютере. WINE полезен для энтузиастов, а также для некоторых специфических задач (например, компания Google применила WINE для создания Linux-версии Picasa); в дата-центре и на корпоративном десктопе ему не место. В дистрибутивах Red Hat и Novell/SuSe WINE отсутствует.

Может нарушать патенты и упоминавшаяся выше Samba - система для поддержки сетевых протоколов Microsoft в Linux. Возможно, это самая уязвимая для патентной атаки часть платформы Linux. С другой стороны, Microsoft находится под давлением Еврокомиссии, которая требует обеспечить взаимодействие с другими платформами; иск в адрес Samba может ухудшить положение компании в переговорах с ЕС.

Интересна ситуация с проектом Mono - открытой реализацией .NET (прежде всего для Linux). Основную разработку Mono вела компания Ximian; в 2003 году ее приобрела Novell, и теперь основная команда разработчиков Mono работает в партнере Mocrosoft. Создатели Mono тщательно обходят все известные патенты (кроме группы патентов Microsoft, предоставленной для свободного использования при стандартизации .NET в организации ECMA). Тем не менее, появление нарушений все-таки возможно... Интересно, что из крупных корпоративных поставщиков Linux только Novell предлагает Mono. В дистрибутив Red Hat (который поддерживается также Oracle) Mono отсутствует.

Novell: кризис среднего возраста

Соглашение с Microsoft было, конечно, неожиданным шагом со стороны Novell. Но, чтобы выжить, компании была необходима именно неожиданность. Немолодая, по современным меркам, фирма потеряла твердую опору еще в 90-е, и с тех пор стремится найти свою новую нишу.

Novell была основана в 1979 году, и в начале производила компьютеры на системе CP/M. Пик ее славы пришелся на 80-е годы, когда была создана сетевая операционная система Novell Netware. Обычный компьютер на базе процессора 286 или 386 становился сервером, предоставлял доступ к файлам и принтерам, причем иногда на нем даже можно было работать - по тем временам все это было огромным достижением!

Старшее и среднее поколения российских компьютерщиков хорошо помнят Novell Netware. Ее можно было найти почти в каждом компьютерном классе вплоть до середины 90-х. Но затем ее вытеснили решения Microsoft - более простые в управлении и с лучшей маркетинговой поддержкой.

С тех пор компания ищет свое новое место под солнцем. В 1993 году она приобрела права на первоначальную систему Unix, и какое-то время предлагала продукт UnixWare. Предполагалось объединить NetWare и UnixWare в новую сетевую ОС, но с уходом Рэя Ноорда с поста исполнительного директора компания отказалась от этих планов; права на Unix были проданы Santa Cruz Operations. (Позже эти права вместе с торговой маркой SCO приобрела Caldera, которая и начала печально знаменитый процесс SCO против IBM).

В конце 90-х годов Novell предложила новые версии Netware, ориентированные на современные локальные сети и интернет. Но рыночные позиции были безнадежно упущены.

Следующим шансом Novell на возрождение стало открытое ПО. В 2003 году компания приобретает компании Ximian и SuSe. Первая из них вела разработки в области Gnome и Mono, а вторая - создатель и поставщик одного из ведущих дистрибутивов Linux.

Хотя компании и удалось создать образ второго (наряду с Red Hat) поставщика Linux для корпоративного рынка, ее финансовые успехи были не слишком велики. В июне 2006 года, после не слишком удачного завершения очередного финансового квартала, был уволен прежний исполнительный директор Джек Мессман и его место занял Рон Овсепян.

Новый руководитель стремится сделать компанию специалистом по смешанным корпоративным решениям. Сотрудничество с Microsoft должно укрепить репутацию Novell как поставщика таких решений. В интервью Computerworld Овсепян рассказал, что инициатива соглашения принадлежала ему; он позвонил одному из руководителей Microsoft, COO Кевину Тернеру, который ранее был CIO компании Wal-Mart - на тот момент крупного клиента Novell. Обсуждение началось с технического сотрудничества в области виртуализации. Включение патентного пункта было идеей Microsoft - но Овсепян отнюдь не возражает против него, т.к., по его мнению, некоторые клиенты с недоверием относятся к Linux именно из-за непроясненных патентных вопросов.

Novell отвергает обвинения в предательстве сообщества. Так, по словам Эрика Андерсона, вице-президента по разработкам для дата-центров, компания "делает то, что сообщество Linux считает важным", приобретая максимальное количество новых пользователей открытой ОС. Именно это, а не патенты - цель соглашения.

Некоторых успехов добиться уже удалось. Так, британская банковская группа HSBC приняла решение использовать SuSe Linux Enterprise Server. По словам Мэтью О"Нила, одного из руководителей глобального ИТ-подразделения HSBC, соглашение поможет "уменьшить сложность" инфраструктуры, сочетающей Linux-серверы и Microsoft Active Directory. Компания приобрела и других крупных клиентов - выбор в пользу Linux-решений Novell сделали сеть супермаркетов Wal-Mart, страховая компания AIG, финансовая группа Credit Suisse и крупнейший банк Deutsche Bank.

Финансовые результаты Novell за первый квартал 2007 фискального года (закончившийся 31 января) звучат не слишком хорошо: компания понесла убытки. Однако объем продаж Linux-продуктов заметно вырос. Соглашение с Micro soft, вероятно, сыграло в этом определенную роль.

В России все спокойно

Для корпоративных пользователей Linux в США и некоторых других странах соглашение Microsoft-Novell может стать тревожным "звонком": патентная угроза вполне реальна. Чтобы обезопасить себя, им потребуется выбрать одного из поставщиков, предоставляющих гарантии от патентных исков. Среди них как Novell, так и Red Hat и Oracle.

Российских пользователей это не касается, поскольку "программных патентов" в России нет. Дискуссия вокруг соглашения еще раз показывает, что ввод таких патентов стал бы серьезным ударом по многим участникам рынка. Как минимум, не следует изменять патентное законодательство без серьезного обсуждения (и, в частности, разумных ограничений применимости патентов).

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

Михаил Рамендик / CNews


18 Апреля 2007
www.cnews.ru/

Разместить комментарий

В комментариях к материалам сайта нельзя использовать теги HTML и BB. Адреса email и ссылки на другие сайты в комментариях запрещены и в текстах не отображаются. Все комментарии проходят постмодерацию. Если у вас есть фотография, иллюстрирующая данный материал, вы можете добавить ее к своему комментарию. Загружаемое изображение должно быть в формате GIF или JPG.
Ваше имя: *
Комментарий: *
Фотография:
Код подтверждения: *