Java Reference
In-Depth Information
is straight from the creator himself, James Gosling in [Arnold, Gosling
and Holmes 2005]. From this point on, we're only going to talk about
ME - Java ME!
1.5 Java ME
Sun launched a research and development project called Spotless in the
1990s in order to produce a JVM that could run on devices with small
memory and power budgets, intermittent or non-existent connectivity,
limited graphical user interfaces, divergent file system concepts (if any)
and wildly varying operating systems. This could be anything from set-top
boxes to Internet phones, parking meters, digital TVs, vending machines,
automotive interfaces, electronic toys, personal organizers, household
appliances, pagers, PDAs, high-end smartphones and mass-market feature
phones.
The result of the project was the Kauai virtual machine (KVM). This
was a cut-down version of the JVM that required less than 10% of
the resources needed for the desktop standard edition of Java. This was
achieved by targeting the size of the virtual machine and its class libraries,
reducing the memory used during execution and by creating a pluggable
architecture that allowed sub-systems of the KVM to be tailored to specific
device architectures.
With such a diverse range of hardware targets, it was decided to
adopt a more flexible model for Java ME and the final result consisted of
three high-level components that together make a wide range of solutions
possible. Java ME consists of:
configurations
profiles
optional packages.
We'll look at each of these in detail shortly. In order to allow for future
expansion and new technologies, additions to the Java ME technologies
are managed through the Java Community Process 13 in the form of Java
Specification Requests known as JSRs. Each JSR is reviewed by panels
of experts and public drafts allow a wide range of interested parties to
contribute to the process. JSRs are usually referred to by their name and
number; for example, JSR-82 is the specification request for the Bluetooth
API.
A lot of functionality had to be removed from the desktop Java Standard
Edition (Java SE) to make Java ME. For example, some things that are
missing include:
13 www.jcp.org
Search WWH ::




Custom Search