Internet Info, s.r.o. Lupa Měšec Podnikatel Root Zdroják DigiZone Slunečnice Vitalia TopDrive KupDnes Navrcholu NovýTarif Dobrý web Weblogy Woko Jagg Computer.cz SK: MojeLinky

Hlavní navigace

Kterak Google vypekl Sun a sebral mu Javu

Sun si svou Java platformu velmi bedlivě střeží a přestože ji vydává pod GNU GPL, má stále způsob, jak donutit prodejce mobilů platit za komerční licenci. Google je však očividně chytřejší než samotný Sun a podařilo se mu obejít celý systém. Vydal si mobilní Javu pod vlastní licencí. Jak to dokázal?

Tweetni to Twitter Jaggni to! Jagg Del.icio.us Delicious

Java je otevřená…

Společnost Sun Microsystems vydala Javu jako open sourcevíce než před rokem. Měla k tomu v podstatě dva hlavní důvody. Jednak se tímto krokem chtěla více „skamarádit“ s open-source komunitou, chtěla ale také získat nové vývojáře, nápady a opravy pro svůj přední produkt.

Pod licencí GNU GPL je však vydána pouze Java Standard Edition. Otevřená Java je k dispozici pod názvem OpenJDK a licence GNU GPL verze 2 byla doplněna o Classpath doložku. Ta umožňuje proti knihovnám linkovat také kód vydaný pod jinými licencemi. Technicky je tak licence podobná GNU LGPL.

… ale ne úplně

Sun však vymyslel velmi chytrou taktiku, která mu umožňuje stále Javu kontrolovat. To byl během úvah o otevření asi největší problém. Totiž jak si stále udržet kontrolu a vydělávat i nadále na prodeji komerčních licencí.

Sun na to šel velmi šalamounsky a mobilní Javu vydal bez Classpath doložky. To znamená, že ji sice můžete využít, ale svůj kód musíte vydat také pod GNU GPL, protože je přímo založen na Java knihovnách. Využívá se při tom chytře virální podoba licence, která „infikuje“ i závislý kód.

Tímto chytrým krokem Sun způsobil dvě věci: V očích komunity je to jistě skvělý tah a vývojáři se zaradovali, že mají konečně vysněné kódy po ruce. Na druhou stranu to ale pro Sun znamená zajištění příjmů do budoucna. Komerční firmy (třeba výrobci mobilů) si raději zaplatí za jinou komerční licenci, aby mohly vyvíjet uzavřený software. Sun tak má nakonec jak nakloněné lidi z komunity, tak i peníze a kontrolu nad Javou.

Sun také jistým způsobem podpořil také projekt Harmony, který implementuje vlastní Javu pod licencí Apache. Harmony dostal od Sunu licenci na testovací nástroj TCK, který umožnil certifikovat Harmony jako plně kompatibilní prostředí.

Chytrý Google na scéně

Google nedávno oznámil, že připravuje vlastní platformu pro mobilní telefony. Ta bude založena na Linuxu a ponese název Android. To už víme, ale zajímavé je, že Android bude obsahovat mobilní Javu, vydanou pod licencí Apache License v2.

To samozřejmě zvedlo velkou vlnu zájmů a všichni (zřejmě včetně vás) se teď ptají: Jak je vůbec možné, že Sun licencoval něco takového? Vždyť to může velmi vážně ohrozit suverenitu jeho mobilní Javy na trhu. Odpověď je jednoduchá, ale o to víc překvapivá: Sun to nebyl.

Google si totiž pomohl sám a vtipně prokličkoval mezi licencemi Sunu, aniž by potřeboval jeho požehnání. Odpovědí na originální mobilní Javu je něco, čemu Google říká jednoduše Dalvik. Podle všeho to zřejmě bude nová noční můra společnosti Sun.

Java nejava

Dalvik je virtuální stroj, velmi podobný kolegům jako Java nebo .NET. Vytvořil jej však Google a uvolnil jeho zdrojový kód, aniž by se při tom musel někoho ptát. Otázkou sice je, co s tím Sun udělá a jak budou vypadat žaloby, které podá (pokud to udělá), ale v tuto chvíli je Dalvik venku a je k dispozici všem.

Celý trik však spočívá v tom, jak Dalvik funguje. Technicky vzato je plně kompatibilní s Javou, ale používá vlastní bytekód. Google ale netvrdí, že se jedná o Javu, nýbrž o jeho vlastní řešení. To, že je kompatibilní s Javou, je takový „bonus navíc“, který je ale přes nenápadný postoj Google naprosto zásadní.

Google tedy používá vlastní engine a k němu přidal knihovny ze zmíněného svobodného projektu Harmony. Tím zcela obešel licence Sunu, protože nepoužil žádný z jeho kódů. Nakonec tak může výsledek vydat pod licencí Apache, která uživatele nesvazuje svou virovostí.

Kompatibilita prostředí Java a Dalvik je zajištěna přímou konverzí bytekódu. Pokud chcete upravit program pro Dalvik, nejprve použijete klasický kompilátor Javy a vytvoříte binárku. Tu poté s pomocí Googlem dodávaného nástroje DX převedete do nového bytekódu. Program změní soubory .class a .jar na nové s příponou .dex. Výsledek už poběží na Androidu.

Z toho samozřejmě plyne několik zásadních výhod: Při vývoji pracujete s klasickou Javou včetně všech dostupných nástrojů a vyvíjíte, jak jste zvyklí. K samotné transformaci ale vůbec nepotřebujete zdrojové kódy a převést tak můžete i uzavřené projekty.

V důsledku tak vlastně Google vytvořil vlastní implementaci Javy, která ovšem z právního a technického hlediska vůbec Javou není a už vůbec není závislou na původním produktu firmy Sun. Nepodléhá tak žádným licenčním ujednáním stejnojmenné firmy. Převod programů je navíc natolik jednoduchý a bezproblémový, že nepředstavuje významnou překážku v nasazení.

Co na to Sun?

Veselé však na celé věci je, že Sun může jen nečinně přihlížet a sledovat, jak mu někdo bere vítr z plachet. Mohl by této situaci teoreticky předejít, pokud by měl patent na standardní Java knihovnu, ale on jej nemá. I tak je ovšem otázka, jak by jej byl schopen aplikovat proti něčemu, co vlastně ani s jeho programem (tedy onou knihovnou) není kompatibilní, natož aby jej někdo vykrádal.

Je samozřejmě možné, že se firma obrátí na soud s tím, že Google zneužil jejího intelektuálního vlastnictví. To je ale běh na dlouhou trať a v tuto chvíli je dost těžké odhadnout, jaká je jeho šance na úspěch.

Sun má totiž stále ještě možnost napadnout koncové uživatele Dalviku. Licence Apache totiž umožňuje licencovat intelektuální vlastnictví a poskytnout jej dalším uživatelům, ale licenci lze aplikovat jen na to IP, které vlastníte. Takže by mohl Sun teoreticky postupně obcházet uživatele (výrobce telefonů) a chtít po nich platbu za licence.

Ve výsledku však Sunu vznikla velmi silná konkurence, kterou nemá jak ovládat a která zároveň nahrává do karet výrobcům mobilních zařízení. Ti si totiž mohou říci „mám platit Sunu za komerční licenci nebo sáhnout po Dalviku, který umí totéž a zadarmo“. Zřejmě si to proto nenechá líbit.

Google přechytračil Sun

Ať už se Sun zachová jakkoliv, je zřejmé, že Google převezl licenčně Sun a vytvořil odvozený produkt, který vlastně zároveň odvozený není a ani není možné prokázat jeho přímou kompatibilitu. Dalvik má proto jistě šanci na úspěch a mohl by tak Sunu odlákat určitou skupinu platících uživatelů. Je navíc názorně vidět, že i svoboda může být svobodnější.


Článek vychází z anglického originálu, jehož autorem je Stefano Mazzocchi.

Petr Krčmář

Petr Krčmář

Petr Krčmář pracuje jako šéfredaktor serveru Root.cz. Vystudoval elektroniku se zaměřením na počítačové systémy, nyní se zabývá médii, především těmi elektronickými.

Školení: Zavedení Google Apps do firmy

Cílem školení je provést účastníky jednotlivými kroky zavedení Google Apps na vlastní doménu a seznámit je se základy administrace, aby byli schopni Google Apps sami udržovat a rozvíjet dle potřeb. Účastníci se také dozví, jak používat základní služby v balíku Google Apps (Gmail, Kalendář, Dokumenty a Weby Google) a jaké jsou možnosti jejich využití ve firmě.

Podrobnější informace a přihláška  

Ohodnoťte jako ve škole:
Průměrná známka 2,52

Přehled názorů

Boze muj
erg 15. 11. 2007 00:28
Nový
ach
n00b 15. 11. 2007 00:38
Nový
└ 
Re: ach
Mark 15. 11. 2007 19:07
Nový
 
├ 
Re: ach
h 16. 11. 2007 12:35
Nový
 
└ 
Re: ach
anonymní uživatel 19. 11. 2007 12:14
Nový
 
 
└ 
Re: ach
mtd 19. 11. 2007 12:16
Nový
patenty
LO 15. 11. 2007 01:28
Nový
└ 
Re: patenty
HKMaly 15. 11. 2007 08:43
Nový
google
JirkaH 15. 11. 2007 01:44
Nový
skvele
M jako Molitan 15. 11. 2007 02:09
Nový
├ 
Re: skvele
anonymní uživatel 15. 11. 2007 02:50
Nový
│
└ 
Re: skvele
Joshis 15. 11. 2007 02:57
Nový
├ 
Re: skvele
K ja K.... 15. 11. 2007 09:23
Nový
│
└ 
Re: skvele
M jako Molitan 15. 11. 2007 13:28
Nový
└ 
Re: skvele
Xerces 15. 11. 2007 09:23
Nový
jak vychcany google....
anonymní uživatel 15. 11. 2007 02:49
Nový
├ 
Re: jak vychcany google....
Joshis 15. 11. 2007 02:55
Nový
│
├ 
Re: jak vychcany google....
antirudoch 15. 11. 2007 05:42
Nový
│
│
└ 
Re: jak vychcany google....
Jouda 15. 11. 2007 08:08
Nový
│
│
 
└ 
Re: jak vychcany google....
melkor 15. 11. 2007 08:33
Nový
│
│
 
 
├ 
Re: jak vychcany google....
z80pin6 15. 11. 2007 10:24
Nový
│
│
 
 
│
└ 
Re: jak vychcany google....
JardaP 15. 11. 2007 11:33
Nový
│
│
 
 
└ 
Re: jak vychcany google....
Pepa 15. 11. 2007 17:13
Nový
│
└ 
Re: jak vychcany google....
JardaP 15. 11. 2007 11:31
Nový
└ 
Re: jak vychcany google....
Radomil Martinec 15. 11. 2007 08:54
Nový
 
├ 
Re: jak vychcany google....
anonymní uživatel 15. 11. 2007 10:01
Nový
 
│
├ 
Re: jak vychcany google....
Lefty 15. 11. 2007 11:18
Nový
 
│
│
├ 
Re: jak vychcany google....
anonymní uživatel 15. 11. 2007 11:59
Nový
 
│
│
│
└ 
Re: jak vychcany google....
Mard 15. 11. 2007 13:14
Nový
 
│
│
│
 
└ 
Re: jak vychcany google....
NaiL 15. 11. 2007 16:25
Nový
 
│
│
├ 
Re: fakta
LO 15. 11. 2007 12:42
Nový
 
│
│
│
├ 
Re: fakta
BruXy 15. 11. 2007 13:34
Nový
 
│
│
│
│
└ 
Re: fakta
PaJaSoft 15. 11. 2007 14:08
Nový
 
│
│
│
├ 
Re: fakta
PaJaSoft 15. 11. 2007 14:06
Nový
 
│
│
│
│
└ 
Re: fakta
Pavel Tisnovsky 15. 11. 2007 14:11
Nový
 
│
│
│
│
 
└ 
Re: fakta
LO 15. 11. 2007 21:40
Nový
 
│
│
│
├ 
Re: fakta
Martin Doucha 15. 11. 2007 14:42
Nový
 
│
│
│
│
└ 
Re: fakta
LO 15. 11. 2007 21:49
Nový
 
│
│
│
│
 
└ 
Re: fakta
Martin Doucha 16. 11. 2007 10:24
Nový
 
│
│
│
├ 
Re: fakta
Seti 15. 11. 2007 15:13
Nový
 
│
│
│
├ 
Re: fakta
mofo 15. 11. 2007 15:26
Nový
 
│
│
│
│
└ 
Re: fakta
LO 15. 11. 2007 21:52
Nový
 
│
│
│
│
 
└ 
Re: fakta
Marv 16. 11. 2007 09:17
Nový
 
│
│
│
│
 
 
└ 
Re: fakta
anonymní uživatel 16. 11. 2007 21:22
Nový
 
│
│
│
│
 
 
 
└ 
Re: fakta
Rejpal 16. 11. 2007 21:45
Nový
 
│
│
│
│
 
 
 
 
└ 
Re: fakta
anonymní uživatel 17. 11. 2007 12:12
Nový
 
│
│
│
├ 
Re: fakta
anonymní uživatel 15. 11. 2007 15:32
Nový
 
│
│
│
│
└ 
Re: fakta
zd.valek 15. 11. 2007 19:22
Nový
 
│
│
│
│
 
├ 
Re: fakta
zd.valek 15. 11. 2007 19:34
Nový
 
│
│
│
│
 
└ 
Re: fakta
LO 15. 11. 2007 21:56
Nový
 
│
│
│
│
 
 
└ 
Re: fakta
Martin Doucha 15. 11. 2007 22:35
Nový
 
│
│
│
└ 
Re: fakta
anonymní uživatel 15. 11. 2007 19:17
Nový
 
│
│
└ 
Re: jak vychcany google....
TNX 16. 11. 2007 07:41
Nový
 
│
└ 
Re: jak vychcany google....
mtd 19. 11. 2007 12:32
Nový
 
└ 
Re: jak vychcany google....
marwyn 15. 11. 2007 17:17
Nový
Prave ze naopak
bluemoon 15. 11. 2007 03:30
Nový
└ 
Re: Prave ze naopak
Michal Vyskocil 15. 11. 2007 09:00
Nový
 
└ 
Re: Prave ze naopak
bluemoon 15. 11. 2007 09:30
Nový
 
 
├ 
Re: Prave ze naopak
anonymní uživatel 15. 11. 2007 10:04
Nový
 
 
│
├ 
Re: Prave ze naopak
bluemoon 15. 11. 2007 10:38
Nový
 
 
│
└ 
Re: Prave ze naopak
bluemoon 15. 11. 2007 11:02
Nový
 
 
│
 
├ 
Re: Prave ze naopak
anonymní uživatel 15. 11. 2007 12:01
Nový
 
 
│
 
└ 
Re: Prave ze naopak
anonymní uživatel 16. 11. 2007 00:20
Nový
 
 
└ 
Re: Prave ze naopak
Peter Helcmanovsky 15. 11. 2007 11:20
Nový
 
 
 
├ 
Re: Prave ze naopak
Miloš 15. 11. 2007 12:04
Nový
 
 
 
│
├ 
Re: Prave ze naopak
Miloš 15. 11. 2007 12:16
Nový
 
 
 
│
│
└ 
Re: Prave ze naopak
3pod 15. 11. 2007 19:13
Nový
 
 
 
│
└ 
Re: Prave ze naopak
anonymní uživatel 15. 11. 2007 12:38
Nový
 
 
 
└ 
Re: Prave ze naopak
bluemoon 15. 11. 2007 16:20
Nový
goggle
Zmrdat Goggle 15. 11. 2007 06:02
Nový
└ 
Re: goggle
anonymní uživatel 15. 11. 2007 07:58
Nový
 
└ 
Re: goggle
Martin Soukup 15. 11. 2007 08:21
Nový
 
 
└ 
Re: goggle
ksfj 15. 11. 2007 16:08
Nový
Chce se mi zvracet
prtif 15. 11. 2007 09:30
Nový
└ 
Re: Chce se mi zvracet
anonymní uživatel 15. 11. 2007 12:42
Nový
 
└ 
Re: Chce se mi zvracet
Miloslav Ponkrác 15. 11. 2007 12:59
Nový
 
 
└ 
Re: Chce se mi zvracet
Pavel Tisnovsky 15. 11. 2007 14:01
Nový
 
 
 
├ 
Re: Chce se mi zvracet
PaJaSoft 15. 11. 2007 14:11
Nový
 
 
 
└ 
Re: Chce se mi zvracet
Kyo 15. 11. 2007 22:56
Nový
 
 
 
 
└ 
Re: Chce se mi zvracet
Pavel Tisnovsky 16. 11. 2007 11:10
Nový
Jaké přechytračení?
pkm 15. 11. 2007 09:39
Nový
├ 
Re: Jaké přechytračení?
Petr Krčmář 15. 11. 2007 11:00
Nový
│
└ 
Re: Jaké přechytračení?
Miloslav Ponkrác 15. 11. 2007 13:43
Nový
│
 
└ 
Re: Jaké přechytračení?
dunsun 20. 11. 2007 23:46
Nový
└ 
Re: Jaké přechytračení?
Franta Multiným 19. 11. 2007 09:46
Nový
A co na to Sun?
srakyi 15. 11. 2007 09:44
Nový
├ 
Re: A co na to Sun?
anonymní uživatel 15. 11. 2007 10:15
Nový
└ 
Re: A co na to Sun?
funTom 15. 11. 2007 10:29
Nový
 
└ 
Re: A co na to Sun?
anonymní uživatel 15. 11. 2007 12:07
Nový
 
 
└ 
Re: A co na to Sun?
Mark 15. 11. 2007 19:29
Nový
 
 
 
├ 
Re: A co na to Sun?
Miloslav Ponkrác 15. 11. 2007 19:49
Nový
 
 
 
└ 
Re: A co na to Sun?
LO 15. 11. 2007 22:17
Nový
Reverzní inženýrství v OS?
Jakub 15. 11. 2007 10:13
Nový
├ 
Re: Reverzní inženýrství v OS?
anonymní uživatel 15. 11. 2007 10:16
Nový
├ 
Re: Reverzní inženýrství v OS?
Miloslav Ponkrác 15. 11. 2007 11:54
Nový
│
└ 
Re: Reverzní inženýrství v OS?
PaJaSoft 15. 11. 2007 14:16
Nový
│
 
├ 
Re: Reverzní inženýrství v OS?
Miloslav Ponkrác 15. 11. 2007 14:35
Nový
│
 
│
└ 
Re: Reverzní inženýrství v OS?
mtd 19. 11. 2007 12:52
Nový
│
 
└ 
Re: Reverzní inženýrství v OS?
jucas 15. 11. 2007 16:39
Nový
├ 
Re: Reverzní inženýrství v OS?
Pavel Tisnovsky 15. 11. 2007 13:05
Nový
│
└ 
Re: Reverzní inženýrství v OS?
Michal Vyskocil 16. 11. 2007 15:47
Nový
└ 
Re: Reverzní inženýrství v OS?
Richard Malaschitz 15. 11. 2007 14:34
Nový
 
└ 
Re: Reverzní inženýrství v OS?
mtd 19. 11. 2007 12:53
Nový
Názor
pop 15. 11. 2007 13:28
Nový
SUN si za to môže sám
RioM 15. 11. 2007 14:30
Nový
├ 
Re: SUN si za to môže sám
BoodOk 15. 11. 2007 17:16
Nový
├ 
Re: SUN si za to môže sám
BoodOk 15. 11. 2007 17:24
Nový
│
└ 
Re: SUN si za to môže sám
Miloslav Ponkrác 15. 11. 2007 18:21
Nový
├ 
Re: SUN si za to môže sám
LO 15. 11. 2007 22:24
Nový
├ 
Re: SUN si za to môže sám
dasaa 16. 11. 2007 09:49
Nový
│
└ 
Re: SUN si za to môže sám
gregy 17. 11. 2007 19:50
Nový
└ 
Re: SUN si za to môže sám
dunsun 21. 11. 2007 00:09
Nový
zkurvení zloději!
Anonym 15. 11. 2007 14:53
Nový
├ 
Re: zkurvení zloději!
R 15. 11. 2007 16:12
Nový
└ 
Re: zkurvení zloději!
dunsun 21. 11. 2007 00:03
Nový
Root...a jeho články
TaTATa 15. 11. 2007 15:42
Nový
└ 
Re: Root...a jeho články
bluemoon 15. 11. 2007 16:45
Nový
Autor je uplne mimo
calixaren 15. 11. 2007 18:04
Nový
kolik lidi zacnet vyvijet
moj 15. 11. 2007 19:18
Nový
java?
disorder 15. 11. 2007 20:34
Nový
MS
Honza 15. 11. 2007 20:34
Nový
└ 
Re: MS
mtd 19. 11. 2007 12:40
Nový
 
└ 
Re: MS
dunsun 21. 11. 2007 00:05
Nový
No...
Jirka 15. 11. 2007 20:58
Nový
bozinku!
www 15. 11. 2007 21:33
Nový
└ 
Re: bozinku!
bluemoon 15. 11. 2007 21:53
Nový
 
└ 
Re: bozinku!
Michal Vyskocil 16. 11. 2007 15:53
Nový
Z Rootu je druhý BLESK!
xm 15. 11. 2007 23:42
Nový
článek vychází z...?
koles 16. 11. 2007 09:17
Nový
       

Tento text je již více než dva měsíce starý. Chcete-li na něj reagovat v diskusi, pravděpodobně vám již nikdo neodpoví. Pro řešení aktuálních problémů doporučujeme využít naše diskusní fórum.

Zasílat nově přidané příspěvky e-mailem