Portál AbcLinuxu, 2. května 2025 05:51
V srpnu jsme se dozvěděli, že Oracle podává žalobu proti Google kvůli porušování autorských práv a patentů na technologii Java. Pojďme si současnou situaci rozebrat.
Google Android je známá platforma určená především pro mobilní telefony, která našla využití i v tabletech nebo netboocích. Jde o přímého konkurenta pro iPhone a telefony s Windows Mobile. Když stál Google před rozhodnutím, na jakých technologiích svůj systém postaví, padlo rozhodnutí na Linux a programovací jazyk Java. Pro srovnání, na iPhone se používá Objective-C a na Windows C/C++ a jazyky platformy .NET. Java, kterou běžně známe na desktopu, byla v roce 2006 uvolněna jako open source pod licencí GNU GPLv2 v rámci projektu OpenJDK. Tento kód je majetkem firmy Oracle (dříve Sun Microsystems).
Java si své místo v telefonech našla už před několika lety, a to díky J2ME (Java 2 Mobile Edition). Co zpočátku bylo docela oblíbené, to po pár letech zapadlo, a tak je možnost napsat kód jen jednou a použít jej na různých mobilních platformách ta tam. Android sice využívá programovací jazyk Java, nicméně už jen z hlediska API jde o projekt naprosto nesouvisející s J2ME. Můžeme tedy říci, že Google zrealizoval renezanci tohoto jazyka na telefonech. Je tu ale háček. Ačkoliv je Java už i ve své hlavní implementaci open source, platí ohledně jejího využití jistá omezení, která například nepovolují volné použití právě na mobilních telefonech. Pro toto je zapotřebí zajistit si placenou licenci od Oracle, kterou Google nemá. Je to jeden z obchodních modelů, které si firma kolem Javy zachovala.
Google na to šel od lesa a jako základ systému použil Javu z projektu Apache Harmony, nikoliv GPL kód od Oracle. Můžeme už jen spekulovat, zda šlo o snahu jen ušetřit na licencích nebo zda za rozhodnutím stojí jiné praktické důvody. Na telefonech tedy ve výsledku neběží Oracle Java Virtual Machine (JVM), nýbrž Dalvik VM vlastní výroby. Ten se kupříkladu teprve před časem dočkal experimentální podpory kompilace JIT (Just in Time), jinak kód běží interpretovaně. Oracle proti tomu kontruje slovy, že Google poškozuje technologii Java vytvořením nekompatibilní odvozené technologie, čímž jde proti základnímu principu "write once, run anywhere" (napiš jednou, spusť kdekoliv). Zkompilovaný bajtkód pro Dalvik není použitelný pod JVM – minimálně zde je nekompatibilita jednoznačná. Odpovědí Google je, že zatímco firma umožnila napsání čisté reimplementace Javy, nebyl stejným způsobem uvolněn Test Compatibility Kit, který kompatibilitu ověřuje.
Jako by to nestačilo, kromě soudního sporu použil Oracle proti Google i další zbraň. Ať už šlo jen o postranní důsledek či hlavní úmysl, Apache Harmony nyní přišlo o svého hlavního přispěvatele nového kódu, tedy firmu IBM. Se slávou bylo oznámeno, že IBM bude pracovat na Javě přímo u zdroje, tedy na původním kódu z dílny Sunu a nyní Oracle.
Další reakce Google na žalobu byla taková, že nebyly poskytnuty přesné informace, kde přesně jsou autorská práva porušována. Firma současně požádala soud o zneplatnění patentů, které mají rovněž být porušovány. Oracle tedy soudu dodatečně zaslal podrobnosti kolem porušovaných práv. Jde o šest stran ukázek, kde na jedné straně vidíme kód původní a na druhé straně téměř shodný kód od Google. Do jaké míry jde jen o implementaci toho samého nebo jak hodně se opisovalo, to bude muset rozhodnout soud. Zdá se, že nejde o kód z projektu Harmony a že tato třída se nenachází v telefonech, neboť jde jen o třídu pro unit testy. Tak jako tak byl tento kód dle reakce Google v minulosti uvolněn jako open source, ačkoliv tedy pod GNU GPL, a ne pod licencí Apache. Google ale tímto nepřiznává, že by nějaký kód ukradli.
Takto vypadá úryvek tvrzení Oracle:
Android obsahuje knihovnu tříd a dokumentaci porušující autorská práva. Přibližně jedna třetina balíčků programového rozhraní Androidu (API) je odvozena od 19 balíčků Java API a příslušných dokumentů, k nimž vlastní autorská práva Oracle America. Mezi součásti práce, kde byla porušena práva Oracle America, patří názvy metod a tříd, definice, uspořádání a parametry Javy; struktura, uspořádání a obsah knihoven tříd Javy; a obsah a struktura dokumentace Javy. Příklady tohoto okopírování jsou předvedeny v předmětu doličném I
k této žalobě. V nejméně několika případech byl počítačový programový kód přímo okopírován z kódu Oracle America. Například, jak lze snadno vidět v důkazu J
, zdrojový kód třídy "PolicyNodeImpl.java" Androidu je téměř identický s "PolicyNodeImpl.java" v Javě od Oracle America, a to nejen názvem, ale i ve zdrojovém kódu řádek po řádku.
Trochu kompilikovanější je to tedy s dokumentací, neboť u té jednoznačně není povolena její redistribuce.
Pohled komunity na celý proces tedy bude záležet na tom, jestli se na situaci bude dívat čistě jen očima open source nebo také očima obchodníka, protože tento soudní spor určitě nebude mít žádný pozitivní dopad na svobodný software nebo Javu jako takovou. Jediný dopad bude na finance – tedy jestli a kolik bude kdo komu platit.
Ovšem ani Google není naprostý open source altruista, navzdory svým prohlášením. Ne všechny součásti, které najdeme na telefonech s Androidem, jsou totiž open source. Jde zejména o standardní aplikace jako Gmail nebo Android Market. Na druhou stranu dal Google světu opravdu použitelné mobilní telefony s Linuxem, které získaly zásadní podíl na trhu. Linux tedy najdeme nejen v routeru, modemu nebo televizi, ale už i ve své kapse.
Několik podobných sporů vedl už Sun. Úspěšně. Nevím, proč Google (kvůli fragmentaci) nenapadli už tehdy.
No a tak se snaží přes soudy a zastrašováním.
Jedna z původních spekulací naznačovala, že by pak mohl být i Google (stejně jako Oracle) *proti* SW patentům.
Předložka s se pojí se sedmým pádem, kdežto koho je pád druhý. Takže je to špatně.
Pokud chcete argumentovat archaickým pravopisem (kniha spadla se stolu), tak věz, že dnešní pravidla připouští obě možnosti.
Náš zatuchlý puritánsky udržovaný spisovný jazyk by potřeboval takových revizí opravdu mnoho.Protože řekl někdo, kdo nebyl schopen se ho na základní škole naučit nebo proč přesně? Kdo s koho se používá denně, nemusíš ani číst staré knihy (které nečtu ani já). Stačí si třeba občas prolistovat noviny. Zrovna aktuálně ohledně voleb, kde se to hojně používalo. Že se najdou takoví, co si vymýšlejí vlastní pravidla, typu 18-ti, slevnit a podobně, je fajn, ale ať je necpou těm, kteří ví, že to tak není. Budeme dělat něco neustále špatně, časem se z toho stane standard. Cesta Microsoftu?
ho v rámci informatiky zaujaly formální jazyky a gramatiky a v kontextu těchto efektivních vyjadřovacích prostředků je znechucen tím paskvilem pravidel a výjimek, kterým je češtinaPokusy o přísně formální "přirozené" jazyky existují a jsou, no, strašné. Zejména pokud by měly ovlivňovat životy lidí, kteří jimi mluví a kteří v nich přemýšlejí. Přirozené jazyky jsou od toho přirozené, že nespadly shůry (chacha, nebo snad zhůry? Zhůvěřilost…), ale má na ně vliv jeden každý člověk, který je používá (a tím zároveň neustále přetváří). Snahy o formalizaci přirozených jazyků jsou pochopitelné jako pracovní náplň lingvistů, ale to je tak všechno. Jazyk se neřídí pravidly, pravidla jsou (přibližným) popisem jazyka. Ne že bych ti tím řekl něco nového, vím.
Budeme dělat něco neustále špatně, časem se z toho stane standard. Cesta Microsoftu?Jde o to, že já osobně si myslím, že "kdo s koho" jako Jediná Správná Cesta™ je z výše popsaných důvodů špatně, takže standard ze špatného děláš v tuto chvíli ty. V diskuzi jsou i jiné na mě nezávislé názory (viz výše i níže), že 's' je tam možné psát, ale je to zastaralé. Nutit lidi používat zastaralou smradlavou věc z důvodů zpětné kompatibility zní o dost více jako Microsoft ;)
ono to slovní spojení existuje jenom se „s“To není pravda. Ačkoliv s yacem nesouhlasím, výše uvedl správný příklad použití se z. „Družstva zápasila kdo s koho. Pokud chcete vědět, kdo z koho nadělal v tomto utkání sekanou, čtěte zítřejší vydání našeho bulvárního plátku…“
No,já jsem neměl na mysli 4.pád, ale že ho nenapadla žádná možná ukázka použití.Tak, jaks to napsal, to vypadalo tak, jak jsem to zkritizoval (a tahle má věta mi připomněla Nohavicovo takové to s takovým tím, že když to dáš tam, tak když hraješ to, co by bez toho znělo tak, tak to s tím zní tak
ten mi za 5 minut konverzace opravil několikrát špatný tvar, který jsem vesele doposud používalTaké bych potřeboval někoho, s kým bych se (se mohl snažit) mluvit anglicky :)
tak proč bych tam měl psát S v rozporu s pravidlyAle to není v rozporu s pravidly. Je to přesně naopak v souladu s pravidly. Se čtvrtým pádem se totiž váže právě s, nikoliv z.
Android is a software stack for mobile devices that includes an operating system, middleware and key applications. The Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language.
Pod jakou verzí GPL Sun vydal sporný kód? Kdyby na něj bylo možné použít třetí verzi, tak tam jsou dodatečné podmínky zakázány.
V Americe je možné všechno, ale copyright na API je příliš i tam.
vim ~/.emacs
Oracle tvrdí, že ty kódy Google zkopíroval z té "jejich" Javy. Zdrojové kódy této Javy jsou samozřejmě stále dostupné pod ne-GNU-GPL licencí.... aha
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.