TagTag pledge: Help us build secure and private social network

tagtag.com/wapmobilesites

Configuracion CLDC  

Esta configuracion esta diseñada para dispositivos con conexiones de red intermitentes, procesadores lentos y memoria limitada como son telefonos moviles, asistentes personales (PDAs), etc. Esta orientado a dispositivos que cumplan las siguientes caracteristicas:

-)Procesador:16 bit/16 MHz o mas

-)Memoria: 160-512 KB de memoria total disponible para la plataforma Java

-)Alimentacion: Alimentacion limitada, a menudo basada en bateria

-)Trabajo en red: Conectividad a algun tipo de red, con ancho de banda limitado habitualmente

La especificacion CLDC se ha desarrollado dentro del Java Community Process[sm] (JCP[sm]) junto con 500 partners que representan a las industrias de fabricantes de dispositivos wireless, proveedores de servicios y terminales de venta.
Sun proporciona la implementacion de referencia de CLDC (CLDC Reference Implementation, CLDC RI) que incluye la maquina virtual K (K Virtual Machine, KVM). Sun tambien proporciona la implementacion del CLDC HotSpotTM, disponible para usos comerciales bajo licencia.
Esta maquina virtual esta orientada a la nueva generacion de dispositivos con una cantidad de memoria disponible mayor. La CLDC RI es adecuada para dispositivos que cumplan las siguientes caracteristicas:

-)Procesador:32 bits

-)Memoria: 512 KB/1 MB de memoria total disponible para la plataforma Java

-)Alimentacion: Alimentacion limitada, a menudo basada en bateria

-)Trabajo en red: Conectividad a algun tipo de red, con ancho de banda limitado habitualmente

La maquina virtual K toma la K de Kilobyte, haciendo referencia al poco tamaño que ocupa la plataforma, un minimo de 70 KB  

Existen tres versiones de CLDC:

-)CLDC 1.1 (JSR 139): CLDC 1.1 es una revision de la especificacion CLDC 1.0 e incluye nuevas caracteristicas como son punto flotante o soporte a referencias debil, junto con otras mejoras. CLDC 1.1 es compatible con versiones anteriores y sigue soportando dispositivos pequeñ os o con recursos limitados.
Existen implementaciones de referencia.

-)CLDC 1.0 (JSR 30)

-)CLDC HotSpot ImplementationTM: Es una maquina virtual muy optimizada que presenta una diferencia de rendimiento muy alta frente a la KVM. Incluye caracteristicas que soportan una ejecucion mas rapida de aplicaciones y una gestion de recursos mas eficientes, manteniendo los requisitos en cuanto a plataforma de ejecucion  


Caracteristicas de las JVM que soportan CLDC

La maquina virtual para CLDC soporta un subconjunto de funcionalidad de J2SE ademas de incorporar una funcionalidad propia tal y como detalla el siguiente diagrama:

CLC-CLDC-Relationship1

A continuacion detallamos las caracteristicas entre una JVM que soporta J2SE y J2ME:

-)CLDC no soporta el punto flotante (en la version CLDC 1.0)

-)No soporta la finalizacion de instancias de clases

-)El soporte a la gestion de errores es limitado, debido a las exigencias que impone en los dispositivos a nivel de memoria, y a que la recuperacion de errores es dependiente de los dispositivos.

-)Por motivos de seguridad se eliminan las siguientes caracteristicas:

--)Java Native Interface (JNI)

--)Cargadores de clase definidos por el usuario

--)Reflection (Reflexion)

--)Grupos de subprocesos (Thread groups) y subprocesos demonio (daemon threads)

--)Finalizacion

--)Referencias debiles

-)Soporta un conjunto limitado de propiedades:

-- )microedition.platfo rm Nombre de la plataforma, con valor predeterminado null

-- )microedition.encodi ngDefault Codificacion predeterminada, con valor predeterminado "ISO8859_1"

-- )microedition.config uration Nombre y version de configuracion soportada, con valor predeterminado " CLDC-1.0"

-- )microedition.profil es Nombre de perfiles soportados, con valor predeterminado null

-)Bibliotecas de funcion soportadas:

--)Clases subconjunto del las bibliotecas estandar J2SE, localizadas en los paquetes java.lang.*, java.util.* y java.io.*:  
 
 

Clases de sistema:

java.lang.Object  

java.lang.Class

java.lang.Runtime

java.lang.System

java.lang.Thread

java.lang.Runnable (interfaz)

java.lang.String

java.lang.StringBuff er  

java.lang.Throwable  
 
 

Tipos de datos:

java.lang.Boolean  

java.lang.Byte

java.lang.Short

java.lang.Integer

java.lang.Long  

java.lang.Character
 
 

Clases de coleccion

java.util.Vector

java.util.Stack  

java.util.Hashtable

java.util.Enumeratio n (interfaz)  
 
 

Clases de entrada/salida

java.io.InputStream

java.io.OutputStream

java.io.ByteArrayInp utStream

java.io.ByteArrayOut putStream

java.io.DataInput (interface)

java.io.DataOutput (interface)  

java.io.DataInputStr eam

java.io.DataOutputSt ream

java.io.Reader  

java.io.Writer

java.io.InputStreamR eader

java.io.OutputStream Writer  

java.io.PrintStream  
 
 

Clases de calendario y fecha

java.util.Calendar

java.util.Date  

java.util.TimeZone  
 
 

Clases de excepcion

java.lang.Exception  

java.lang.ClassNotFo undException  

java.lang.IllegalAcc essException

java.lang.Instantiat ionException

java.lang.Interrupte dException  

java.lang.RuntimeExc eption

java.lang.Arithmetic Exception

java.lang.ArrayStore Exception

java.lang.ClassCastE xception

java.lang.IllegalArg umentException

java.lang.IllegalThr eadStateException

java.lang.NumberForm atException

java.lang.IllegalMon itorStateException

java.lang.IndexOutOf BoundsException  

java.lang.ArrayIndex OutOfBoundsException

java.lang.StringInde xOutOfBoundsExceptio n

java.lang.NegativeAr raySizeException

java.lang.NullPointe rException  

java.lang.SecurityEx ception  
 

java.util.EmptyStack Exception

java.util.NoSuchElem entException  
 

java.io.EOFException  

java.io.IOException  

java.io.InterruptedI OException  

java.io.UnsupportedE ncodingException

java.io.UTFDataForma tException  
 
 

Clases de error

java.lang.Error

java.lang.VirtualMac hineError

java.lang.OutOfMemor yError  
 

--)Clases especificas a CLDC (pero que se pueden asociar a J2SE), localizadas en los paquetes javax.microedition.* :  

Se definen seis interfaces basicos de conectividad:

Un dispositivo basico de entrada serie

Un dispositivo basico de salida serie

Un dispositivo de comunicaciones orientadas a datagrama

Un dispositivo de comunicaciones orientadas a circuito (TCP, etc)

Un mecanismo de notificacion para informar a un servidor de conexiones cliente servidor

Una conexion basica a un servidor Web  
 

El siguiente diagrama muestra la jerarquia de interfaces:

CLDC_Interfaces2

Diferencias entre la CLDC 1.0 y CLDC 1.1  

-)Se añade soporte para operaciones en punto flotante, permitiendo el uso de todos los byte codes asociados al mismo.

-)Se añaden las clases Float y Double.

-)Se añaden metodos para la gestion de operaciones en punto flotante a otras librerias.

-)Se añade soporte para referencias debiles

-)Se han rediseñado las clases Calendar, Date y TimeZone para adecuarse mejor a J2SE

-)La gestion de error se ha mejorado y se ha añadido una nueva clase de error, NoClassDefFoundErro r

-)En CLDC 1.1, los objetos Thread tienen nombre con los subprocesos en J2SE. Se ha introducido el metodo Thread.getName() y la clase Threadclass incorpora nuevos constructores heredados de J2SE.

-)Se han cambiado bibliotecas y se han corregido algunos defectos, entre los que se incluyen los siguientes metodos y campos:

--)Boolean.TRUE y Boolean.FALSE

--)Date.toString()

-- )Random.nextInt(int n)

--)String.intern()

-- )String.equalsIgnore Case()

-- )Thread.interrupt()  

-)Se ha elevado el minimo de memoria necesaria de 160 a 192 KB, debido principalmente a la adicion de funcionalidad de punto flotante.

-)Se ha mejorado y actualizado la especificacion.

-)Se ha detallado la especificiacion del verificador de byte code para CLDC (CLDC Byte Code Typechecker Specification).  

http://grasia.fdi.uc m.es
/j2me/_J2METech
/CLDC.html


Home Site Map my.TagTag

Terms of Use
TagTag.com