140 likes | 237 Views
Josep Pinyol Luis Alberto Jiménez. MOVING JAVA INTO MOBILE PHONES. Por qué usar JAVA en la telefonía móvil?. Más facilidad para añadir nuevas funciones Soporta TCP/IP - Más facilidad para programar aplicaciones que se comuniquen directamente con el móvil
E N D
Josep Pinyol Luis Alberto Jiménez MOVING JAVA INTO MOBILE PHONES
Por qué usar JAVA en la telefonía móvil? • Más facilidad para añadir nuevas funciones • Soporta TCP/IP - Más facilidad para programar aplicaciones que se comuniquen directamente con el móvil • Capacidad de JAVA para trabajar con diferentes plataformas • Podemos bajar programas directamente de la red, melodías, ...
Qué edición de JAVA utilizar? • Antes Teléfonos móviles no tenían suficiente capacidad para ejecutar JAVA • Actualidad Sí, pero con algunas limitaciones J2ME (Java 2 Micro Edition)
JAVA 2 Micro Edition • Edición de JAVA limitada Menos sofisticiación en elementos de menor relevancia en la telefonía móvil - Acceso a bases de datos limitado - Capacidades gráficas limitadas Sustitución de la JVM (Java Virtual Machine) por la KVM (K Virtual Machine). - KVM es una JVM con las funcionalidades reducidas
J2ME: Configuraciones y perfiles • J2ME soporta configuraciones mínimas de la JVM y de las Java APIs, que engloben las necesidades básicas de un determinado tipo de dispositivo. • Configuración: Define las características mínimas que debe tener el lenguaje Java, la JVM y las librerías de clases, para un determinado tipo de dispositivo. • Perfil: Complemento a una configuración. Proporciona un conjunto de herramientas para el desarrollo de aplicaciones específicas para un determinado tipo de dispositivo.
CLDC: Connected, limited device configuration • CLDC: Especifica un estándar de plataforma Java para dispositivos pequeños y de recursos limitados. • CLDC: Especificación de la configuración mínima necesaria para que un determinado tipo de dispositivo pueda soportar J2ME. • CLDC: Define las siguientes características: • Características del lenguaje Java y de la JVM. • Librerías Java básicas (java.lang.* y java.util.*). • Entrada / Salida. • Red. • Seguridad.
MIDP: Mobile information device profile • MIDP: Es un complemento a la configuración CLDC. • MIDP: Perfil que proporciona un conjunto de herramientas para el desarrollo de aplicaciones Java orientadas a telefonía móvil. • MIDP: También engloba las características del teléfono móvil en el que está instalado el perfil, como por ejemplo el tamaño de la pantalla o la potencia de la batería. • MIDP: Las aplicaciones se programaran sobre la base de herramientas proporcionadas por el perfil, y se podrán ejecutar en cualquier dispositivo en el que esté instalado dicho perfil.
KVM: Kilo(byte) Virtual Machine • KVM: Es una implementación concreta de Java Virtual Machine que cumple la especificación CLDC. • KVM: Esta diseñada para correr en dispositivos pequeños y de recursos limitados. • KVM: Características: • Implementada en lenguaje C. • Orientada a procesadores de 16 y 32 bits. • Ocupa entre 40 y 80 Kbytes de memoria. • Altamente portable entre diferentes dispositivos pequeños y de recursos limitados.
KVM: Software vs. Hardware • La tecnología Java puede ser implementada en software o en hardware. • Software: Se instala la Virtual Machine sobre el sistema operativo del dispositivo. La Virtual Machine se encargará de traducir las instrucciones Java a las instrucciones nativas que puede ejecutar la CPU. • Inconveniente de la solución software: • Al tratarse de dispositivos pequeños y limitados, la baja velocidad de la CPU puede afectar la velocidad de ejecución de las aplicaciones Java.
KVM: Software vs. Hardware • Hardware: Para implementar la tecnología Java mediante hardware, existen dos posibilidades: • Ampliando el juego de instrucciones de la CPU para que ejecute el bytecode Java directamente. • Incorporando en el dispositivo un chip especializado para que ejecute el bytecode Java. • Coste de la solución hardware: • El diseño de un chip especializado es más barato que la ampliación del juego de instrucciones de la CPU principal. • La incorporación de un nuevo chip en el dispositivo encarece su proceso de fabricación. • Esta es la principal duda que se plantean los fabricantes.
Otros productos relacionados • MicroChaiVM (Hewlett-Packard) Un “clon” de la JVM pero que no necesita licencia de Sun. • SavaJe OS (SavaJe) Optimización de las librerías de J2SE. • ZeoSphere Developer (Zeosoft) Permite crear aplicaciones que soportan Entreprise Java Beans. Esto simplifica la programación de aplicaciones que se comunican y ejecutan entre servidores y teléfonos móviles
Bibliografía: • Web Sun Microsystem: java.sun.com/j2me/docs. • Articulo revista Computer: Moving Java To Mobile Phones.