Новости IT, хостинга
  Android, Apple, Facebook, Google, Linux, Microsoft, Samsung, Twitter, Интернет, Россия, браузеры, обновление ПО, онлайн-сервисы, операционные системы, планшеты, рынок ИТ, сделки, смартфоны, социальные сети, уязвимости  
  новостей: 10378
  комментариев: 2684

Зафиксированы и опровергнуты факты прямого копирования кода Java SE в Android


Флориан Мюллер (Florian Mueller), известный борец с патентованием программного обеспечения, опубликовал результаты изучения обоснованности обвинений Oracle в копировании оригинального кода платформы Java при реализации платформы Android. Выявленные в процессе исследования факты превзошли все ожидания - как минимум 43 файла в дереве исходных текстов платформы Android содержат достаточно большие блоки кода, полностью совпадающие с оригинальным кодом платформы Java SE.

Более того, в 37 файлах из состава Android явно присутствует пометка об их проприетарном или конфиденциальном характере. Данные файлы судя по всему имеют отношение к реализации Mobile Media API из состава Sun Java Wireless Toolkit. Например, заголовок файла PolicyNodeImpl.java гласит "Copyright 2004 Sun Microsystems, Inc. All rights reserved. SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.".

Еще 6 файлов из состава платформы Android 2.2 и 2.3 явно декомпилированы из Java 2 Standard Edition и перелицензированы под лицензией Apache без согласования с правообладателем. Даже если допустить, что в конечном итоге данные файлы входят в состав OpenJDK и поставляются под лицензией GPL, самовольное изменение лицензии может иметь серьезные последствия.

Примечательно, что в обвинительных материалах Oracle фигурировали достаточно спорные утверждения, связанные как правило не с непрерывными блоками кода, а с совпадением структуры и частичным пересечением имен методов и переменных в библиотеке классов Java.

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

Семь из фигурирующих в разборе файлов (PolicyNodeImpl.java, AclEntryImpl.java, AclImpl.java, GroupImpl.java, OwnerImpl.java, PermissionImpl.java и PrincipalImpl.java) находятся в исходных текстах в каталоге unit-тестов, т.е. используются только для внутреннего тестирования и не входят в конечный продукт. Данные файлы были в свое время опубликованы на сайте Sun для упрощения отладки и тестирования кода. Изменение лицензии в данных файлах можно объяснить результатом работы какого-то скрипта, который автоматически добавил упоминание лицензии Apache во все файлы проекта. Более того, эти файлы уже удалены из репозитория: PolicyNodeImpl.java удален 20 октября 2010 года, а остальные файлы - удалены 14 января 2011 года. Причем удалены с комментарием "удаление бессмысленных тестов".

Остальные 37 файлов представлены в репозитории внутри архива MMAPI.zip, который находится в директории с кодом аудиодрайвера для одного из поддерживаемых чипсетов. Архив MMAPI.zip содержит модифицированную версию Java ME Mobile Media API (MMAPI) и был добавлен не Google, а входящей в альянс Open Handset Alliance компанией SONiVOX. Код был добавлен в рамках разработки фреймворка Embedded Audio Synthesis (EAS). В сборке платформы данные файлы не участвуют, в документации на фреймворк EAS данный архив помечен как не подлежащий распространению набор примеров. Судя по всему MMAPI.zip был загружен по недосмотру.


Источник: opennet.ru

  23 января 2011 473
Версия для печати

← предыдущая новость следующая новость →

Мой комментарий
Ваше имя*:
Email:
Комментарий*:
Зарегистрироваться автоматически: Вы будете зарегистрированы на сайте автоматически при добавлении комментария. Обязательно заполните поле Email для этого.
Сумма чисел 8 и 19*:            


Хостеры (2465)
HostDB (35)
Софт (2640)
Железо (993)
Интернет (1435)
Статистика и аналитика (3324)




Отправить сообщение администратору

Сумма чисел 14 и 3*:


Яндекс цитирования
сообщить о неточности