Существующая редакция GPL не соответствует современным тенденциям

Грядет модернизация General Public License, юридической основы, на которой зиждется большая часть проектов разработки free- и open-source программного обеспечения и которую так зло раскритиковал председатель правления Microsoft Билл Гейтс.

Грядет модернизация General Public License, юридической основы, на которой зиждется большая часть проектов разработки free- и open-source программного обеспечения и которую так зло раскритиковал председатель правления Microsoft Билл Гейтс.

Автор GPL Ричард Столлман работает над поправками, которые добавят лицензии определенности в отношении патентов на ПО; прояснят вопрос об использовании GPL-программ в некоторых сетевых средах и на строго контролируемом оборудовании; а также устранят преграды, которые сегодня мешают смешивать программное обеспечение, регламентируемое GPL и другими лицензиями.

За 13 лет, прошедшие с момента появления существующей второй версии GPL, лицензия переместилась с периферии индустрии вычислительной техники к ее центру. Теперь программное обеспечение GPL широко применяется в компаниях Fortune 500 и внедрено в большинстве компьютерных фирм. Но этот успех вызвал потребность в некоторых изменениях. «GPL стала осью вращения многомиллиардной индустрии. Честно говоря, я не думаю, что она была на это рассчитана», — говорит Марк Радклифф, юрист из Gray Cary, досконально изучивший GPL и другие лицензии.

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

Обычно юридическими документами, регламентирующими использование программного обеспечения, интересуются только юристы. Но в случае GPL это не так. Эта лицензия представляет собой соглашение, которое убеждает в возможности кооперации в отрасли, где бал правит конкуренция. Наиболее наглядной иллюстрацией этого служит операционная система Linux, которая все больше угрожает таким гигантам, как Microsoft и Sun Microsystems.

GPL регулирует распространение программных инструкций, называемых исходным кодом, которые пишут разработчики, а затем преобразуют в двоичные файлы, понятные компьютерам. Суть GPL в том, что она разрешает любому изучать, модифицировать и распространять исходный код при условии, что все внесенные в него изменения останутся общедоступными и будут лицензироваться на тех же условиях. Этим GPL отличается от некоторых других лицензий, используемых в проектах open source, которые разрешают защищать исходный код правом собственности.

Другое требование заключается в том, что тесная интеграция программного обеспечения GPL допускается только с другим таким же. Это положение способствует созданию растущего фонда ПО GPL, но оно же побудило некоторых окрестить лицензию «вирусом», подразумевая, что включение по неосторожности или злому умыслу GPL в проприетарный продукт ведет к необходимости распространять весь исходный код по GPL. В частности, Билл Гейтс высмеял лицензию как «Pac Man-подобную», намекая на карикатуру, где модуль ПО GPL пожирает все на своем пути, заставляя открывать весь исходный код, к которому он прикасается. Пока что подобный сценарий не реализовался. Однако GPL угрожает Microsoft и иным способом: способствует созданию обширного, энергичного сообщества программистов.

Microsoft пристально наблюдает за работой над новой GPL, которую Столлман, вероятно, назовет версией 3. Однако изменений в основном положении, разделяющем код GPL и проприетарный код, компания, скорее всего, не дождется. «В целом GPL останется той же, — сказал Столлман, большой любитель путешествий, в интервью по телефону из Марокко. — Я не думаю, что эти изменения расстроят кого-то из тех, кто выпускает ПО под GPL». И не следует ждать этих изменений слишком скоро. «Нам пока нечего показать. Мы знаем, чего хотим добиться, но как это сделать, пока не ясно», — сказал Столлман.

Ричард Столлман придумал GPL в 1980-е годы в рамках своего проекта Gnu's Not Unix, или GNU, по созданию клона операционной системы, не подверженной ограничениям проприетарной Unix — как и само понятие free software, и организацию Free Software Foundation, которую он основал для его продвижения.

Согласно сайту Freshmeat, который называет себя «крупнейшим в вебе каталогом программного обеспечения Unix и смешанного ПО», существует свыше 19 тыс. проектов разработки ПО под GPL, и GPL покрывает 68% всех проектов из каталога Freshmeat. Наиболее известным GPL-проектом является Linux, ядро операционной системы, на которое в 2008 году, согласно прогнозу IDC, будет опираться $35,7-млрд бизнес. В числе других: СУБД MySQL, защитный брандмауэр netfilter/iptables и программное обеспечение обмена файлами Samba.

Однако если программисту не нравится GPL, у него есть другие возможности. Проект Mozilla, который способствовал организации движения open source в 1998 году, и широкоиспользуемое ПО веб-сервера Apache подчиняются другим лицензиям.

Проблема патентов

Одной из причин, по которым Sun выбрала ту лицензию, которую выбрала, стали патенты. Более дюжины экспертов, с которыми автор беседовал при подготовке этой статьи, чаще всего указывали на то, как GPL решает эту трудную юридическую задачу.

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

Эти вопросы обсуждаются при подготовке следующей версии GPL. «Возможно, она поможет защитить наше сообщество от пиратов, вооруженных патентами», — сказал Столлман, ярый критик самой идеи патентования программного обеспечения.

Согласно одному из толкований современной версии GPL, владельцы патентов, распространяющие ПО GPL, «по существу, передают неявную лицензию» на эти патенты, сказал Марк Веббинк, ведущий специалист по интеллектуальной собственности продавца Linux, компании Red Hat, и человек, который первым познакомился с проектами исправленной GPL еще в 2000 году. Однако полезно было бы иметь явно выраженное соглашение о патентах, добавил он. «Распространитель может не захотеть оставлять эту двусмысленность в отношении прав, которые он передает».

Фрэнк Бернштейн, юрист из фирмы Sughrue Mion, полагает, что Столлман черпает идеи в лицензиях Apple Public Source License и Common Public License (последнюю часто применяет IBM). Обе они передают права на использование патентов, покрывающих программное обеспечение, и в том случае, если организация предъявляет претензии за нарушение патента, обе лицензии лишают эту организацию права использовать и распространять ПО. Бернштейн считает, что решение проблемы патентов может сделать GPL более приемлемой для корпораций — пользователей, которые стали главными разработчиками и заказчиками ПО open source.

Однако некоторые хотели бы сделать GPL более острым политическим инструментом в борьбе против идеи патентов на программное обеспечение. «Нам надо найти какой-то способ пресечь ужасную, разнузданную олигополию программных патентов, прежде чем та причинит еще более серьезный ущерб, — сказал Эрик Реймонд, президент Open Source Initiative. — Было бы очень хорошо, если бы GPL версии 3 способствовала этому».

А Брюс Перенс, активист движения open source, хотел бы, чтобы санкции против исков за нарушение патентов относились к коммерческому использованию не только спорного ПО, но и всех программ, классифицируемых как свободные. «Хотелось бы, чтобы следующая версия GPL содержала взаимозащищающий пункт о патентах типа того, что если вы запатентовали свободное ПО, то лишаетесь прав на использование любого свободного ПО», — сказал Перенс.

В заявлении продавца Linux, компании Novell, говорится, что существует и промежуточный вариант: «Защита интеллектуальной собственности и open source могут работать рука об руку и не являются взаимоисключающими».

Другие изменения

Столлман перечислил еще несколько областей, в которых готовятся модификации:

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

• Исследуется возможность использования ПО GPL на таких устройствах, как цифровые видеорекордеры TiVo, в которых применяется специальная версия Linux, но не работают модифицированные версии. Запрет на внесение изменений нарушает дух GPL. «Это не то, что подразумевалось под свободным ПО», — сказал Столлман.

• Следующая версия, вероятно, будет содержать механизм, регламентирующий доступность изменений, вносимых в ПО GPL, которое работает на общедоступных компьютерах. Сегодня программист, желающий, чтобы его программа GPL была общедоступной, может вставить в нее команду, которая позволит загружать новую версию ПО, если в него были внесены изменения. Однако существующая GPL не мешает организации, которой принадлежит это ПО, просто удалить соответствующую часть кода. Столлман готовит пункт, запрещающий подобное удаление. «Если программа уже содержит такую команду, а вы вносите в нее изменения, вы будете обязаны сохранить эту функцию».

Столлман — не единственный, кто думает об усовершенствованиях в GPL.

Некоторые трудные вопросы о GPL мучают и Мартина Финка, вице-президента по Linux компании Hewlett-Packard. Один из таких вопросов — он перекликается с вопросом о TiVo, поднятым Столлманом, — связан с совместимостью с разрабатываемой технологией trusted computing.

Trusted computing

Кроме всего прочего, технология trusted computing позволит исполнять только то ПО, которое снабжено цифровой подписью, — но этот процесс подписи может вступить в противоречие с целью обеспечить свободное распространение и внесение изменений, к которой стремится GPL.

Другая проблема: GPL не дает четкого представления о том, что именно понимается под «распространением». Как надо относиться к ПО GPL, которое распространяется от корпорации к ее дочерней компании? Или от одной машины к другой в процессе выполнения программы? «Нам приходится работать в мире, где программа уже не ограничена рамками одной машины. Элементы программы могут быть существенно распределены, как в популярной концепции веб-сервисов», — пояснил Финк.

Джон Феррелл, юрист из Carr & Ferrell, хотел бы видеть в GPL более четкие положения об использовании производных работ — программ, основанных на оригинальном продукте. Должна ли производная работа включать немодифицированный компонент GPL в составе более крупного пакета ПО?

Производные работы, авторские права и другие концепции являются центральными для GPL, но в разных странах и в разных штатах трактуются по-разному. Радклифф из Gray Cary предпочел бы более точные, абсолютные определения.

Усовершенствование GPL имеет принципиальное значение для программного обеспечения open source, отмечает Финк. Они могут способствовать росту популярности лицензии и лучшему ее пониманию, что в свою очередь означало бы рост массы ПО GPL, перетекающей из проекта в проект.

«Я стараюсь предостеречь людей от изобретения новых лицензий, — говорит Финк. — Чем больших успехов мы добьемся в создании одной всеохватывающей лицензии, тем меньше будет появляться новых лицензий, что на мой взгляд, — благо». //ZDNet.ru


или введите имя

CAPTCHA