Проблемы интеллектуальной собственности продолжают разрастаться вокруг Android. На этот раз, помимо доброй дюжины патентных исков и дополнительных претензий Oracle в области авторских прав, возникли серьёзные сомнения в легитимности центрального элемента архитектуры Android - библиотеки Bionic, связующей Android и её приложения с лежащим в основе платформы ядром Linux.

Согласно разбору ситуации известным борцом с патентованием программного обеспечения Флорианом Мюллером (Florian Mueller), суть проблемы такова: скопировано более 2,5 Мб кода из 700 заголовочных файлов ядра Linux, из которого были убраны комментарии и некоторые другие элементы, и добавлено уведомление в начале каждого полученного таким образом файла, гласящее, что итоговый материал "не содержит информации, охраняемой авторским правом". Здесь Google сильно ошибается, говорит Мюллер, так как согласно концепции копилефт (copyleft) все производные программы от кода, лицензируемого под GPL, должны быть доступны на тех же условиях. Код же библиотеки Bionic поставляется под несовместимой с GPLv2 лицензией Apache.

В состав платформы Android входят компоненты, сформированные из: GPL-кода (ядро Linux); открытого ПО с либеральными лицензиями (Permissive Licenses, без условий копилефта), например, виртуальная машина Dalvik; закрытые приложения для работы с сервисами Google. В сухом остатке, в случае, если неправота Google будет доказана, то теоретически весь стек ПО, а также многие популярные закрытые сторонние программы, такие, как игра Angry Birds и Adobe Flash Player, придётся делать доступным на условиях GPL, что приведёт к коллапсу всей экосистемы Android.

Теоретически, чтобы этого избежать, неправомерно присвоенный код Linux нужно будет заменить, и единственной реальной альтернативой библиотеке Bionic является библиотека Glibc, являющаяся отраслевым стандартом. В частности, она используется у наиболее заметных мобильных конкурентов Android - MeeGo и WebOS. Каким бы болезненным этот процесс ни был, это единственная реальная легальная альтернатива, которая защитит Android от последствий применения принципа копилефт лицензии GPL.

Библиотека Bionic явилась результатом желания Google исключить GPL из пространства пользователя, о чем заявленно на 36 странице официальной презентации Android (PDF). Библиотека базируется на libc, идущей под лицензией BSD, и упоминаемых заголовочных файлах ядра Linux. Тут уместно упомянуть, что Линус Торвальдс в 2003 году специально заявил о невозможности использования исходных заголовочных файлов ядра Linux в не-GPL программах.

Помимо своих впечатлений, Мюллер упоминает также профессора Реймонда Ниммера (Raymond Nimmer), который пишет в своём блоге по этому же поводу. Также Мюллер ссылается на заметку Эдварда Нотона (Edward Naughton) под названием "Google Android - это правовое минное поле для разработчиков и производителей устройств". Нотон в свою очередь даёт ссылку на более подробный правовой анализ, где называет подход Google к использованию заголовочных файлов ядра Linux "необычайно лихим" и видит его как составную часть общего сомнительного подхода Google к повторному использованию кода в Android.

Вкратце, Нотон говорит, что Google почти наверняка нарушает GPL в Bionic благодаря неправильному представлению о том, что если "вычистить" заголовочные файлы Linux от информации об авторских правах, то потом их можно использовать как заблагорассудится, и что в итоге почти наверняка в Bionic есть файлы, подпадающие под GPLv2. Закачивает свою заметку Нортон словами "Ещё более интересное начнётся в случае, если Google прав. Это будет означать, что Google нашёл способ отобрать Linux у сообщества и присвоить его. Возможно, сообщество поверит в добрые намерения Google, облечённого подобным могуществом, но можно ли поверить в ТАКОЕ благородное великодушие?".

На основании автоматического анализа компонентов Android, была составлена таблица компонентов, зависящих от Bionic, которую Мюллер опубликовал в сервисах Scribd и Crocodoc. В таблице 1,276 страниц и более 27,000 строк, и это только анализ открытых компонентов Android. Сторонние закрытые приложения судя по всему написаны на C или C++ и скорее всего также зависят от этой библиотеки.

Дополнение 1: Опубликовано мнение Брайна Профита (Brian Proffitt), занимающего в организации Linux Foundation должность менеджера по работе с сообществом. Брайн считает претензии безосновательными.

Дополнение 2: Ричард Столман и юристы Фонда свободного ПО считают, что использование простых конструкций из заголовочных файлов не приводит к созданию производного продукта, т.е. не влечет за собой нарушение лицензии GPL.

Дополнение 3: В интервью изданию itworld.com Линус Торвальдс указал на то, что не видит ничего плохого в использовании определяющих структуру системных вызовов заголовочных файлов и не считает использование данной информации нарушением GPL.

Дополнение 4: Бредли Кун (Bradley Kuhn), директор организации Software Freedom Conservancy и член управляющего совета GNOME, проанализировал обвинения Флориана Мюллера и заключил, что для того чтобы делать выводы нужен детальный построчный анализ всех заимствованных заголовочных файлов, практически же в судебной практике еще не было прецедентов, в которых бы был признан факт нарушения интеллектуальной собственности на основании копирования информации из заголовочных файлов.

Дополнение 5: Флориан Мюллер продолжил анализ кода Android и выявил дополнительные факты использования урезанных заголовочных файлов из проекта BlueZ и кода поддержки ext4.

Источник: http://www.opennet.ru/opennews/art.shtml?num=29949