Objetivos de la configuración CLDC
Meeko81Examen20 de Octubre de 2013
4.089 Palabras (17 Páginas)371 Visitas
Objetivos de la configuración CLDC y requerimientos de la misma:
JAVA es un lenguaje muy extenso. Puede manejar bases de datos,
documentos, animaciones, simulaciones, redes empresariales e incluso
dispositivos móviles. Debido a lo extenso de su repertorio, debemos restringir
las características de funcionamiento del mismo. Esta restricción la hacemos a
través de una configuración. La configuración CLDC determina un conjunto de
características, que el lenguaje JAVA soporta, y que caracterizan un
determinado conjunto de dispositivos. Restringe el trabajo en red, la seguridad
del dispositivo, las APIs de programación, etc. Es como tener una masa para
galletas, y usar un molde para hacer galletas de determinada forma. Todas las
galletas que se puedan hacer con ese molde están caracterizadas por ser de la
misma masa (JAVA), pero todas tienen la misma forma porque fueron cortadas
con el mismo molde (Configuración).
Este molde, esta forma, es la base para diversos perfiles. Un perfil define un
conjunto más particular aún de características que hacen que el dispositivo se
pueda dirigir a un mercado más especializado. Si bien existen muchos perfiles1
,
el perfil que nos interesa precisamente es el MIDP, porque este es el que
define las características de lo que es un dispositivo móvil de bajas
prestaciones y alta movilidad. Es como si las galletas sacadas por el mismo
molde, pudieran unas bañarse de chocolate, las otras de vainilla, las otras de
azúcar… y cada una de esas cubiertas fuera un perfil. En términos JAVA, un
celular puede verse como una galleta, en forma de bota, de chocolate; un
blacberry como una galleta, en forma de bota, de vainilla; un PC es una galleta,
en forma de círculo, con mora… etc. Teniendo esto mucho más claro, veamos
los objetivos específicos de la configuración:
1
Estas configuraciones se pueden encontrar en el documento “Configurations and Profiles
Architecture Specification, Java 2 Platform Micro Edition (J2ME), Sun Microsystems, Inc”
3
Programación de dispositivos móviles
Semana 2
Objetivos
El objetivo principal de la configuración CLDC es, como se dijo ahora, servir
como un modelo para un determinado tipo de componentes. En este caso
particular, trata de definir un estándar para dispositivos de reducido tamaño
conectados a una red y con recursos limitados. Pero decir “recursos limitados”
es muy ambiguo. ¿Con respecto a qué? Se define un recurso como limitado
cuando es 10 veces menor que los recursos de un computador de escritorio
promedio. La configuración CLDC va más allá, definiendo un conjunto de
características que debe tener el dispositivo. Estas características son las
siguientes:
o Entre 160 y 512 Kb de memoria total disponible para la
localización de la plataforma JAVA
o Procesador de datos de 16 o 32 bits
o Bajo consumo energético, generalmente brindado por una
batería.
o Conectividad inalámbrica (recordemos que debe tener soporte
OTA) con conexión intermitente, y ancho de banda (“tamaño” del
canal de comunicación) rondando los 9600bps
En este rango de dispositivos, entran PDAs sencillas, celulares de cantidad de
generaciones, e incluso algunos GPS y Beepers. La configuración definida
define entonces los elementos mínimos necesarios para dispositivos
conectados pequeños. Si los dispositivos móviles usan herramientas de texto
en pantalla, se implementan las librerías requeridas para eso. Sin embargo, los
dispositivos móviles raras veces se usan para manejar bases de datos o nubes
de información, por lo que estas librerías no se incorporan en la respectiva
configuración. Sin embargo, aparte de definir un estándar, existen otros
objetivos que se ven a continuación:
4
Programación de dispositivos móviles
Semana 2
Extensibilidad: Sabemos que nuestro dispositivo móvil tiene
conectividad, y sabemos que posee una KVM montada, junto con una
configuración CLDC. Esto permite que pueda bajar aplicaciones JAVA
de la red y, a través de la AMS instalarlas. Una sola aplicación en la red,
puede ser descargada por infinidad de dispositivos móviles. Estos
dispositivos móviles se comunican entre sí, intercambiando aplicaciones
y aumentando aún más la conectividad y el intercambio de información.
Estas aplicaciones pueden venir de diversidad de partes, de empresas
diversas, de operadores, incluso de usuarios, y empezaron a distribuirse
y compartirse entre sí, aumentando el alcance y la utilidad de los
dispositivos móviles. A esta característica la llamamos “extensibilidad”.
JAVA, y sobre todo, CLDC hace parte entonces de los esfuerzos que se
están llevando a cabo para aumentar la extensibilidad de los dispositivos
móviles
Desarrollo de terceras partes: Esto es una consecuencia de la
extensibilidad. Si queremos que los dispositivos sean más extensibles,
debemos darle a la configuración CLDC la posibilidad de que terceras
partes puedan programar para él. Es por esta razón que la propia
configuración debe permitir los elementos mínimos de alto nivel
necesarios para crear una abstracción para los programadores. Con esto
se intenta decir que el programador puede, y debe ser capaz de
programar cualquier aplicación, y la configuración CLDC debe servir
como un “traductor” entre sus aplicaciones y los protocolos internos de
comunicación y transferencia de archivo.
5
Programación de dispositivos móviles
Semana 2
Requerimientos
Existen unos requerimientos de hardware, de software y otros basados en
la plataforma de JAVA J2ME, que son necesarios para la plataforma CLDC.
Estos los veremos a continuación:
o Requerimientos de hardware: Los requerimientos de hardware
que pide la configuración se refieren únicamente a la memoria.
Veamos que en el estándar que genera la configuración CLDC
caben muchos dispositivos, desde celulares, hasta
buscapersonas, pasando por PADs y organizadores personales,
terminales, etc. Como todas las características de estos
dispositivos móviles son muy diversas, la configuración solo
restringe el hardware en cuestiones de memoria. Para ser más
exactos, el requerimiento de memoria de estos dispositivos es el
siguiente:
128 Kb para la máquina virtual y las librerías de JAVA
32 Kb de memoria volátil para variables usadas mientras
se ejecutan las aplicaciones.
Estos rangos de memoria son dinámicos, y dependen
primordialmente del hardware del dispositivo.
o Requerimientos de software: Como lo vimos ahora, los
dispositivos móviles que entran en el perfil definido por la
configuración CLDC son muy diversos, y tanto el hardware como
el software varía enormemente. Es por esto que podemos
encontrar dispositivos con un sistema operativo complejo y
completo, que ejecute procesos multitarea y soporte hilos
6
Programación de dispositivos móviles
Semana 2
(Threats, o procesos en ejecución), así como podemos encontrar
dispositivos con un rudimentario sistema operativo que no maneje
carpetas, o incluso carentes del mismo. Es por eso que los
requerimientos de software de la configuración CLDC son
mínimos. Se requiere que el dispositivo tenga un sistema
operativo rudimentario que permita ejecutar la máquina virtual de
JAVA. Con que el sistema operativo tenga una entidad de
planificación que permita ejecutar la máquina virtual, es suficiente.
o Requerimientos de J2ME: Recordemos que CLDC es una
configuración propia de J2ME. Esto significa que el propio JAVA
genera unos requerimientos sobre las especificaciones de esta
configuración, requerimientos que generan implicaciones sobre el
perfil:
Cuando hablamos de una configuración J2ME, hablamos
de un conjunto de APIs mínimas de la tecnología JAVA.
Esta configuración debe cobijar una gran cantidad de
dispositivos, de diferentes naturalezas, y a veces poco
relacionados entre sí. Para definir características
específicas de un dispositivo, de un mercado o de una
industria, se debe hacer uso de un perfil, y no de una
configuración. Esto hace entonces que un perfil sea
limitado (servir a muchos dispositivos a veces equivale a
no servir bien a ninguno de ellos), y que deba ser siempre
complementado con perfiles.
En el apartado superior se indicó que el objetivo principal
de la configuración CLDC era, aparte de definir un
estándar, generar extensibilidad
...