Optimize with a SATA RAID Storage Solution
Range of capacities as low as $1250 per TB. Ideal if you currently rely on servers/disks/JBODs
With the thousands of programmers and millions of deployed devices have come tools and emulators of all sorts. The richness of the development-tool ecosystem for the PalmOS makes the devices prime candidates for introducing Java-device programming capabilities. That is why Sun has chosen PalmOS as the reference platform for the K Virtual Machine, and why I choose to launch the technical discussion of Java Device Programming with a strong focus on Palm tools and the use of Java with PalmOS.
KVM's development cycles and the extreme velocity on the J2ME fronts being what they are, I've let far too much time pass since the last installment of Java Device Programming: I pledge not to let that happen again. Luckily, Chuck McManis, a fellow JavaWorld columnist, has in the interim written a nice article on the JavaOne preview of the KVM for PalmOS, so readers have not had to go completely wanting for Java-device programming information. I will refer to and expound on much of the material in Chuck's article in this series, particularly when I get to a more in-depth discussion of the first public release of the KVM for PalmOS. (For Chuck's KVM article, see "The K virtual machine and the Palm V, Part 1.")
Since my own last column I have been working frantically to put together several device-programming resources that I hope will be useful for Java programmers. These resources include a Java-device programming FAQ and mailing list, as well as the KVM Archive, a list of public domain applications, tools, and related information on J2ME and KVM development.
I shall make liberal use of these resources in the Palm-programming series and will refer to many of them this month and again in the coming months, so please bookmark the URLs.
Let's get started!
A lot has transpired on the Java 2 Platform, Micro Edition (J2ME) front even in the few short months since JavaOne 1999. Therefore, before we dive deep into the Palm platform and Java, I would like to update my July column -- "Program Java devices -- An overview."
What I wrote then about J2ME profiles is still correct. These API groupings sit on top of underlying Java runtimes and provide a certain level of portability and interoperability within classes of devices targeted at specific markets or vertical industries.
In addition, however, Sun and the J2ME development community have also seen fit to carefully specify the underlying core technologies for families of Java-enabled devices in profiles known as configurations. Configurations are meant to specify the memory and CPU requirements for target devices as well as for one or more virtual machines (such as the KVM, PersonalJava VM, Classic VM, and so on) and for core J2ME APIs that may be used to implement the base J2ME functionality on these devices.