Sun Java Solaris Communities My SDN Account Join SDN
 

JavaOne Online Technical Sessions

Pump Up Your Technical Knowledge
Listen and watch as industry luminaries bring you the latest on Java technologies
Begin Product Tab Sub Links

Squawk: A Java VM for Wireless Sensor Networks
TS-1598


Presenter: Derek White, Eric Arseneau and Cristina Cifuentes, Sun Microsystems, Inc


Squawk is the Java Virtual Machine for the Sun Small Programmable Object Technology (Sun SPOT) wireless sensor/actuator device designed by Sun Labs. Industry and academia have received this device with much excitement, because it brings Java technology to the world of wireless sensor/actuators, allowing developers to use standard development tools to work directly on device. The current state of the art requires developers to program in low-level languages with little or no debugging support while running on device.

Squawk, a research project at Sun Labs to investigate the challenges of supporting Java programming for embedded devices, implements a full Java Platform, Micro Edition (Java ME) --formerly J2ME platform--VM. Squawk's tiny size--80 KB RAM and 270 KB flash, including CLDC and hardware libraries--makes it ideal for deployment on the Sun SPOT device. Squawk is one of the smallest publicly known Java ME platform VM implementations that enables Java technology on wireless sensor devices.

Squawk's reference implementation is written in the Java programming language. The interpreter and garbage collector are translated to C for speed on the Sun SPOT device. Squawk was designed for small, memory-constrained devices and deploys Java technology-based applications on the Sun SPOT device that are one third the size of their classfile counterparts.

By supporting interrupts and device drivers in Java technology, Squawk is able to run on the bare metal without an underlying operating system, thus further reducing the overall footprint.

Squawk also provides a research implementation of JSR 121 (isolates), and multiple isolates can be run by the VM, enabling multiple applications to be run on the Sun SPOT device at the same time, without the extra memory overhead of standard JVM software implementations.

Further, applications (isolates) are allowed to migrate from one Sun SPOT device to another, providing for ease of reprovisioning in the field, remote debugging, and more. This presentation discusses the internals of the Squawk VM: Squawk's split VM architecture, design decisions to make application code smaller, how isolates are implemented and migrated within Sun SPOT devices, how interrupts and device drivers are supported by the VM, and extensions to the general connection framework (GCF) to support the radio (i.e., radio://).

The session includes several demonstrations and example code to illustrate particular features of the VM in a deployed wireless sensor application context.

Watch The Session
You need to be a registered Sun Developer Network member to view this multimedia session. If you are a registered SDN member, please click on "Watch Multimedia" button to log-in to view the multimedia session. If you wish to join SDN, please click here.

 
 
FREE White Papers on Java SE, Java EE, cloud computing and database technologies.
New SDN Member Only Offers Every Month Discounts, FREE white papers and more!
Java University and JavaOne Training Sessions