Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 21 reacties

It-concern Sun en de Java-ontwikkelgemeenschap kunnen mogelijk met Google in aanvaring komen over de virtual machine die de zoekgigant heeft gebouwd voor zijn Android-platform.

Android logoDe virtuele machine met codenaam 'Dalvik' is niet gebaseerd op de open standaarden van de J2ME, maar op eigen implementatie van de taal. Volgens Stefano Mazzocchi, ontwikkelaar en bestuurslid van Apache Labs, heeft Google doelbewust Dalvik gebouwd om zo eventuele licentieproblemen met Sun te ontlopen.

Ontwikkelaars die Java Micro Edition in mobiele telefoons willen toepassen, moeten bij Sun een licentie aanvragen als ze iets aan de code veranderen. Daarbij mag Java Micro Edition gratis door de ontwikkelaar worden gebruikt, mits de fabrikant zijn innovaties volgens het opensourcemodel deelt met de ontwikkelgemeenschap. De grote fabrikanten van mobiele telefoons zijn echter huiverig om hun code vrij te geven.

Doordat de virtual machine van het Android-platform Java-code converteert naar Dalvik-code, zou Google kunnen claimen dat het geen Java gebruikt. Maar volgens Mazzocchi zou Sun Google kunnen aanklagen voor het schenden van zijn Java-patenten, indien toch blijkt dat er Java-code in Android is terug te vinden. Een reden voor een mogelijke botsing tussen de twee bedrijven zou volgens PC World kunnen zijn dat Google met zijn mobiele platform de zakelijke plannen van Sun doorkruist. Laatstgenoemde hoopt met zijn Java-technologie licentiegelden op te strijken uit de snel groeiende markt voor mobiele toepassingen.

Toch lijkt Sun vooralsnog nog niet over te gaan tot een ramkoers. Sun-ceo Jonathan Schwartz feliciteerde de zoekgigant met de lancering van Android, terwijl executive vice president of software Rich Green publiekelijk de hand uitstak richting Google. Green sprak de hoop uit dat Google en Sun hun software en api's onderling uitwisselbaar kunnen maken, zodat de al versplinterde markt voor mobiele toepassingen niet nog verder uit elkaar valt.

Moderatie-faq Wijzig weergave

Reacties (21)

FUD, just ignore.
Er zijn meerdere Java implementaties (zowel compiler and runtime implementaties). De enige implementatie die ooit problemen heeft veroorzaakt is die van Microsoft.
Verder is Java tegenwoordig voor een zeer groot deel GPL, dus is er al geen licentie issue.

[edit] Oh, de "licentie" issue is dat Android volledige APL is, en ook al is GPL compatible met APL wil google niet een mixed license voor Android. En Dalvik is dus niks anders dan een alternatieve JVM (net zoals de JVMs van IBM, Apple, Novell, etc.).

[Reactie gewijzigd door elmuerte op 19 november 2007 13:32]

ja precies,
//edit: ....said Stefano Mazzocchi... ze doelen hierop: http://www.betaversion.org/~stefano/linotype/news/110/
Dalvik converteerd java bytecode naar dalvik bytecode en gebruikt deze intern. (zie erreta @ link) Gezien de java compiler gewoon bytecode uitspuugt kan je gewoon standaard java gebruiken.

Android heeft ook niet helemaal het zelfde doel, android is gericht op smartphones, CLDC, JME op 'simple' mobile telefoons. Het enige verschil met CDC wat wel ongeveer het zelfde werk veld heeft is, wat ik zo kon ontdekken, javax.microedition.io package

Met omschrijving:
Provides a simplified mechanism for applications to use various types of I/O protocols in resource-constrained environments.

Het is logisch dat deze niet is geimplementeerd omdat android een uitgebreide I/O + NIO implementatie heeft. Mocht je dat compatibele willen maken kan je die klasses implementeren mbv de uitgebreide klasses.

De klasses die extra zijn, komen overeen met J2se. CDC staat extensies toe via profiles. The Connected Device Configuration is a Java Platform, Micro Edition (Java ME) configuration. This configuration is intended to be used by devices requiring a complete implementation of the Java virtual machine, and an API set that may, via the addition of profiles, include the entire Java Platform, Standard Edition API.

Dus het zou nog prima kunnen worden geretrofitted in CDC, waarvan ik me afvraag hoe populair het nu is. Tenzij iemand anders problemen ziet?

licencing ach, valt vast wel wat te regelen. JCP? sun wilt ook af en toe het graag omzeilen nu zijn ze niet meer als enige evil in dit daglicht.

[Reactie gewijzigd door Mr_Light op 19 november 2007 16:41]

Punt is meer dat Android niet 100% compatible is met de standaard JVM(me).
Ze zijn ongeveer 90% compatible, maar verschillen op 10% (missen bestaande functies of hebben extra).

Dus als Sun er zwaar aan gaat tillen, dan gaan ze hier wel tegenin.

Maar Sun ziet dit meer als een extra stuwkracht voor hun Java ME. Zelf zijn ze er ook niet tevreden mee en zullen de implementatie van Google gebruiken als richtlijn voor wat er (in de markt) gewenst is.
Daarnaast zal Google ook wel ingeven en dringende wensen van Sun implementeren (het is namelijk nog maar een Beta). Beide hebben namelijk baat bij als de applicaties onderling uitwisselbaar blijven.
Volgens mij moeten die implementaties 100% compatible zijn met de JVM van SUN. De vraag, voor mij, is tot in hoeverre de verschillen zich verhouden betreffende de JVMs van IBM, Apple, Novell?

Binnen IBM hebben we gewerkt met de IBM 'versie' van de SAX package. De indruk die wij destijds kregen was dat dit een zelfde versie was die 'blijkbaar' wat was doorgetest We hebben bij de versies geen onderlinge verschillen kunnen vinden buiten het feit dat er bij de nieuwere SAX versie updates (bugs/features) waren toegevoegd.
Green sprak de hoop uit dat Google en Sun hun software en api's onderling uitwisselbaar kunnen maken, zodat de al versplinterde markt voor mobiele toepassingen niet nog verder uit elkaar valt.
Als google denkt dat ze met Android de nieuwe standaard gaan zetten gaat die quote voor hun niet op natuurlijk... Zij kunnen dat ook zien als noodgreep van Sun om mee te willen varen op het succes..
Ik wens Google veel succes met het creeren van een eigen platform. Eigenlijk is enkel symbian (series 60) naast J2ME succesvol te noemen en worden alle andere platformen, (UIQ, Windows Mobile, Palm, Brew en de x linux versies) allemaal marginaal gebruikt voor 3th party applicaties. Het is niet voor niets dat Microsoft nog steeds zwaar loopt te lobbyen om Windows Mobile applicaties in de markt te krijgen.

[Reactie gewijzigd door humbug op 20 november 2007 05:38]

wat is hier het verschil met embrace & extend van MS?
Heeft MS enkele jaren terug z'n JVM niet moeten laten vallen om vergelijkbare redenen?
Welke extensies heeft Google toegevoegd dan?
Meer wat ze weggelaten hebben.
Dat lijkt me een kleiner probleem.
Software die op de JVM van Google werkt zou dan nog steeds moeten werken op de standaard JVM.
Stefano Mazzocchi kan dan wel vinden dat Google en Sun ruzie kunnen maken, maar zoals uit de rest van het artikel blijkt, lijkt er bij beide geen behoefte te zijn om ruzie te maken. Voor beide (en zeker SUN) is dit alleen contra-productief.
Dat Google geen ruzie wilde met Sun blijkt ook uit de hoeveelheid werk die ze besteed hebben aan het ontwikkelen van een eigen taal.

Kortom ze komen er wel uit. Volgens mij is Mazzocchi gewoon aan het stoken.
Waarom gaan ze niet gewoon met het compact framework van mono werken, daar draaien alle .net CF applicaties op en daar mag je aan prutsen zonder vervelende licenties. Microsoft zou hun alleen maar dankbaar zijn gezien ze .net CF populairder zouden maken en daarmee microsoft's ontwikkeltools.
Waarschijnlijk om dezelfde reden als ze ook niet met Java wilden werken. Het is niet van hun en maakt ze afhankelijk. Een afhankelijk zijn van MS wil Google al helemaal niet.
laat het Framework nou net zijn wat java niet is: een standaart, welke is vrijgegeven om zo te gebruiken. ( als in eigen implementaties maken, zonder gezeur )
euh... het .NET framework is juist een framework (vandaar de naam ;)), niet een standaard (met een d aub). C# en de Common Language Infrastructure zijn standaarden, maar dat heeft hier dan weer weinig mee te maken.
Mono is nog erger dan Java. Het Mono team zal altijd Microsoft proberen te volgen vanwege compatibiliteit. Google wil een stabiel platform waar ze zelf controle over hebben.
Mono is nog erger dan Java. Het Mono team zal altijd Microsoft proberen te volgen vanwege compatibiliteit.
Gek he, dat ze dezelfde ondersteuning willen bieden als die beschikbaar is op 95% van alle werkstations op deze planeet? :Y)
Eventjes ietsje verder nadenken he :). Wat heb je aan werkstation functionaliteit als je probeert een framework voor een mobiele telefoon in elkaar te draaien? Inderdaad, helemaal niks.
Dat het het porten van bestaande programma's naar mobiele programma's een stuk makkelijker maakt, misschien? Dat als je een programma schrijft dat gebruik maakt van .NET, dat het meteen op een hele sliert platformen kan werken? 1 van deze platformen is zelfs de meest gebruikte en daar zit de functionaliteit van .NET standaard in.
Omdat alle producten van Microsoft productafhankelijke(lees Windows) bagger zijn.
Ja mono is een opensource implementatie van het .NET framework die ook op *NIX draait. Dat neemt niet weg dat Microsoft nog steeds controle heeft over het .NET platform en de licentie daarop niet GPL of APL.
Ze kunnen als ze willen dus in veel landen met juridische acties mono verbieden.

Met de op dit moment beschikbare kennis van waar de markt naar toe gaat ben je mijns inziens uberhaupt niet goed bezig als je nog Microsoft producten gebruikt, maar dat terzijde.

Op dit item kan niet meer gereageerd worden.



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True