Tuesday, 6 November 2012

1.2 CLDC and MIDP

1.2 CLDC and MIDP


1.2.1 CLDC

A developer wishing to create applications for mobile devices may be tempted to ignore the full specification of CLDC. A developer may initially be interested in getting acquainted with MIDP as a standalone technology. It is, however, important to understand the underlying technology that forms MIDP.

The CLDC, as specified by Java Specification Request (JSR) 30 (http://jcp.org/en/jsr/detail?id=30), is the smaller of the two configurations and sets out to define a standard for devices with the following capabilities:

• 160 KB to 512 KB of total memory budget available for the Java
platform
• 16-bit or 32-bit processor
• low power consumption, often operating on battery power
• intermittent network connection, possibly wireless and limited to a
bandwidth of 9600 bps or less.

The 160 KB memory budget is derived from the minimum hardware
requirements, as follows:

• at least 128 KB of non-volatile memory available for the Java Virtual
Machine and CLDC libraries
• 32 KB of volatile memory for the Java runtime object memory.

CLDC itself defines the minimum required Java technology in terms of libraries and components for small-connected devices. Specifically, this addresses the Java language itself, the virtual machine definition, core
libraries, I/O capabilities, networking and security. Interestingly, from an early stage, one of the focuses for the CLDC definition was to recognize that much of the content for these devices would come from third-party developers. Another was that the idea of being able to create applications portable across a range of devices should be adhered to. This would provide an easier path to revenue generation and therefore  roliferate content for more devices. The nature of Java means that a programmer can create applications that use the device’s features without having to actually understand the working of the device. The developer only needs to comprehend the interface to the device. CLDC does not guarantee portability and it does not implement any optional features. Variants of devices within CLDC should be specified through profiles, rather than the configuration. It must be said that true application portability can only be obtained if a few principles are applied during the application design stage. We shall be looking at these issues later in this book.

No comments:

Post a Comment