Après deux tentatives de négociation infructueuses au mois de septembre 2011 entre Oracle et Google dans l'affaire des brevets Java, une troisième rencontre est prévue le 30 septembre 2011— soit aujourd'hui — un mois avant la date provisoire du procès : le 31 octobre 2011.

L'affaire d'un point de vue technique

Pour comprendre les enjeux de cette affaire, quelques précisions techniques sont nécessaires. Afin de rester compréhensibles pour le plus grand nombre, nous avons volontairement simplifié nos explications.

Le fonctionnement de Java

L'histoire débute le 23 mai 1995 avec l'apparition d'un nouveau langage de programmation élaboré dans les locaux de la société  Sun Microsystems : le langage Java.

Une des particularités de ce dernier est sa portabilité : un seul et même programme peut être exécuté quel que soit le système d'exploitation utilisé ( Windows, Mac OS, Linux… )  Pour que cette portabilité soit possible les fichiers exécutables ne sont pas lus directement par le processeur, comme cela peut être le cas avec d'autres langages — comme le C++ par exemple — mais sont d'abord interprétés par un logiciel : la machine virtuel Java ou JVM — Java Virtual Machine.


 

Comparaison entre le fonctionnement d'un programme Java et celui d'un programme écrit avec un langage non portable — ici le C++

La machine virtuelle est donc un logiciel chargé de traduire un programme Java standard en instructions compréhensibles pour le processeur de la machine sur laquelle elle est installée. Chaque environnement peut donc utiliser un même fichier exécutable, mais  avec une machine virtuelle qui lui est propre.

Le fonctionnement d'Android

Le 5 novembre 2007, Google et d'autres industriels du secteur des télécommunications dont T-Mobile, HTC, Qualcomm et Motorola — l'Open Handset Alliance — annoncent le développement d'un nouveau système d'exploitation pour terminaux mobiles : Android.

Android  est un système reposant sur un noyau Linux — assurant les services de base comme la communication des composants — et dont les applications sont écrites en Java. Selon le principe exposé ci-dessus, ces dernières doivent donc être exécutées par une machine virtuelle : c'est principalement sur ce point que repose le conflit entre les deux géants.

Non satisfaits par la JVM  développée par Sun Microsystems les concepteurs d'Android décident de créer  un environnement d'exécution plus adapté à la finalité du système : Dalvik.

Avec Dalvik, les exécutables Java sont d'abord optimisés — notamment pour la gestion de la mémoire — puis exécutés par une machine virtuelle spécialement adaptée à ces modifications. On peut donc considérer Dalvik comme une sorte d'extension propriétaire de la technologie Java.


  Fonctionnement de Dalvik

Naissance de l'affaire

Certains observateurs ont dès le lancement d'Android fait un rapprochement intéressant avec une affaire qui avait opposé Microsoft et Sun Microsystems en 2002 à propos de la MSJVM, version de la JVM modifiée par Microsoft, non compatible avec la version standard, tout comme Dalvik. Sun Microsystems avait alors obtenu le retrait du marché de la MSJVM — pour se réconcilier deux ans plus tard avec Microsoft.

Un très bon récapitulatif de cette affaire est disponible à l'adresse suivante ( voir l'encadré intitulé "Le procès Sun Microsystems / Microsoft à propos de Java ") :
http://assiste.com.free.fr/p/abc/a/java.html

Mais face à Google, Sun ne bouge pas et le laisse paisiblement distribuer Android.

Le rachat de Sun par Oracle

Le 27 janvier 2010, la société Sun Microsystems est rachetée par Oracle qui devient ainsi légitimement propriétaire de Java  et du portefeuille de brevets associé.

Oracle, beaucoup plus incisif dans sa stratégie de développement voit très rapidement  dans Android une opportunité de soutirer quelques deniers au géant de Montain View et dépose plainte le 12 août 2010 contre ce dernier, l'accusant de violer "sciemment, directement et continuellement" la propriété d'Oracle sur Java.

Google conteste la validité de cette attaque et soumet les brevets litigieux à l'office des brevets américains — l' USPTO ( United States Patent and Trademark Office ) — qui invalide une partie des plaintes d'Oracle. Le dossier est trop lourd et la justice américaine demande aux deux protagonistes en mai 2011 de revoir leur copie afin de réduire l'ensemble des plaintes et des justificatifs pour que l'affaire soit jugeable.

D'autre part, avant la date provisoire du procès, le 31 octobre 2011, les deux parties ont été contraintes de se rencontrer à plusieurs reprises entre le 19 et le 30 septembre 2011 dans le but de négocier une sortie amicale de cette affaire ; sans succès jusqu'ici.

Quelle issue ?

Il pourrait bien s'agir de la dernière occasion pour les deux rivaux de trouver un arrangement et d'éviter le procès à la fin du mois.

Rappelons qu'Oracle réclame 2,6 milliards de dollars pour les préjudices passés auxquels pourraient venir s'ajouter quelques milliards supplémentaires pour les dommages futurs si Google était reconnu coupable et toujours en infraction.

Néanmoins, compte tenu du poids des deux acteurs, on peut toujours s'attendre à quelques assouplissements, reports ou bouleversements de dernière minute.