Could a lawsuit derail Android? Understanding Oracle’s threat to Google

oracle-android-hanging-in-effigy

The major patent and copyright infringement case between Google and Oracle over technology included in Android looks like it may be going to trial, just not anytime soon. Judge William Alsup issued his preliminary trial plan to both sides Wednesday, noting that the trial is not going to get started in 2011—and everyone involved had better get prepared for a long-drawn out proceeding rather than a quick summary trial. Judge Alsup outlined plans for a three-phase jury trial—phase one to cover copyright claims, phase two to cover patent claims, and a third phase for all remaining issues. The judge noted that the court needs lead time for prepare, and that includes jury selection and preparation for the lengthy disruptions jurors can expect to face. And still, no trial date has been set.

What’s at stake in the fight between Oracle and Google, and what impact could it have on the future of Android?

It’s all about Java

The crux of Oracle’s case against Google has to do with Java technology, which became Oracle’s property when it acquired Sun Microsystems back in early 2010. In the 1990s, Sun developed Java as a “write once, run anywhere” technology that was supposed to provide a way for developers to write applications for any platform (Windows, Mac, Linux, whatever) so long as those platforms had a Java virtual machine. In simple terms, a virtual machine is a software program that simulates a computer and operating system. Software for a virtual machine doesn’t need to know anything about the actual hardware it’s running on, so long as the virtual machine provides access to all necessary capabilities. Sun developed the original Java virtual machine, but more importantly, solidified the specifications for virtual machines that could run Java applications. Other people could, and did, make their own Java virtual machines, either based on Sun’s work or starting from scratch.

apple to contribute open source java for mac logoThe appeal was obvious: Instead of having to write and maintain different versions of apps for every different platform, you’d write one app, and it’d run anywhere, thanks to Java.

The reality turned out a bit different. For one thing, Java apps almost always feel wrong on the desktop. They don’t follow the conventions of the host operating system, meaning users have to struggle to manage windows, controls, and even files. In the early days, Java apps performed slowly compared to native apps, thanks to the overhead of the virtual machines.

What’s more, the early days of Java were significantly muddied by Microsoft. Microsoft signed a licensing deal with Sun for Java technology, then proceeded to integrate its own changes into the Java language and virtual machine so it ran differently, and, in Microsoft’s view, better, on Windows. Eventually, apps for Microsoft’s version of Java didn’t run anywhere but on Windows. So much for write once, run anywhere. Sun sued (and eventually settled with) Microsoft to terminate the license agreement and prevent Microsoft from advertising their apps as Java-compatible, but the damage was done. By that point, many desktop app developers were significantly put off from Java technology, although there are exceptions like OpenOffice, which continues to rely on Java.

However, Java survived and actually thrived in two other areas: server applications and mobile. For server apps, the look and feel of a desktop application doesn’t matter: Users are only connecting to it with a Web browser, database client, or other front end that can be native to their platform. Making portions of the server-side code using Java enabled middleware and enterprise software developers to quickly deploy their systems to a number of platforms: Unix, Solaris, BSD — heck, even Windows. This server-side aspect was one of the main reasons Oracle was interested in acquiring Sun in the first place, since Oracle’s primarily business is enterprise software. Similarly, as mobile phones and other devices began to offer more significant processing power and memory, Java became a viable solution for bringing software to those devices. Sun designed the Java Platform, Micro Edition (or J2ME) specifically for things like phones, set-top boxes, and standalone devices, and it was a huge success. Some industry estimates place the number of mobile devices with J2ME over 2.5 billion, and although J2ME isn’t in today’s leading smartphones, it continues to roll out in Symbian and other devices worldwide.

How Java is (and isn’t) in Android

As Google worked to develop Android, it realized that if it wanted to foster a broad ecosystem of device makers, it needed to provide a way to effectively write code for Android devices that would work on a wide variety of possible architectures. That lead Google directly to the idea of virtual machines, and just as quickly to Java.

However, instead of licensing Java technology from Sun (this was all taking place before Oracle’s acquisition) Google decided to make its own virtual machine with characteristics useful to mobile devices: Dalvik. Google’s Dan Bornstein decided to start over from scratch, rather than starting from an existing Java VM. According to Google, Dalvik is a clean-room design of a Java virtual engine, created by reverse engineering the behavior of Java VMs without using any of Sun’s (now Oracle’s) copyrighted or patented technology. And, indeed, Dalvik exhibits several characteristics that make it distinct from other Java VMs. For one thing, it uses a register-based architecture rather than a stack design (meaning, it can run using fewer instructions with the tradeoff of somewhat larger code). Dalvik is also designed to run on resource-constrained mobile devices, and converts most Java class files to its own instruction set, which can then be further optimized on a device-by-device basis depending on profile information.

As Android got to market, Google offered an Android Native Development Kit that enabled developers to create Android software components using C and C++. Many developers use that native development kit for their apps (or parts of them), particularly for apps that can leverage multi-core processors, and high-performance game technologies. However, mainstream Android development using the standard Android SDK relies on Dalvik. In other words, with the exception of some device-specific apps and leading-edge games that only run on a handful of Android devices, the vast majority of Android software depends on the Dalvik engine.

Gaming

Has it really been 17 years? The past, present, and future of the Xbox

From DirectX Box to 720, it's been a long, strange trip for Microsoft's Xbox gaming console. Here is what happened, from its odd beginnings to the rumored Scarlett console with streaming.
Podcasts

Avengers aftermath: From The Eternals to The Boys, things are about to get weird

On this week's show, we'll take a deep dive into what's coming after Avengers: Endgame. Sure, it's probably going to be the biggest movie ever, but what about Marvel/Disney's Phase 4? We'll tell you why The Eternals may be a big part of it.
Mobile

Breaking news: Samsung responds to reported Galaxy Fold display issues

The Samsung Galaxy Fold has arrived, and it goes on sale soon. Folding out from a 4.6-inch display to a tablet-sized 7.3-inch display, this unique device has six cameras, two batteries, and special software to help you use multiple apps.
Product Review

Samsung's Galaxy Fold proves folding phones are the future

Samsung's Galaxy Fold is finally here -- it's the company's first foldable smartphone, with three screens, six cameras, and a dual-cell battery. What's it like to use? We spent some time with it to find out.
Mobile

Spruce up your Lenovo smartphone with the best Moto Mods for the Moto Z-series

Moto Mods, the snap-on accessories compatible with Lenovo's Moto Z-series smartphones add a lot of value without adding a lot of bulk. Looking to try one out? Here are a few of our favorite Moto Mods.
Mobile

The Pixel 3 range will soon be coming to T-Mobile's network

Google's latest flagships, the Pixel 3 and Pixel 3 XL, are now official and we have all the details from the October 9 event in New York City and Paris. Here's everything we know about the Google Pixel 3 and Pixel 3 XL.
Mobile

The Pixel 3a and 3a XL will be coming to the U.S. with T-Mobile

The Google Pixel 3 and Pixel 3 XL are considered to be two of the best Android smartphones, but it looks like Google could be prepping a midrange line. Say hello to the Pixel 3a and Pixel 3a XL.
Mobile

The black satin Razer Phone 2 is now available for $500

The Razer Phone 2 is finally here, and it's got upgraded specs, that super-smooth 120Hz display, and an updated design. Here's absolutely everything you need to know about the Razer Phone 2.
Mobile

The best LG G7 ThinQ cases will keep your phone looking new

The LG G7 ThinQ comes with a powerful processor, versatile cameras, and amazing sound. But a powerful phone still needs protection and you might want to change the style. Here are the best LG G7 ThinQ cases.
Mobile

Multiple phone leaks show May 21 is going to be a big day for Honor

Honor will launch at least one new smartphone on May 21, at an event taking place in London. Leaks have indicated the Honor 20 will take center stage, with a Lite version, and perhaps even another model also showing up on the day.
Mobile

The Avalon V is Alcatel’s first Verizon-exclusive smartphone

Alcatel is has announced a new phone, the Avalon V -- but this budget device isn't what makes the announcement special. It's Alcatel's first phone on the Verizon network, and it's available now.
Mobile

Big, beautiful, and breakable: Check out the best Galaxy S8 Plus cases

There’s no denying Samsung’s ability to turn out an attractive smartphone, but glass curves are expensive to fix and metal chips easily. We've rounded up the best Galaxy S8 Plus cases on the market.
Mobile

Sidestep banking fees with the nationwide launch of T-Mobile Money

T-Mobile has launched its Money banking service nationwide in the U.S., and it offers an extremely tempting set of features for everyone, including industry-leading interest rates, a powerful app, and no banking fees.
Mobile

The OnePlus 3 & 3T both receive an open beta for Android Pie

Android 9.0 Pie has been released. But is your phone getting Android 9.0 Pie, and if so, when? We've done the hard work and asked every device manufacturer to see when their devices would be getting the update.
1 of 2