Contents Previous Next Index

Chapter   1

Introduction


The Mobile Information Device Profile (MIDP) is a set of APIs (a profile) for the Java™ 2 Platform, Micro Edition (J2ME™). It is for small, resource-constrained devices such as mobile phones and personal organizers.

This product, MIDP Reference Implementation 2.0 FCS, complies with the MIDP 2.0 Specification produced by the Mobile Information Device Profile 2.0 [JSR-000118] available at http://jcp.org/jsr/detail/118.jsp.

MIDP Reference Implementation 2.0 FCS runs a device emulator on the Microsoft Windows 2000 platform. It has also been run on the Solaris™ 8 Operating Environment (Solaris OE) and RedHat Linux 7.2, although these are not supported platforms.

MIDP applications are called MIDlets. One or more MIDlets packaged together for installation onto a device is called a MIDlet suite.

This chapter introduces MIDP porting. It contains the sections:

1.1 Product Architecture

MIDP works with the Connected Limited Device Configuration (CLDC) of the J2ME platform. The following figure shows the J2ME architecture from the perspective of MIDP:

J2ME stack for MIDP[D]

FIGURE 1  –  J2ME Architecture with MIDP and MIDP Applications

MIDP itself is made up of modules, many of which are implemented in two layers:

The following figure shows the modules that comprise MIDP Reference Implementation. A module shown atop and overlapping another module uses code from that other module. (In some cases, the upper module might use only the native layer of another module.)

Software modules of the MIDP Reference Implementation[D]

FIGURE 2  –  MIDP 2.0 Modules

The chapters in this guide are organized in a way similar to the modules shown in the previous figure: they start with a module at the bottom of the stack, then work upwards. If you work in this order, you will always be ready to test a ported module because the layers underneath it will ready.

The modules are:

In addition, the MIDP Reference Implementation contains an optional module, the audio building block. The audio building block makes it possible to play single tones, tone sequences, and, optionally, synthetic audio such as WAV files. See Chapter 11, “Porting the Audio Building Block” for detailed porting information.

1.2 Porting Requirements

MIDP Reference Implementation 2.0 FCS can be ported to platforms that both meet the device requirements in the MIDP 2.0 Specification and have an ANSI C compiler. When you have completed your port, it must meet certain requirements to be compliant with the MIDP 2.0 specification. This section discusses these porting requirements in the topics:

1.2.1 Hardware Requirements

The minimum hardware requirements for a device are:

1.2.2 Software Requirements

The software requirements for a device are:

Examples of MIDs include, but are not restricted to, cellular phones, two-way pagers, and wireless-enabled personal digital assistants (PDAs).

1.2.3 Compiler Requirements

The compiler must give users a way to indicate additional directories to be searched for included files. It must also define the basic types shown in the table below.  

TABLE 1  –  Required Types in the C Programming Language
Type
Size
Semantics
char
8 bits
Signed or unsigned
signed char
8 bits
Signed
unsigned char
8 bits
Unsigned
short
16 bits
Signed
unsigned short
16 bits
Unsigned
int
32 bits
Signed
unsigned int
32 bits
Unsigned
long
32 bits
Signed
unsigned long
32 bits
Unsigned
void *
32 bits
Pointer

The compiler should, but is not required to, support 64-bit integers. (64-bit integer arithmetic is the only non-ANSI characteristic of the source code.)

MIDP Reference Implementation has been compiled with the following compilers:

The MIDP Reference Implementation has been tested on only machines that have 32-bit pointers and ints, and do not require far pointers.

When you port the MIDP Reference Implementation 2.0 FCS to a new device, you must ensure that there is a CLDC/KVM 1.0.4 implementation available for it. See the KVM Porting Guide for KVM porting instructions if an implementation is not already available.

1.2.4 Requirements of the Completed Port

For a port to be certified as compliant with the MIDP 2.0 Specification, it must pass the tests in the MIDP Reference Implementation Technology Compatibility Kit (TCK). For information on the MIDP TCK, see http://java.sun.com/products/midp/.

The MIDP 2.0 Specification lists these requirements, which are among those embodied in the TCK:

Definitions for the terms MAY, MUST, and SHOULD are defined in RFC 2119 at http://www.ietf.org.

 


Contents Previous Next Index Porting MIDP
MIDP Reference Implementation, Version 2.0 FCS