Channels ▼

Eric Bruno

Dr. Dobb's Bloggers

It's A Java Embedded World

September 03, 2012

While you still may not be able to run Java on iOS devices, or pure Java on Android devices yet, you can still run Java on billions of embedded devices. This includes feature phones (flip phones and others not considered smart phones, of which there are billions in the world), embedded controllers (i.e., RFID readers, kiosks, and so on), and small footprint computers called plug computers, such as the ones sold by Global Scale Technologies.

I have a Global Scale GuruPlug Server, which is a low-power single or multi-core ARM device running at 1.2GHtz, with 512MB RAM, 512MB Flash, gigabit Ethernet, Wifi, Bluetooth, USB2.0, and Debian Linux all in a shell about 3 or 4 inches square. You can see from the image below that it's about the size of my coffee mug.

316744 277081685664855 451814079 n

Best of all, Oracle has a version of Java SE Embedded that you can download and install in binary form in minutes. If you have one of these plug computers (named as such because they have a plug on the side and can be plugged into an outlet directly), or another ARM-based device, visit Oracle's Java SE Embedded download page and locate the correct package to install.

For the GuruPlug, I downloaded the JavaSE 7 Embedded Headless Server Compiler version with virtual floating point support. Simply FTP to the device's IP address from my Mac, upload the tar-ball, and then un-TAR it in an SSH session. To test the server-ness of this device, install a JMS provider and test queue application, and it will run with no change or r-compile needed (thanks Java). See the screen shot of my SSH session from my Mac below.

310510 277096208996736 241300860 n

Embedded Java: First-Class Citizen

A lot was made of the recent release of Java SE 7 update 6, and how it was the first full Java version available from Oracle for Mac OS X as well as other platforms. However, if you look at the main Java page, you'll see that one of download links includes the embedded version of Java SE 7 update 6 as well. I think this is just as exciting. Embedded Java is a first-class citizen, available for download for many embedded devices in binary form.

In the end, this means that the same set of tools and skills that millions of developers globally use to build server, web, and client Java software is available to the embedded world as well. And, with Oracle's HotSpot JVM included in this embedded platform, the resulting Java code will be machine compiled at runtime to perform at comparable speeds as C applications. It's a win-win.

Happy Coding!

Related Reading

More Insights

Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.