IcedRobot Android Fork Seeks to Preclude Oracle Litigation

The new IcedRobot project moves to fork Android using the OpenJDK implementation of Java.

A
team of savvy Java developers is working to fork Android to have a safe and open
implementation of the Android stack in case Oracle prevails in its litigation
against Google for allegedly infringing Oracle's Java patents in the creation
of Android.
In
a project known as IcedRobot, Mario Torre, a software developer at JPMorgan
Chase, and David Fu, an engineer at Opera Software, are leading a small team to
build a Java Virtual Machine for Android that is based on the open-source
OpenJDK implementation of Java.

Florian
Mueller, founder of the NoSoftwarePatents
campaign and author of the FOSS
Patents blog, said, "A group of open source developers that appears very
concerned over the implications of Oracle winning its lawsuit against Google
has started to build a Java virtual machine for Android that is based on the
GPL'd OpenJDK as opposed to the Apache Harmony codebase. To do this, they
apparently also build their own derived version of Android, which is called
-forking' in open source circles."

Fu
and Torre presented their IcedRobot ideas to a packed crowd at the Free and Open Source Software Developers'
European Meeting 2011 (FOSDEM XI), which ran Feb. 5-6 in Brussels,
Belgium. Blogging about
IcedRobot in a Feb. 8 post,
Torre said:
We-re
basically trying to do two main things:
1.
Have Dalvik
[the VM in Android] completely separated from the usual Android infrastructure
so that it runs as any other *unix program in the Linux environment (and non
Linux, I personally want it to work on OSX and QNX).
2. Avoid Dalvik and Harmony as much as possible and put the Android stack on
top of the OpenJDK class library, and run the whole thing in Hotspot (this is
cool, isn't it?).
The
second goal is the most interesting because it means basically that Android
will run on any Desktop finally: one environment, one specification one JVM.
Essentially,
IcedRobot is an attempt to bring the Android API
on the Linux Desktop, Torre said. Torre said he is working with Fu" to decouple
Dalvik from the custom Linux kernel that Android uses and at the same time to
port the extra APIs (and especially the graphics stack) so that I can run this
thing standalone.
Once
(actually, while) Dalvik is finally decoupled and the basic libraries are
working, we need to take it away completely so that we can run the code with
Hotspot. Of course, it is possible to just port the library code, but as I
said, I want to have Dalvik run on QNX and OSX without problems (I don-t care
about Windows, and I believe the worse thing we ever did was to allow Windows
users to alleviate the pain by sharing the good Free Software tools, but again,
this is a form of freedom as well and if somebody wants to do it, welcome)."
Though
Mueller lauds the IcedRobot idea he appears to have some reservations about the
project's chances for success.
"By
integrating Java code available on GPLv2 terms they hope to be safe from legal
attacks on Oracle's part, but this depends on what exactly they do and how the
implicit patent license contained in the GPLv2 would apply," Mueller said. "The
more they modify the OpenJDK code, the less likely they are to be covered by
that implicit patent license. But just the fact that they see a need to act and
don't trust that Google will defend itself successfully is interesting. Those
are skilled software developers who apparently concluded that they have to take
their destiny into their own hands..."
In
a description of the IcedRobot talk, labeled as "IcedRobot: The GNUlization of
Android," on the FOSDEM website, Fu said the IcedRobot project, which consists
of the GNUDroid and the GNUBishop subprojects:
GNUDroid
is a project meant to create an Android implementation using Free Software
components borrowed from GNU Classpath and OpenJDK. This will be the IcedRobot
Micro Edition.
GNUBishop
is a project meant to augment the standard features offered by Android with
typical Desktop functionality that are missing in the mobile world. This will
be the IcedRobot Standard Edition.
Yet,
in the slides for their FOSDEM talk, Fu and Torre identify a third subproject
known as "Daneel," which is described as a "pure Java Interpreter VM for
Dalvik."
Moreover,
in a Feb
8 blog post, Mueller said:
"I
admire the IcedRobot team for embarking on such an ambitious project. They
express a certain belief that Google and Oracle will have mixed feelings about
what they do, but I actually think that those companies will secretly hope that
the IcedRobot idea never materializes.
"Google's
strategy with Android is to avoid the GPL to the greatest extent possible.
Google wants to accommodate proprietary extensions that Android device makers
may consider valuable for differentiation purposes. Oracle, however, looks at
the mobile market as a key area in which it seeks to monetize Java. In this
area, Oracle insists on one of its field-of-use restrictions for third-party
Java implementations."
Other
bloggers cited IcedRobot, including Simon Phipps, chief
strategy officer at ForgeRock and former chief open source officer at Sun
Microsystems, who attended and spoke at FOSDEM, said, there "were plenty of
interesting talks, most notably Mario Torres and David Fu talking about their
IcedRobot project to get Android apps to run on OpenJDK (and thus on any
desktop)."
Meanwhile,
Fu and Torre said they believe "Android is a suitable alternative and a
compendium to Java Micro Edition, offering more capabilities but keeping a good
deal of possible compatibility, but has not yet targeted the Desktops, although
it already runs on high resolution devices such as InternetTV, the IcedRobot
project will try to leverage this compatibility and unleash the full potential
power of Android."

Darryl K. Taft covers the development tools and developer-related issues beat from his office in Baltimore. He has more than 10 years of experience in the business and is always looking for the next scoop. Taft is a member of the Association for Computing Machinery (ACM) and was named 'one of the most active middleware reporters in the world' by The Middleware Co. He also has his own card in the 'Who's Who in Enterprise Java' deck.