Big Picture View of the Architecture
We've covered an assortment of information about J2ME. Let's put all this together into two separate scenarios. The first is a "generic" software architecture, if you will, of J2ME. The second is the architecture as it will apply to our interests as we progress through the book.
It begins with the host Operating System (OS) as the base (see Figure 12), followed by the virtual machine (VM). The VM will take one of two forms:
Figure 12 "Generic" J2ME architecture
For systems complying with the CDC, it will be the "traditional" virtual machine; that is, the same feature set as in the Java 2 Standard Edition.
For systems complying with the CLDC, it will be the KVM or a virtual machine that meets the specifications as required by the CLDC.
CLDC or CDC core libraries are next in the heirarchy. Profiles are the topmost layer, and are designed to provide a toolkit for writing applications for a particular device family.
Figure 13 MID Profile architecture
As before, the host OS is the base. The virtual machine will be the KVM. Remember, the KVM is Sun's implementation of a JVM meeting the CLDC specificationit may not be the only implementation available of a virtual machine for MIDP. CLDC core libraries are next, followed by MID Profile.