Three options for Java-enabling that device June 8, 2001— With about 350 vendors exhibiting at the JavaOne Pavilion, many different messages were being forced on attendees. One common theme, however, was working with Java technology on small information appliances. These small appliances are bigger than a cellular phone but smaller than the desktop. The Compaq iPAQ is the typical device, though many others were shown at the conference. In this article, we’ll look at three possible solutions demonstrated: ARM’s hardware-based approach, Insignia’s standard JVM-based approach, and SavaJe’s OS-based approach.ARM does hardwareThe lowest-level approach demonstrated at the conference — placing the Java Virtual Machine (JVM) on hardware — was not strictly aimed at developers. ARM offers Jazelle, extending 32-bit RISC processors to execute Java bytecodes directly in hardware. About 65 percent of JVM opcodes are on the chip, accelerating about 95 percent of executed bytecodes. This leaves the remaining bytecodes to software simulation. Since the approach is to piggyback the JVM on the base hardware, you don’t need a second coprocessor, allowing the JVM to share the same memory, busses, and other system resources.Overall, the solution offers high performance of Java applications at a low cost, while still maintaining compatibility with native applications and the native operating system. Of course, if you’re not in the hardware business, this isn’t something you as a developer can really use. However, expect to find it in more hardware by the end of the year. Insignia does JVMsInsignia’s Jeode Platform offers the simplest approach to adding Java support to your information appliance. Essentially, Jeode is a JVM for Windows CE devices, adding a PersonalJava environment to the device. Adding Jeode to the iPAQ Pocket PC is as easy as visiting the Handango Website and paying the 0 fee. If you happen to have visited the Insignia booth during the show, you could have gotten the JeodeRuntime for free. Apparently, 50 JavaOne attendees added the environment to their iPAQs during the show.The JeodeRuntime includes Dynamic Adaptive Compilation (DAC), which is like HotSpot for the iPAQ. Given the device’s limited memory environment, you can’t expect to support a full-blown HotSpot compiler. A company with a 15-plus year history marked by such products as SoftPC and SoftWindows, Insignia has created a fully Java-compatible environment with optimum performance. Its system even has customized garbage collection to ensure long-term uptime. All this for a low-power CPU with little memory.SavaJe does operating systemsI must say the most interesting approach to putting Java on small appliances is offered by SavaJe (pronounced savage, but the J means the middle of the word is Java spelled backwards). SavaJe provides an embedded operating system and virtual machine, completely replacing Windows CE. (Hooray!) Not only has the OS been replaced with a Java-based one, but the platform supported is the Java 2 Platform, Standard Edition. Yes, you read that right: SavaJe provides a complete J2SE environment, currently available for both the Compaq iPAQ and Psion NetBook handhelds. With Java as the native OS, the underlying layers between the JVM and the hardware are next to nothing, increasing performance considerably. Thus, you have the full J2SE platform with CORBA, RMI, Swing, JNI, and the rest on top of a multitasking, multithreaded, 32-bit operating system. Assuming the hardware has sufficient memory, you can even add in some of the standard Java extensions libraries, like SSL support.If you don’t mind kissing Windows CE goodbye, SavaJe’s XE OS offers a very attractive alternative. Unfortunately, you have to say goodbye to all the device applications and find Java-based alternatives.The OS is currently in beta, with an expected release date of September 2001 during the JavaEdge Conference. (See the SavaJe Website for information on winning a 42-inch Plasma Flat-Screen TV.) The price range is 0 to 00 depending upon quantity, though the beta is free. Wireless wondersThe JavaOne Pavilion had just about everything for wireless devices on the show floor. While companies like NTT Soft were justifiably proud of adding a lightweight Object Request Broker (ORB) to mobile devices in as little as 10 KB, SavaJe’s aim of bringing a full J2SE environment onto the small appliance has to take the cake. Certainly not to knock what ARM, Insignia, or anyone else is doing, but every Java developer with a Windows CE environment should be glad to say goodbye to something from Microsoft.John Zukowskiis a strategic Java consultant with his company, JZ Ventures Inc. He lectures on Web technologies for Boston-based Northeastern University and writes books on Java. His latest books are Java Collections and the Definitive Guide to Swing for Java 2, Second Edition, both from Apress. JavaTechnology Industry