CITKIT.ru - свободные мысли о свободном софте
Деловая газета CitCity.ru Библиотека CITForum.ru Форумы Курилка
Каталог софта Движение Open Source Дискуссионный клуб Дистрибутивы Окружение Приложения Заметки Разное
24.08.2017

Последние комментарии

ОСТОРОЖНО: ВИНДОФИЛИЯ! (2250)
24 December, 22:53
Kubuntu Feisty (15)
24 December, 18:42
Один на один с Windows XP (3758)
24 December, 11:46

Каталог софта

Статьи

Дискуссионный клуб
Linux в школе
Open Source и деньги
Open Source и жизнь
Windows vs Linux
Копирайт
Кто такие анонимусы
Лицензии
Нетбуки
Нужен ли русский Linux?
Пользователи
Дистрибутивы
Идеология
Выбор дистрибутива
Archlinux & CRUX
Debian
Fedora
Gentoo
LFS
LiveCD
Mandriva
OpenSolaris
Slackware
Zenwalk
Другие линуксы
BSD
MINIX
Движение Open Source
История
Классика жанра
Окружение
shell
Библиотеки UI
Графические среды
Шрифты
Приложения
Безопасность
Управление пакетами
Разное
Linuxformat. Колонки Алексея Федорчука
Заметки
Блогометки
Файловые системы
Заметки о ядре

Разное

Движение Open Source

От BSD до Java. Что ждет Sun в мире Open Source?

В конце 2006 г. компания Sun Microsystems объявила об открытии исходных текстов на основе лицензии GPL2 (General Public License v.2) базовых компонентов своей технологии Java (Java Platform Standard Edition (Java SE), Java Platform Micro Edition (Java ME) и Java Platform Enterprise Edition (Java EE)). Это событие вызвало большую реакцию во всем мире, включая публичное одобрение этого шага Ричардом Столлманом, массу публикаций в различных изданиях и, наконец, специальный визит в Москву вице-президента Sun Microsystems по разработке продуктов и платформ Java Лори Толсон, которая вместе со своими коллегами из России провела 14 декабря специальный Круглый стол для прессы.

Естественно, решение Sun Microsystems имеет большое значение как для самой компании, так и для Java-разработчиков и всего сообщества Open Source в целом. Но прежде чем остановиться на некоторых деталях, относящихся конкретно к открытию исходных текстов продуктов поддержки Java, я хочу немного поговорить о связях компании Sun Microsystems с движением свободного программного обеспечения. Скорее всего, я не скажу ничего нового для компьютерных специалистов своего поколения, но не исключаю, что более молодым людям кое-что может быть неизвестно. Сразу замечу, что я не ставлю своей целью написание энциклопедической статьи. Я руководствуюсь собственными воспоминаниями, наблюдениями и выводами и заранее приношу извинения на возможные неточности.

Свободное программное обеспечение в истории Sun Microsystems

Лично для меня первое серьезное знакомство с Sun Microsystems произошло в 1990-м г., когда на первую конференцию советской ассоциации пользователей ОС UNIX (Soviet Unix Users’ Group, SUUG) прибыла внушительная делегация представителей этой компании во главе с вице-президентом и одним из основателей компании Биллом Джоем. Билл Джой выступил на конференции с большим докладом, в котором достаточно подробно рассказал об истории и предпосылках создания своей компании.

Г-н Джой (который, к моему большому сожалению, уже несколько лет не работает в Sun Microsystems) во второй половине 1970-х гг., будучи студентом Калифорнийского университета в г. Беркли, являлся одним из наиболее активных участников группы BSD (Berkeley System Distribution), которая начала свою работу с тестирования ранних версий ОС UNIX от компании AT&T, а потом стала выпускать свои собственные программы, основной из которых был вариант UNIX BSD 4.1.

Группа BSD компоновала на магнитных лентах пакеты UNIX-программ с исходными текстами и продавала эти магнитные ленты (из расчета «стоимость ленты плюс стоимость труда на копирование») в другие университеты. Как говорил Билл в 1990-м г., деньги, заработанные на продаже этих лент, стали частью капитала, на основе которого в 1982-м г. была основана компания Sun Microsystems. Так что, в значительной степени, Sun Microsystems является детищем Open Source (хотя в те годы этот термин не использовался).

Основной целью новой компании было производство рабочих станций с ОС UNIX и развитым графическим пользовательским интерфейсом. С 1982 по 1990 гг. эти рабочие станции базировались на процессорах компании Motorola, а в качестве операционной системы использовалась Sun OS, основанная последовательно на UNIX BSD 4.1, 4.2 и 4.3. До 1989 г. в качестве оконной системы использовалась собственная разработка Sun Microsystems SunView, которая потом была заменена реализацией стандартных протоколов X Window System. Для поддержки GUI использовался проприетарный пакет OpenWindows, впоследствии замененный CDE и известным продуктом категории Open Source GNOME.

В 1980-е годы Sun Microsystems совместно с компанией UNIX System Laboratories (детищем AT&T) участвовала в разработке ОС UNIX System V 4.2. Именно эта система стала основой Solaris 2.0 (Sun OS 5.0), на использование которой компания полностью перешла в 1992 г. после замены своей основной линейки процессоров на собственную архитектуру Sparc. C 1994 г. (Solaris 2.4) операционные системы Sun Microsystems могут использоваться на платформах Sparc и x86.

Наиболее известной открытой разработкой компании того времени, по-видимому, следует считать спецификацию и реализацию в «public domain» механизмов «сетевой файловой системы» (NFS, Network File System) и «удаленных процедур» (RPC, Remote Procedure Calls).

Открытие текстов проприетарных продуктов

В 1990-е гг. Sun Microsystems достаточно активно поддерживала различные проекты Open Source (в том числе, Gnome, Mozilla, Tomcat и др.), использовала и поддерживала продукты Open Source на своих аппаратных платформах (достаточно заметить, что ОС Linux силами компании работает практически на всех ее платформах), но, вместе с тем, разрабатывала ряд проприетарных решений, естественно, с закрытым кодом.

Первым шагом компании по открытию текстов проприетарных продуктов явилась ее передача в 2000 г. в сообщество OpenSource исходных кодов своего набора офисных продуктов StarOffice. В результате было образовано сообщество OpenOffice, разрабатывающее офисные продукты для различных платформ и распространяющее их по лицензии LGPL (Lesser General Public License). Основным отличием LGPL от стандартной лицензии GPL является то, что LGPL позволяет использовать откопмилированные части кода в составе коммерческих продуктов. В результате, начиная со StarOffice 6.0, Sun Microsystems успешно использует в своих офисных продуктах программы, разработанные сообществом OpenOffice.

Понятно, что, инициируя проект OpenOffice, Sun Microsystems преследовала две основные цели: удешевить силами сообщества OpenSource производство своих коммерческих офисных продуктов и попытаться потеснить на рынке x86 офисные продукты компании Microsoft. В 2005 г. был совершен второй важный шаг: открытие под лицензией CDDL (Common Development and Distribution License) основной части исходных кодов ОС Solaris 10 и создание сообщества OpenSolaris. Открыты коды системы как для платформы Sparc, так и для x86. Здесь, по всей видимости, преследуются тоже две, но совсем другие цели: попытаться привлечь сообщества OpenSource к реальной возможности использовать Solaris на платформах x86 вместо Linux (система вполне надежная, и такой возможностью не следует пренебрегать) и, возможно, найти энтузиастов для портирования Solaris на другие платформы.

Лицензия CDDL – это немного измененный вариант лицензии MPL (Mozilla Public License). Sun Microsystems мотивирует выбор этой лицензии (а не, например, GPL) тем, что, во-первых, CDDL не препятствует коммерческому распространению откомпилированного кода и, во-вторых, допускает статическое связывание открытых программ, распространяемых под разными лицензиями (в отличие, например, от LGPL). Замечу еще, что в основе Solaris по-прежнему лежат исходные коды System V 4.2 (конечно, существенно переработанные), так что проект OpenSolaris дает возможность познакомиться с этой классикой мира UNIX.

В июне 2006 г. компания сделала следующий шаг: открыла под лицензией GPL2 спецификацию процессора UltraSparc и инициировала создание сообщества OpenSparc. Более точно, открыты исходные коды на языке Verilog описания архитектуры процессора UltraSparc T1 Niagara в стандарте RTL (Register Transfer Library). Официальной целью этого шага является облегчение портирования на платформу UltraSparc операционных систем Linux и BSD. Действительно, это оправданно, поскольку для платформы UltraSparc T1 Niagara в настоящее время поддержка Linux отсутствует, а архитектура микропроцессора очень сложна.

Но мне кажется, что имеются и более глубокие причины. Дело в том, что Niagara – это первый массовый микропроцессор, в котором на аппаратном уровне поддерживается достаточно много потоков управления (32 потока на процессор). Традиционные операционные системы (равно как и компиляторы, и системы управления базами данных, и другие системные программы) не приспособлены к эффективному использованию этих аппаратных возможностей (я не буду пояснять, почему, поскольку это заняло бы слишком много места и отклонило бы меня от основной темы). Я не знаю, в каком режиме в настоящее время на Niagara работает Solaris, но простым портированием Linux или BSD здесь не обойдешься. Возможно, у Sun Microsystems имеется надежда, что народные умельцы из сообщества OpenSource сумеют сгенерировать новые идеи многопотоковых операционных систем, что пока не удается сделать профессионалам.

Java в открытых кодах

Ну и, наконец, Java. Случилось так, что мне удалось присутствовать в 1995 г. на громадном шоу в Сан-Франциско для журналистов со всего мира, посвященном объявлению нового языка Java. Я отчетливо помню, что Джеймс Гослинг объяснял причины возникновения Java потребностями передавать через Internet мультимедийные данные (графику, видео, аудио), для которых отсутствовало стандартное представление. Проблему решала инкапсуляция таких данных в объекты Java и передача по сети этих объектов в машинно-независимой форме. Отсюда происходят интерпретационная природа Java, понятия байт-кода и виртуальных Java-машин.

С годами область использования Java невероятно расширилась и углубилась. Язык используется в различных приложениях, для которых существенна повышенная портируемость, в различных встроенных системах, среди которых наиболее распространены мобильные телефоны, и т.д. В конце 1990-х гг. мир Java потрясали сражения на поле стандартизации между Sun Microsystems и Microsoft, но, как кажется, после появления C# страсти поутихли. И вот теперь Sun Microsystems выводит свои проприетарные Java-продукты в открытый мир.

13 декабря 2006 г. компания Sun Microsystems объявила, что теперь под лицензией GPL2 плюс Classpath exception доступны исходные коды продуктов поддержки Java категорий Java Platform Standard Edition (Java SE), Java Platform Micro Edition (Java ME) и Java Platform Enterprise Edition (Java EE). Некоторые продукты были ранее открыты в исходных кодах под лицензией CDDL, но теперь и на них распространяется GPL. Classpath exception – это некоторое дополнение к GPL, разработанное в проекте GNU/Classpath . Это дополнение позволяет компоновать приложение, распространяемое по любой лицензии, с библиотеками, распространяемыми по лицензии GPL. GPL2 плюс Classpath exception в совокупности очень близки к лицензии LGPL, но в сообществе Java предпочли выбрать именно этот вариант. Посмотрим более внимательно, какие Java-продукты уже открыла Sun Microsystems, и что она собирается делать дальше.

Java SE теперь развивается в проекте OpenJDK. В настоящее время в OpenJDK (Java Development Kit) входят (с исходными кодами) виртуальная Java-машина HotSpot, компилятор языка Java (javac) и оперативная справочная система по средствам разработки на языке Java. Весной 2007 г. будут открыты оставшиеся компоненты, позволяющие построить полностью функциональный JDK.

Развитию Java ME служит сообщество Mobile & Embedded. Переданные в открытое использование продукты включают специальные средства разработки Java-приложений для мобильных телефонов, средства проверки совместимости Java-платформ и т.д. В 2007 г. ожидается передача в OpenSource средств тестирования встроенных Java-приложений.

Наконец, Java EE разрабатывается в сообществе GlassFish. Помимо средств разработки, входящих в Java SE, Java EE включает сервер приложений и реализацию API для долговременного хранения Java-объектов TopLink Essentials. В 2007 г. в открытый доступ должны быть переданы тексты следующих версий этих систем.

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

Так что компания Sun Microsystems уверенно входит в современный мир Open Source. Будем надеяться, что ее продукты придутся по вкусу обитателям этого мира.




Комментарии

Страницы комментариев: 1 :: 2 :: 3 :: следующая

Anton0xf, Sun Mar 16 04:14:58 2008:
(Saemon Zixel)
> К таму-же для Си и Си++ есть стандарты,
> если Java тоже стандартизуют
тоже стандартизуют?! java.sun.com/docs/books/jls/third_edition/html/j3TOC.html
это, кстати, решает вопрос о зоопарке Несовместимых решений: будет много, но совместимых. и одно приоритетное, которое все качать будут - с www.sun.com/download
> то у нею будет такая же судьба как у Си и Си++ в этом плане.
какая?
З.Ы. а JVM с .NET в плане кросс..ти сравнивать - дебилизм
grow, Tue Feb 20 21:09:33 2007:
знаешь ка что за парту вам пора чтоб научится понимать людей!!!
>>была виртуальная машина от Микрософта для Винды.
см мой прошлый пост:продвигает ТОЛЬКО операционные системы windows!
А ТЕПЕРЬ СОБСТВЕННО ВОПРОС: сан продвигает тока солярис?или может затачивает джаву тока под солярис?ааа?
собственно и ответ:"PS:долой монополизм в прогрессе"
Сергей Сергин, Tue Feb 20 16:09:10 2007:
А если без эмоций, то заодно рекомендую изучить историю драки между Микрософт и Сан за Джаву. Как хорошо начиналось-то! В Микрософт быстро сообразили, что Джава может много больше, чем это видела изначально Сан. Был J++, была виртуальная машина от Микрософта для Винды. Сан взбрыкнула и вместо того чтобы нормально договориться с Микрософтом просто оставила их от дома. И чо? Микрософт в рекордный срок (3 года!) создаёт лучшую Джаву, чем Сан! И кто тут крут? Кто дальновиден? Кто лучше в конце концов, если мерить простым аршином "хорошо-плохо"?
Сергей Сергин, Tue Feb 20 15:59:23 2007:
Так, grow! За парту. Чтобы не нести хрень про то, кто у кого чего спёр, достало слушать бред. Учить историю создания джавы, СиШарпа, П-Кода. Вспомнить про Вирта с его Лилит, Смолток и прочая-прочая-прочая. Никто ни у кого ничего ни крал. Этак можно дойти до крайности и сказать, что Королёв стибрил ИДЕЮ ракеты у фон Брауна, а тот в свою очередь у сидящего в тюрьме Кибальчича. Если фамилии эти Вам не известны - второй раз за парту, блин.
grow, Tue Feb 20 01:11:44 2007:
вобщем почитал я статью,почитал коменты и понял что люди разные и каждому свое!Я лично люблю аскетизм простоту и практичность а кто то любит расфуфыканность красоту интерфейса и тд!А насчет java я скажу так: спецификация java создавалась для развития мультиплатформенности а .net (мало того что MS украли идею) продвигает ТОЛЬКО операционные системы windows!
PS:долой монополизм в прогрессе!Представьте если б монополизм был бы в эволюции, хз может быть у нас не было б совсем мозга --одни мускулы=)
vasa, Sun Feb 11 05:34:40 2007:
>>с точки зрения разработчика Эклипс попса по сравнению с Вижуал Студией<<
бред, напиши много-поточное приложение на С# и подебагай в VS, потом усложни до нескольких много-поточных приложений взаимно-конкурентно перекрывающих 1 ресурс.Eclipce очень удобно в этом плане. По результатам суди о попсовости.
sergo, Fri Feb 9 17:27:13 2007:
Полностью открытая и свободная ява - это веский аргумент в ее пользу по сравнению с .NET Framework. Но, к сожалению, похоже этот аргумент единственный. Дотнет технологически гораздо лучше явы, с точки зрения разработчика Эклипс попса по сравнению с Вижуал Студией...
Короче сану давно пора создать что нибудь принципиально новое.... но не могут...
-------
ПС.
по поводу диалектов C++: да пожалуйста, Tampere University of Technology (Finland) использует свой собственный компилятор (сделаный из gcc). Вероятно в образовательных целях решили упростить язык и добавить всякие туфтовые проверки в компиллер.. Такой ни с чем не совместимой хрени я еще не видел. Студенты мучаются
tux, Fri Feb 9 00:00:00 2007:
>>хммм... gcc2.96 от RedHat помниш?, исходники веть были открыты... делай что счетаеш нужным...
В конечном счете он не прижился.

>>PS "...не произошло же такого с C/C++ в линухе..." - класно сказано, до сих пор немогу понять смысл сказаного, особенно в ступор приводит "в".
Подрузамевалось в дистрах линуха в ответ вот на это:

Сильно нам не хватает зоопарка несовместимых виртуальных машин Ява, пересобранных каждым, кто сумел откомпилировать эти исходники?

PS Бывает иногда, что не корректно выражаюсь.
Saemon Zixel, Thu Feb 8 23:25:04 2007:
tux>не гони - j2me, j2ee. все только начинается.
+1

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

tux>... Но не произошло же такого с C/C++ в линухе, хоть все и доступны исходники.
Это глупо - возникает привязка к конкретному дистру.
хммм... gcc2.96 от RedHat помниш?, исходники веть были открыты... делай что счетаеш нужным...

К таму-же для Си и Си++ есть стандарты, если Java тоже стандартизуют то у нею будет такая же судьба как у Си и Си++ в этом плане.

PS "...не произошло же такого с C/C++ в линухе..." - класно сказано, до сих пор немогу понять смысл сказаного, особенно в ступор приводит "в".
аноним, Wed Feb 7 12:45:13 2007:
Странно, открыли исходники - кому надо пользуйтесь. Нормальное решение. Еще и коды Solaris откроют. Что не нравится - Ява, ну не пользуйтесь! Sun ведет себя как нормальные люди.
Не хотите открытости - пожалуйста MS сколько угодно. И бабла у них не меренно.
А Sun надо сказать спасибо, ибо чем больше открытости тем быстрее прогресс!

Страницы комментариев: 1 :: 2 :: 3 :: следующая

Комментарии заморожены.

Новости:

Все новости на CitCity.ru

Компании месяца

 
Последние комментарии
Почему школам следует использовать только свободные программы (101)
20 Декабрь, 14:51
ОСТОРОЖНО: ВИНДОФИЛИЯ! (2250)

24 Декабрь, 22:53
Linux в школе: мифы про школу и информатику (334)
24 Декабрь, 22:43
Kubuntu Feisty (15)
24 Декабрь, 18:42
Software is like sex: it's better when it's free.
©Linus Torvalds