August 13, 2010 2 Comments
In one of its first big moves with the assets it’s acquired as part of the Sun acquisition, Oracle has just announce that it’s Suing Google for patent and copyright infringement. From the press release:
“In developing Android, Google knowingly, directly and repeatedly infringed Oracle’s Java-related intellectual property. This lawsuit seeks appropriate remedies for their infringement,” said Oracle spokesperson Karen Tillman.
The patents in question are:
* Protection domains to provide security in a computer system
* Controlling access to a resource
* Method and apparatus for pre-processing and packaging class files
* System and method for dynamic preloading of classes through memory space cloning of a master runtime system process
* Method and apparatus for resolving data references in generated code
* Interpreting functions utilizing a hybrid of virtual and native machine
* Method and system for performing static initialization
As Techdirt points out, it’s rare for large Silicon valley tech companies to sue each other like this, so it’s possible there’s more to the story here (and it seems likely the companies may have been negotiating in private for some amount of time):
Over the past few years, Sun has been one of the more outspoken companies against abusing the patent system, with former CEO Jonathan Schwartz explaining that real companies innovate, not litigate. However, Sun and its patents are now owned by Oracle, and apparently Larry Ellison feels otherwise. Oracle is now suing Google for patent infringement, using a bunch of patents that Sun owns around Java, claiming that Google’s Android implementation of Java is done without a license. This is a bit surprising, really, as big Silicon Valley tech companies don’t often get into patent battles with each other — and, historically, when they do launch such patent attacks, it’s usually a sign of something bigger being wrong with the company.
It should be noted that both Oracle and Google are Open Invention Network (OIN) licensees.
A little history on the situation from Ars:
Google makes heavy use of Java in the Android software development kit (SDK). Third-party developers code Android apps in Java, which is then translated into bytecode that runs in Dalvik, Google’s own custom VM. Google subsequently released the Android Native Development Kit, which allows developers to build Android components with C and C++. It is not intended to replace the Java development model, though, which remains the strongly preferred means of Android development.
Aside from its use of Java syntax, Google’s Android SDK implementation is largely independent from Oracle’s. It uses its own compiler and runtime tailored specifically for Android.
Originally developed by Sun Microsystems as a “write-once, run anywhere” language, Java became the property of Oracle when it purchased Sun in April 2009. Java was a significant part of the deal for Oracle, as it has been a major player in the world of Java middleware.
Prior to its acquisition by Oracle, Sun proved hostile to the Harmony Project, the Apache Software Foundation’s attempt to build an Apache-licensed Java SE implementation. In addition to Dalvik, Google also uses Harmony’s class libraries in Android, which has apparently aroused the ire of Oracle.
Carlo Daffara has posted a good analysis:
Let’s clear the table from the actual patent claims: the patent themselves are quite broad, and quite generic; a good example of what should not be patented (the security domain one is a good example; look at the sheet 5 and you will find the illuminating flowchart with the representation of: do you have the rights to do it? if yes, do it, if no, do nothing. How brilliant). Also, Dalvik implementation is quite different from the old JRE one, and I have strong suspicions that the actual Dalvik method is substantially different. But, that is not important. I believe that there are two main points that Oracle should have checked before filing the complaint (but, given the use of Schiller&Boies, I believe that they have still to learn from the SCO debacle): first of all, Dalvik is not Java and Google never claimed any form of Java compatibility. Second, there is a protection for patents as well, just hidden in recent history.
On the first point: in the complaint, Oracle claims that “The Android operating system software “stack” consists of Java applications running on a Java-based object-oriented application framework, and core libraries running on a “Dalvik” virtual machine (VM) that features just-in-time (JIT) compilation”. On copyrights, Oracle claims that “Without consent, authorization, approval, or license, Google knowingly, willingly, and unlawfully copied, prepared, published, and distributed Oracle America’s copyrighted work, portions thereof, or derivative works and continues to do so. Google’s Android infringes Oracle America’s copyrights in Java and Google is not licensed to do so … users of Android, including device manufacturers, must obtain and use copyrightable portions of the Java platform or works derived therefrom to manufacture and use functioning Android devices. Such use is not licensed. Google has thus induced, caused, and materially contributed to the infringing acts of others by encouraging, inducing, allowing and assisting others to use, copy, and distribute Oracle America’s copyrightable works, and works derived therefrom.”
Well, it is wrong. Wrong because Google did not copied Java – and actually never mention Java anywhere. In fact, the Android SDK produced Dalvik (not Java) bytecodes, and the decoding and execution pattern is quite different (and one of the reasons why older implementations of Dalvik were so slow – they were made to conserve memory bandwidth, that is quite limited in cell phone chipsets). The thing that Google did was to “copy” (or – for a better word – inspire) the Java language; but as the recent SPSS-vs-WPS lawsuit found, “copyright in computer programs does not protect programming languages from being copied”. So, unless Oracle can find pieces of documentation that were verbatim lifted from the Sun one, I believe that the copyright part is quite weak.
I have to wonder if the timing of this suit has anything to do with the negative publicity Google is getting over the recent Net Neutrality issue (and also note that the press release occurred right *after* Linuxcon ended, where Linux in the mobile space was an extremely hot topic.). The recent killing of OpenSolaris made some in the Open Source community even more leery of Oracle’s intention than they already were. This suit should serve to destroy any and all credibility Sun had built up in the FOSS world. It may also be the death knell for Java in mobile. It will be interesting to see how Google responds to this, and it’s certainly a topic I’ll be following closely and likely posting more about as details emerge. It will also be interesting to watch how this impacts other Open Source projects that were acquired by Oracle as part of the Sun portfolio.
Finally, James Gosling (the father of the Java) notes:
Oracle finally filed a patent lawsuit against Google. Not a big surprise. During the integration meetings between Sun and Oracle where we were being grilled about the patent situation between Sun and Google, we could see the Oracle lawyer’s eyes sparkle. Filing patent suits was never in Sun’s genetic code.