Sony Ericsson Z500A Cell Phone User Manual


 
White Paper
Z500a
25 June 2004
Java 2 Micro Edition
Originally developed by Sun in 1991, Java is a
programming language used to develop applications -
utility programs, games, plug-ins etc. - for different
hardware and software platforms. Users of Java-enabled
devices can install new applications and games to make
their devices more personal and adapt them to specific
needs.
J2ME CLDC/MIDP (kJava)
In 1999, Sun regrouped its Java technologies into three
platforms or editions. J2ME (Java 2 Micro Edition)
became the platform targeting “micro” devices with
small processors and memory capacities, such as mobile
phones, communicators and PDAs. (The other two Java
platforms are Java 2 Standard Edition, J2SE, and Java 2
Enterprise Edition, J2EE).
J2ME addresses a variety of devices. To handle the
diversity, two concepts have been introduced –
configurations and profiles. A configuration defines a
minimum platform for a family of devices with similar
processing and memory capacities. A profile targets a
specific device category within that family, for instance
mobile phones.
Two J2ME configurations are available:
CDC, Connected Device Configuration. This config-
uration is aimed at devices such as PDAs.
CLDC, Connected Limited Device Configuration.
This configuration is aimed at devices such as mobile
phones and pagers.
Current situation
So far, two profiles have been established for J2ME:
MIDP, Mobile Information Device Profile, and
Personal Profile.
MIDP is connected to the CLDC configuration and
provides developers with essential information and
guidance when writing programs for mobile phones and
two-way pagers.
Personal Profile is linked to the CDC configuration.
Targeted at PDAs, this combination replaces
PersonalJava in J2ME.
CLDC/MIDP v. PersonalJava
Besides targeting different types of devices, the main
difference between J2ME CLDC and PersonalJava from
a user's point of view is that applications written in J2ME
CLDC can be downloaded from the Internet.
PersonalJava applications are typically transferred to
devices from a PC via cable.
Hand-held computers and mobile phones that support
Java also need a Java interpreter to run the applications.
Since the Java Virtual Machine (JVM) was not the
optimal interpreter for devices with small memory
capacity and slower processors, Sun developed K Virtual
Machine (KVM). A KVM requires only 40-80 KB of
memory and can run on processors with low clock
frequency. KVM is only used for J2ME CLDC.
PersonalJava relies on the Java Virtual Machine (JVM).
PersonalJava has a richer application environment and
can interact more extensively with the phone software.
J2ME CLDC uses a security model, often referred to as
the sandbox. The sandbox includes a number of system
components working together to ensure that untrusted
applications cannot gain access to system resources. To
put a sandbox into service, the Java platform uses three
major components: the class loader, the byte-code
verifier and the security manager. Each part plays an
important role in maintaining the integrity of the system
by securing that:
Only the correct classes are loaded.
The classes are in the correct format.
Untrusted classes do not execute dangerous instruc-
tions.
J2ME in detail