generalidadestrabajo_pdm

24
SCM – Subloque PDM Introducción a los Dispositivos Móviles 1 1.- Introducción a la problemática de los Dispositivos Móviles Si pensamos en algún dispositivo móvil, lo primero en lo que pensamos es en un teléfono móvil, y como mucho en una PDA. Pero en la actualidad son varios los dispositivos móviles disponibles en el mercado. Este es el caso de los PC’s portátiles, de los teléfonos con acceso a Internet, PocketPC’s, etc. Este hecho da lugar a una importante problemática para quien programa tales dispositivos, ya que cada uno de ellos tienen unas características particulares: cada uno dispone de una memoria determinada o ha de soportar un lenguaje y un entorno específicos. El problema de los programadores de estos dispositivos reside, principalmente, en el momento en el que quieren estandarizar todos los dispositivos. Esto es muy difícil, ya que cada uno de ellos tiene unas aplicaciones diferentes, está implementado en un lenguaje distinto y utiliza técnicas de desarrollo y sistemas operativos dispares. 2.- Generalidades de los Dispositivos Móviles Un dispositivo móvil (DM) se puede definir como aquel que disfruta de autonomía de movimiento y está libre de cableado. La principal característica de un dispositivo móvil es su gran capacidad de comunicación, la cual permite tener acceso a información y servicios independientemente del lugar y el momento en el que nos encontremos. Es decir, es una fuente de información fácil de transportar. La movilidad de un DM está condicionada por la necesidad de utilizar una batería. Esto representa un inconveniente debido a que la batería necesita recargas periódicas, lo que dificulta en muchos casos la portabilidad del DM. Un dispositivo móvil se caracteriza, en general, por su reducido tamaño, el cual aporta una ventaja notable: favorece la movilidad de los DM’s. A su vez, comporta una serie de inconvenientes, como son que han de utilizar un procesador más simple y una memoria pequeña. Además, los interfaces con el usuario también son reducidos, ya que la mayor parte de los DM’s tienen una pantalla reducida, un teclado muy pequeño, o carecen de él, reconocimiento de voz limitado, etc. Un DM ofrece recursos tanto a nivel personal como a nivel empresarial. Es en este último caso en el que los DM’s no disponen de la capacidad requerida para sus necesidades (poco espacio de almacenamiento de datos, introducción de datos poco eficaz, visualización limitada, etc.). Con todo esto, tenemos que las aplicaciones de un DM, a primera vista, son más reducidas y menos potentes que las que podamos desarrollar sobre un PC. Para intentar solucionar esta problemática y conseguir que los DM’s tengan más funcionalidad, se ha de aprovechar la gran capacidad de comunicación de la que disponen. De esta manera la “lógica pesada” de las aplicaciones estaría ubicada en un servidor remoto potente y el DM dispondría de ella cuando fuese necesario. Pero esto no es tan fácil de realizar, ya que el dispositivo consumiría más energía, con lo que la batería debería cargarse más frecuentemente o aumentar el tamaño del DM para llevar una más potente. Si a esto se le añade el hecho de que también aumentaría el precio del DM, estas soluciones, por el momento, no son muy viables aunque sí utilizadas.

Upload: eliseoroblesalba

Post on 21-Dec-2015

225 views

Category:

Documents


3 download

DESCRIPTION

Generalidades de los dispositivos moviles

TRANSCRIPT

Page 1: generalidadesTrabajo_PDM

SCM – Subloque PDM Introducción a los Dispositivos Móviles

1

1.- Introducción a la problemática de los Dispositivos Móviles Si pensamos en algún dispositivo móvil, lo primero en lo que pensamos es en un

teléfono móvil, y como mucho en una PDA. Pero en la actualidad son varios los dispositivos móviles disponibles en el mercado. Este es el caso de los PC’s portátiles, de los teléfonos con acceso a Internet, PocketPC’s, etc.

Este hecho da lugar a una importante problemática para quien programa tales

dispositivos, ya que cada uno de ellos tienen unas características particulares: cada uno dispone de una memoria determinada o ha de soportar un lenguaje y un entorno específicos.

El problema de los programadores de estos dispositivos reside, principalmente, en el

momento en el que quieren estandarizar todos los dispositivos. Esto es muy difícil, ya que cada uno de ellos tiene unas aplicaciones diferentes, está implementado en un lenguaje distinto y utiliza técnicas de desarrollo y sistemas operativos dispares.

2.- Generalidades de los Dispositivos Móviles Un dispositivo móvil (DM) se puede definir como aquel que disfruta de autonomía de

movimiento y está libre de cableado.

La principal característica de un dispositivo móvil es su gran capacidad de comunicación, la cual permite tener acceso a información y servicios independientemente del lugar y el momento en el que nos encontremos. Es decir, es una fuente de información fácil de transportar.

La movilidad de un DM está condicionada por la necesidad de utilizar una batería. Esto

representa un inconveniente debido a que la batería necesita recargas periódicas, lo que dificulta en muchos casos la portabilidad del DM.

Un dispositivo móvil se caracteriza, en general, por su reducido tamaño, el cual aporta

una ventaja notable: favorece la movilidad de los DM’s. A su vez, comporta una serie de inconvenientes, como son que han de utilizar un procesador más simple y una memoria pequeña. Además, los interfaces con el usuario también son reducidos, ya que la mayor parte de los DM’s tienen una pantalla reducida, un teclado muy pequeño, o carecen de él, reconocimiento de voz limitado, etc.

Un DM ofrece recursos tanto a nivel personal como a nivel empresarial. Es en este

último caso en el que los DM’s no disponen de la capacidad requerida para sus necesidades (poco espacio de almacenamiento de datos, introducción de datos poco eficaz, visualización limitada, etc.).

Con todo esto, tenemos que las aplicaciones de un DM, a primera vista, son más

reducidas y menos potentes que las que podamos desarrollar sobre un PC. Para intentar solucionar esta problemática y conseguir que los DM’s tengan más

funcionalidad, se ha de aprovechar la gran capacidad de comunicación de la que disponen. De esta manera la “lógica pesada” de las aplicaciones estaría ubicada en un servidor remoto potente y el DM dispondría de ella cuando fuese necesario.

Pero esto no es tan fácil de realizar, ya que el dispositivo consumiría más energía, con

lo que la batería debería cargarse más frecuentemente o aumentar el tamaño del DM para llevar una más potente. Si a esto se le añade el hecho de que también aumentaría el precio del DM, estas soluciones, por el momento, no son muy viables aunque sí utilizadas.

Page 2: generalidadesTrabajo_PDM

SCM – Subloque PDM Introducción a los Dispositivos Móviles

2

Las conclusiones preliminares que podemos obtener de esta información son:

• Conseguir que el interfaz de las aplicaciones sea lo más simple posible, para ahorrar memoria.

• Evitar la introducción masiva de información en el dispositivo móvil, ya que se podría saturar.

• Estudiar cuidadosamente el diseño de la interfaz • Usar guías de estilo y recomendaciones al respecto

3.- Tipos de Dispositivos Móviles

3.1.- Teléfono móvil (1)

Un teléfono móvil es un teléfono portátil, sin hilos, conectado a una red celular. Este dispositivo permite a los usuarios la conversación telefónica en tiempo real y en ambos sentidos de transmisión en cualquier lugar cubierto por la red. Si la red es digital el teléfono puede enviar y recibir información a través de Internet.

3.2.- PDA (Personal Digital Assistant) (2)

Las PDA son agendas personales electrónicas que tienen capacidad para almacenar datos ya que poseen mayor memoria que los teléfonos móviles. También disponen de una pantalla más grande (visualización mejorada) y tienen una mayor capacidad de proceso.

Existe una gran variedad de PDA’s en el mercado, debido al éxito que están teniendo en los últimos años. Hay diversas compañías que se dedican a realizar los sistemas operativos de estos dispositivos, siendo los más importantes los que se citan a continuación: Palm Source, Linux, Symbian, Microsoft CE. 3.3.- Híbridos (3)

Existen dos tipos de híbridos: PDA’s con las propiedades de un teléfono móvil y teléfonos móviles que adoptan las características de los PDA’s. Los dos intentan que cada dispositivo adquiera las ventajas del otro. En el caso de las PDA’s, se ha añadido la capacidad de comunicación con otros usuarios, mientras que los teléfonos móviles han adquirido una pantalla de mayores dimensiones y una capacidad de procesado más elevada.

Dos de los tipos de híbridos más comunes son: Communicators: son pequeños ordenadores con posibilidad de uso de voz y telefonía. Smartphone: son teléfonos con ciertas características que les asemejan a ordenadores.

(1) (2) (3) Ver apartado Dispositivos Móviles del anexo

Page 3: generalidadesTrabajo_PDM

SCM – Subloque PDM Introducción a los Dispositivos Móviles

3

4.- Sistemas Operativos

Un Sistema Operativo es un programa que actúa como intermediario entre el usuario y el hardware de un PC. Su propósito es proporcionar un entorno en el cual el usuario pueda ejecutar programas. El objetivo principal de un Sistema Operativo es lograr que el sistema de cálculo se use de manera cómoda. El objetivo secundario es que el hardware del PC se emplee de manera eficiente.

4.1.- Palm OS 4.1.1.- Historia de Palm OS

La compañía Palm, fundada en 1992, fue la que elaboró el sistema operativo Palm OS. En 1995 fue adquirida por U.S. Robotics Corp. (empresa norteamericana que, durante tres décadas, desarrolló módems destinados al acceso a Internet). Un año después, en 1996, introdujo en el mercado los equipos Pilot 1000 y Pilot 5000. En septiembre de 1999, 3Com anunció que Palm

dejaba de formar parte de la corporación y pasaba a ser totalmente independiente, hecho que se produjo el 2 de marzo de 2000.

La compañía encabeza el mercado de venta de PDA´s en todo el mundo, ya que

acapara aproximadamente el 75% del mercado mundial de venta de ordenadores de mano. En la actualidad marcas como Oracle, Nokia, Handspring, Symbol, Sony, utilizan este

sistema operativo

4.1.2.- Características de Palm OS La plataforma Palm está orientada a acceder a cualquier información en cualquier lugar

y momento. Además, el usuario puede organizar fácilmente sus citas y eventos, así como trabajar con aplicaciones y datos empresariales. Palm OS permite el acceso tanto a páginas WAP como a las incluidas en la tradicional red de Internet, siempre que el PDA disponga de un módem o la conexión se realice con la ayuda de un teléfono móvil y se utilice la aplicación Web Clipping.

Las principales características de Palm OS son su funcionalidad, su gran rapidez y la

poca memoria que ocupa. También posee un gran volumen de aplicaciones (más de 7.000 frente a las 300 disponibles para Windows CE) que están destinadas a cubrir todas las necesidades del usuario. Otro factor a destacar es que el software incluido en la Plataforma es compatible con archivos Excel, documentos de Word, registros e-book, e-mail y navegadores WAP y Web.

El gran punto débil de Palm OS es la escasa importancia que le da al aspecto

multimedia, siendo éste, en el que la plataforma de Microsoft le aventaja. Los organizadores Palm se basan en la tecnología HotSync, la cual permite la

sincronización entre el organizador y el PC, donde basta con apretar un botón para que se realice el intercambio de información entre ellos: todos los datos introducidos desde la última sincronización quedarán en el ordenador y viceversa.

Con la licencia del sistema CIC’s Jot para el reconocimiento de la escritura manual, PalmSource está abandonando la tecnología Graffiti (reconocimiento de escritura sobre la pantalla del DM), un signo distintivo de las Palm hasta la fecha. Este sistema permitirá la escritura directamente sobre el área de pantalla útil para la aplicaciones utilizando símbolos similares al alfabeto y será conocido por el nombre de Graffiti2. La aparición de este nuevo sistema tiene su origen en una batalla legal entre Palm Os y la empresa Xerox, por saber quién realizó el código de la tecnología Graffiti.

Page 4: generalidadesTrabajo_PDM

SCM – Subloque PDM Introducción a los Dispositivos Móviles

4

4.1.3.- Últimas tecnologías Palm OS

El sistema operativo más extendido por la plataforma Palm recibe el nombre de Palm OS 5. La principal característica que aporta esta versión es el aumento de conectividad, de manera que además del habitual soporte para WAN y Bluetooth. Esta nueva edición ofrece la posibilidad de funcionar con las llamadas redes de comunicación local inalámbricas, más conocidas por su nombre técnico, 802.11b. La mayor conectividad, enfocada sobre todo al mundo empresarial, aproxima las prestaciones de Palm OS en este campo a las de los dispositivos basados en el Pocket PC 2002 de Microsoft.

Palm OS 5 da mayores prestaciones multimedia, por lo que mejora tanto la calidad de la imagen como las posibilidades de audio de los PDA que lo utilizan. La resolución tiene una mayor definición: de los 160 x 160 píxeles se ha pasado a los 320 x 320. En el terreno de audio, se pueden escuchar archivos de sonido con “calidad de CD”.

Otra de las novedades de este SO ha sido la elección de los procesadores ARM para

dar vida a los nuevos PDA basados en la versión 5. Los fabricantes de PDA basados en Palm OS pueden prescindir de los clásicos procesadores DragonBall de Motorola y utilizar el tipo de procesador que utilizan la mayoría de Pocket PC -basados en los sistemas operativos de Microsoft. Se referiere a los chips de Intel, Texas Instruments o Motorola.

También en la seguridad se ha mejorado respecto a PalmSource. Así, las mayores

posibilidades de conectividad on-line van asociadas con una mayor protección de los datos. Está pensada sobretodo para el envío y recepción de e-mails, la navegación por Internet y las transacciones a través de la red.

Aunque la versión 5 de Palm OS es reciente, PalmSource ya está trabajando en un

nuevo SO llamado Sahara con el que la compañía espera tener una mayor aceptación para aplicaciones y soluciones empresariales. En teoría debería estar desarrollado para finales de este año y disponible en los comercios a partir del 2004. Este nuevo SO incluirá un framework con interfaces públicas, para que terceras empresas puedan integrar nuevos módulos como lectores de documentos o decodificadores de video. La seguridad será un elemento clave en la nueva versión, incorporándose funciones para ejecutar sólo aplicaciones autorizadas, protección de memoria frente a programas intrusos y redes privadas virtuales. También se mejorarán las características del navegador web que incluirá soporte para hojas de estilo (CSS), JavaScript y Dynamic HTML.

Palm Source ha anunciado esta semana (14 de noviembre de 2003), que la nueva

versión del sistema operativo para handheld más popular del mundo estará lista para finales de año. Se espera con gran expectativa ya que este cambio presupone un salto tan grande como lo tuvo Win 95 de Win 3.1. Esto es debido a que se aprovecharán al máximo las capacidades multimedia de los nuevos procesadores. Con la noticia de la posibilidad de romper la barrera de las 16 MB en los anteriores dispositivos, se espera un sistema operativo mas elaborado y vistoso.

4.1.4.- Productos de Palm OS Diferentes ejemplos de dispositivos móviles que utilizan el sistema operativo de Palm OS son(p5):

• HandspringTM TreoTM 90 • PalmTM Tungsten W • HandspringTM TreoTM 600 • HandspringTM TreoTM 300

(p5) Ver apartado de Palm OS del anexo adjunto

Page 5: generalidadesTrabajo_PDM

SCM – Subloque PDM Introducción a los Dispositivos Móviles

5

4.2.- WINDOWS CE(6) 4.2.1.- Introducción a Windows CE

Windows CE es el sistema operativo incrustado modular de tiempo real para dispositivos móviles de 32-bits inteligentes y conectados. Windows CE combina la compatibilidad y los servicios de aplicación avanzados de Windows con soporte para múltiples arquitecturas de CPU y opciones incluidas de comunicación y redes para proporcionar una rica y escalable fundación abierta para crear una amplia variedad de productos. Windows CE impulsa a los dispositivos electrónicos del cliente, terminales Web,

dispositivos de acceso a Internet, controladores industriales especializados, computadoras de bolsillo y dispositivos de comunicación incrustados. Esta plataforma altamente modular permite a los desarrolladores crear de una manera confiable y flexible la nueva generación de dispositivos móviles de 32-bits que se integran fácilmente con Windows y la Internet.

Windows CE también funciona con otros dispositivos denominados Palm-size PC o "PC del porte de la palma", que son más pequeños que los HPC y que carecen de teclado, reemplazado por un reconocimiento de un sistema de tacto y un panel de entrada que aparece en pantalla. La figura anterior muestra un Palm-size PC.

Los dispositivos para Windows CE se sirven de baterías para obtener poder y duran 20 horas con uso continuo o una semana si el uso es discontinuo. Como una regla general se puede decir que: las máquinas Windows CE tiene baterías con vida más corta.

A diferencia de Windows 9x o NT, el sistema operativo Windows CE no tiene que ser re iniciado cada vez que el usuario lo desea utilizar. De hecho, se pueden configurar las máquinas para que se prendan instantáneamente a la respuesta al input del usuario, y sistema vuelve al estado justo antes de apagarse.

El sistema operativo no viene es discos, ni en CD-ROM sino que en una pequeña tarjeta que se inserta en un HPC o en un Palm-size PC. 4.2.2.- Windows CE .Net v 4.2

Windows CE .Net Version 4.2, o McKendric, ofrece varias mejoras sobre la versión actual del sistema operativo, Windows CE .Net 4.1. Incorporará nuevas características como soporte para VoIP (Voz sobre Protocolo Internet), un firewall y soporte para conexión a redes inalámbricas para gateways residenciales, según ha comentado Chip Schnarel, director del grupo del programa de desarrollo para Windows CE OS.

Entre los cambios que están siendo realizados para el Sistema Operativo es una característica para mejorar la compatibilidad de APIs (Aplication Program Interface) con el software desarrollado para los PDAs que ejecutan el software Pocket PC de Microsoft y otros dispositivos que ejecutan software basado en WindowsCE.Net..

Para hacer esto posible, los desarrolladores de software cambiarán una interfaz de usuario de una aplicación con el fin de que pueda ser visualizada en diferentes tamaños de pantallas, mientras que se mantiene la compatibilidad en el nivel API. Esto debería permitir a los desarrolladores llevar más fácilmente sus aplicaciones a diferentes dispositivos basados en Windows CE.

Microsoft también está desarrollando un prototipo de dispositivo basado en VoIP y en tecnologías de gateway residencial incluidas en McKendric, con la intención de ayudar a los fabricantes de dispositivos a reducir el tiempo que lleva desarrollar estos tipos de productos.

(6) Ver apartado Windows CE del anexo adjunto

Page 6: generalidadesTrabajo_PDM

SCM – Subloque PDM Introducción a los Dispositivos Móviles

6

Según Schnarel, McKendric incluirá una muestra de aplicación VoIP cuando sea lanzado, y ofrecerá un cliente proxy que permitirá que una aplicación VoIP sea utilizada a través de firewalls. Para los productos de gateway residencial, la nueva actualización ofrecerá un firewall y soporte para 802.11b, que permitirá a los fabricantes de dispositivos ofrecer gateways residenciales que también funcionen como puntos de acceso inalámbrico.

4.2.3.- WINDOWS MOBILE 2003

El 23 de junio del 2003, Microsoft anunció en Madrid la disponibilidad del nuevo

sistema operativo Windows Mobile 2003 para Pocket PCs. Esta nueva versión enriquece la experiencia de los usuarios de Pocket PC con la

incorporación de un acceso más sencillo a las redes wireless, una potente experiencia multimedia y soporte a los desarrolladores que construyan servicios y aplicaciones .NET de Microsoft. Todos los partners de la compañía se han unido a Microsoft en esta presentación, incluyendo los fabricantes de Pocket PCs basados en Windows Mobile, los operadores de telefonía y los desarrolladores de software (ISVs).

Paralelamente a este lanzamiento, Microsoft también ha anunciado hoy la

denominación Windows Mobile, que será el nuevo y único nombre del sistema operativo Windows para toda la gama de dispositivos móviles.

Las mejoras que ofrece esta versión son:

• Permite una fácil conexión a una gran variedad de redes inalámbricas. Detecta automáticamente las redes Wi-Fi y se conecta de forma sencilla a ellas y a las redes de área personal a través de Bluetooth.

• Amplía la experiencia de mensajería y e-mails. Facilita la permanente actualización del e-mail a través de la integración con la próxima versión de Microsoft Exchange Server 2003 y permitirá la futura innovación del hardware con soporte nativo para teclados integrados.

• Aumenta la experiencia digital. Ofrece una mejor experiencia multimedia para las fotos, canciones y películas a través de la tecnología de audio y vídeo de Windows Media 9.

o Imágenes: Los usuarios pueden guardar, editar y visualizar fotos digitales en sus dispositivos.

o Windows Media Player 9: - Facilita el acceso a un mayor número de contenidos multimedia de gran

calidad (no sólo contenido adaptado a los dispositivos portátiles) sobre redes Wi-Fi a una velocidad máxima de 300 Kbps.

- Reproduce películas y álbumes de fotos digitales creados con Windows Movie Maker 2 o Plus! Photo Store.

- Soporta Plus! Sync & Go, que permite a los usuarios sincronizar contenido digital de Internet o de su PC.

• Estimula la innovación de la plataforma. Windows Mobile 2003 para Pocket PC incluye soporte integrado para Microsoft .NET Compact Framework, lo que aporta una excelente oportunidad para los desarrolladores, ISVs y proveedores de soluciones para desarrollar una gran variedad de aplicaciones que aprovechen las ventajas de los servicios Web y el estándar XML.

Windows Mobile 2003 para Pocket PC es una rica y extensible plataforma para el

desarrollo de aplicaciones que aprovecha las ventajas del nuevo sistema operativo Windows CE .NET 4.2 y .NET Compact Framework en ROM. Utilizando la herramienta de desarrollo Visual Studio .NET 2003, millones de desarrolladores de aplicaciones de Visual Studio pueden usar ahora sus habilidades para desarrollar y desplegar innovadoras aplicaciones. Es decir, .NET Compact Framework traslada el poder y el rendimiento de los ordenadores de sobremesa a los dispositivos móviles.

Page 7: generalidadesTrabajo_PDM

SCM – Subloque PDM Introducción a los Dispositivos Móviles

7

4.3.- Linux 4.3.1.- Introducción a Linux

Linux es un sistema operativo compatible UNIX. Son dos las características que lo diferencian del resto de sistemas del mercado. La primera es que es libre, esto significa que no hay costos por sus licencias. La segunda es que el sistema viene acompañado del código fuente. LINUX se distribuye bajo la licencia pública del proyecto GNU que fue lanzado en 1984 para desarrollar aplicaciones de libre distribución.

El sistema ha sido diseñado por multitud de programadores alrededor del mundo. El núcleo del sistema sigue en continuo desarrollo. En los últimos tiempos, algunas casas de software comercial han empezado a distribuir sus productos para Linux. Su presencia en empresas aumenta rápidamente por la excelente relación calidad-precio que consigue.

Linux es multitarea, lo que se refiere a la capacidad de ejecutar varios programas al mismo tiempo, y utiliza la llamada multitarea preventiva, la cual asegura que todos los programas que se están utilizando en un momento dado sean ejecutados, siendo el sistema operativo el encargado de ceder tiempo de microprocesador a cada programa. Linux es también multiusuario e instalable sobre diversas plataformas de procesadores.

En los últimos años, algunos fabricantes de DCM han incorporado Linux a sus productos, del cual hay más de 60 distribuciones actualmente. Se están desarrollando versiones de Embedded Linux que constituyen la tercera alternativa a Palm OS y Windows CE para los computadores de mano. Así, LinuxDevices.com, ha creado una guía de referencia para computadores de mano basados en Linux, con la que pretende mantener actualizados de manera permanente los productos Linux para DCM. Si bien el modelo Sharp Zaurus SL-5500(7)

fue el primer computador de mano con Linux pre-instalado, hay actualmente versiones de Embbeded Linux para casi todas las marcas. 4.3.2.- Versiones de Linux

• Embedded Linux como tercera opción entre Palm OS y Pret PC

• Pocket Linux

o Proyecto apoyado por la organización HandHeld.org. o Basado en Linux, XML y Java. o Completa plataforma de interfaz de usuario. o Desarrollado por Transvirtual Technologies. o GUI basada en XML o Aplicaciones Only-XML o Only-Java

• Linux de Zaurus

o Es la que tiene mayor acogida. o Basado en la distribución Mandrake 2.4.6. o Se utiliza procesador Strong ARM. o Es la mas utilizada, ya que tiene soporte para diferentes tipos de equipos y

drivers. o Funcionalidades básicas sobre BussyBox de Lineo. o GUI basada en QT/Embedde (KDE) o Se puede utilizar lenguaje tanto C++ como Java

• Otros: Amirix, Collogic, Conventive, Esfia, KYZO, Lineo, LinuxWorks, etc.

(7) Ver apartado de Linux en el anexo adjunto

Page 8: generalidadesTrabajo_PDM

SCM – Subloque PDM Introducción a los Dispositivos Móviles

8

4.3.3.- Consorcio Empresarial de Linux

Linux esta formado por un consorcio de empresas agrupado bajo el nombre de Embedded Linux, que desarrollan versiones de Linux para la línea de productos móviles. Su objetivo es crear una alternativa con éste SO para dispositivos pequeños audiovisuales y PDA’s, todos ellos utilizando el mismo estándar. Dentro de este consorcio existen varias ramificaciones: Amirix

• Linux Embedded derivado del estándar de la distribución abierta Debian GNU/Linux y adaptado gracias a la modificación de sus condiciones a las características del hardware (drivers) y la configuración del sistema.

• Da soporte a la bio-identificación.

Collogic • Coollinux – Coollinux AE (edicion para aplicaciones). Combina las capacidades de la

tecnología embedida de Linux y Java para constituirse como SO para la siguiente generación de aplicaciones de internet, Internet Móvil.

Coventive

• Xlinux – Desarrollaron un Kernell (núcleo) completamente embedido de Linux que se podía configurar en un espacio de memoria muy pequeño (143Kb).

• Se puede usar para implementar aplicaciones de manejo de información y dispositivos empotrados.

• Es compatible con múltiples procesadores. Esfia

• RedBlue Linux es una distribución de Linux Embedido para las soluciones que utilizan comunicaciones de datos.

• Deriva de Linux OpenSource 2.4

KYZO • PizzaBox Linux – Implementación de Linux y Samba para sistemas pequeños que

incluye una versión para cliente y otra para servidor. • Diseñado para clientes con 6Mb de ROM y con un procesador 486 o superior.

Lineo • Embedix – Solución basada en Linux cuya filosofía tiene como objetivo cumplir

requisitos de velocidad y maximizar la capacidad de memoria y almacenamiento de los dispositivos

LinuxWorks

• Bluecat – Distribución abierta creada para satisfacer los requisitos de los dispositivos • Especializados en permitir que la configuración encaje exactamente con los requisitos

de desarrollo y también los dispositivos multiprocesador (x86, Power PC, MIPS, etc)

MZI: Linu@ • Basado en Linux Embedded con unas GUI desarrolladas sobre QT/Embedded. • Su eficacia y tamaño compacto lo hacen bastante apto para aplicaciones sobre Internet • Diseñado para dispositivos que integran PDA y teléfono en la misma máquina. • Procesadores: x86, MPC, MIPS, Strong Arm. • Memoria mínima de 2MB de RAM y 4MB de ROM

Neoware • NeoLinux – Distribución que se deriva de Red Hat y se optimiza para el uso en

aplicaciones de sistemas de información. • Pantea un servidor remoto que proporciona capacidad para ser administrador desde la

PDA

Page 9: generalidadesTrabajo_PDM

SCM – Subloque PDM Introducción a los Dispositivos Móviles

9

4.4.- Symbian 4.4.1.- Historia de Symbian

El nacimiento de Symbian fue hace aproximadamente 6 años a partir de un consorcio entre tres empresas formado por: Nokia, Ericcson y Psion, con el objetivo de desarrollar un SO estándar para dispositivos móviles.

Esta empresa fue fundada en junio de 1998. Sus principales co-fundadores fueron: Nokia, Ericsson, Motorola, Panasonic and Psion. Dispone de oficinas alrededor del mundo, y su sede principal se encuentra en Londres. Sus licencias están en manos de Kenwood, Sanyo, Siemens, Sony y otros además de los accionistas.

• Cronología o 1981, Psion lanza su primer producto, Flight simulator o 1984, Psion organizar ve la luz o 1990, SIBO SO (16 bits) o 1997, EPOC SO (32 bits) o 1998, El nombre de Symbian aparece por primera vez o 1999, EPOC versión 5 o 2000, Symbian 6.0 o 2001, Symbian 6.1 o 2003, Symbian 7.0

Nota: Se empieza a contar desde que apareció Psion ya que fue la que aportó el primer sistema operativo de Symbian. 4.4.2.- Introducción a Symbian Symbian posee ciertas características que influyen de manera determinante en el desarrollo de aplicaciones:

• Ha sido diseñado para ahorrar batería. • Symbian está basado en un micro kernel. Una mínima porción del sistema tiene

privilegios de kernel. Una de las tareas del kernel es manejar las interrupciones y prioridades.

• En Symbian, cada aplicación corre en sus propios procesos y tiene acceso sólo a su espacio de memoria. Este diseño hace que las aplicaciones para Symbian sean orientadas a tareas simples y no múltiples.

• El sistema posee componentes que permiten el diseño de aplicaciones multiplataforma: diferentes tamaños de pantalla, color, resolución, teclados, etc. La mayoría de estos componentes han sido diseñados en C++.

• Empresas claves en los desarrollos de aplicaciones para Symbian SO. Symbian se ha dedicado sobretodo al desarrollo de sistemas operativos para Smartphones(8). El último estándar que Symbian ha sacado al mercado es el 7.0

4.4.3.- Empresas claves para Symbian Las empresas que han intervenido en el desarrollo de aplicaciones de la plataforma Symbian son:

• IBM • Lotus • Oracle

(8) Ver apartado de Symbian en el anexo

Page 10: generalidadesTrabajo_PDM

SCM – Subloque PDM Introducción a los Dispositivos Móviles

10

• SAP • Sybase • Nokia Developer Community (Forum Nokia)

Los lenguajes de programación utilizados en la plataforma Symbian son: C++, Java y Visual Basic sobre un emulador. 4.4.4.- Estándares de Symbian Los estándares característicos del Sistema Operativo Symbian son los siguientes:

• MMS ( Multimedia Messaging Service), • Java • SyncML • Bluetooth • GPRS • WAP.

4.4.5.- Aplicaciones(9)

• Active Desk: personaliza el teléfono, tanto en atractivo visual como en facilidad de manejo, así como cambiando colores del texto o imágenes de fondo y mejorando el calendario, el indicador de nivel de batería, etc.

• Active Mail: cliente de correo que, entre otras funciones, permite utilizar filtros para

descargar sólo los mails que se deseen y así reducir la transferencia de datos al máximo.

• AniViewer: sencillo y simple visor de imágenes, permite ver .gif , además es gratuito.

No está disponible en español pero es fácil de entender.

• Answering Machine: contestador automático personalizado, puedes poner un mensaje propio o uno de los predefinidos, disponible en 9 idiomas, pero no en español.

• AppMan: práctico gestor, que informa de la memoria libre, las instalaciones aplicadas,

las que están en marcha, las comprimidas, etc. Además permite comprimir y gestionar las aplicaciones, abrir y manejar archivos, entre otras tareas.

• Handy PhotoSafe: esta aplicación encripta y añade un password a las imágenes para

asegurar que nadie pueda verlas.

• Handy Reminder: se pueden programar hasta siete alarmas con esta aplicación, ya sea diaria, semanal, horaria.

• Handy Safe: si queremos usar el móvil para guardar claves de tarjetas, números de

cuenta y otros datos privados hemos de estar seguros de que nadie tendrá acceso a ellos, esta app encripta bajo Blowfish y protege con passwrod los datos confidenciales. Al igual que otros productos de Handy incluye módulo para PC.

• Handy Shopper: se puede programar la compra e ir tachando artículos a medida que

se obtengan.

• Image Plus: editor de imágenes con el que además de las opciones típicas (márgenes, iconos...) permite enviar MMS desde la misma aplicación.

(9) Ver apartado Aplicaciones de Symbian en el anexo adjunto

Page 11: generalidadesTrabajo_PDM

SCM – Subloque PDM Introducción a los Dispositivos Móviles

11

• ReadM: el programa nos permite oír mp3 y leer ebooks en los formatos DOC, TXT, PRC y TCR, entre las ventajas están que lee los ebooks directamente de la bandeja de entrada si así lo queremos, autoscroll, podemos ver los textos apaisados... y es gratuito.

• RealOne Placer: reproductor oficial de RealNetworks, a parte de poder escuchar

archivos de audio podemos reproducir videos que tengamos guardados o mientras navegamos, así como sintonizar emisoras de radio. El programa explora la tarjeta de memoria.

• RemindMe: para que no se nos pase ni una fecha, esta app se acuerda por nosotros,

cuenta con imágenes y sonidos propios y la posibilidad usar los que creemos, multitud de alarmas y básicamente lo que necesita para ser una muy buena aplicación de este tipo.

• Ringtone Studio: herramienta para editar midis, con ella podrás subir el volumen, meter

silencios, cambiar los instrumentos (viene con 128), modificar la velocidad ...

• Screen: forma fácil de realizar una captura, el programa se queda funcionando en segundo plano y cuando apretemos la combinación de teclas preestablecida, captura la pantalla.

Page 12: generalidadesTrabajo_PDM

SCM – Subloque PDM Introducción a los Dispositivos Móviles

12

5.- Tipos de Aplicaciones Móviles 5.1.- Aplicaciones Web Móviles

Una aplicación web móvil es una aplicación igual que la que podemos ejecutar en un PC de escritorio pero en el mundo móvil, con una versión más reducida del lenguaje.

Las características de las aplicaciones son:

• Accesibilidad a través de un navegador web, parecido a un navegador de PC de escritorio, pero con un código mucho más limitado.

• Las aplicaciones han de ser interactivas y dinámicas, ya que muchos móviles tienen el inconveniente de tener un teclado muy limitado y una pantalla reducida.

• La interfaz con el usuario ha de ser rica. • El modelo de propagación por la red es el mismo que se utiliza para la web pero a

través de la interfaz móvil. • El móvil sólo se encarga de la interfaz gráfica con el usuario. Esto provoca que el

dispositivo tenga capacidad nata de comunicación y siempre esté on-line para poder ejecutar una aplicación dinámica.

• La lógica de procesado pesado se realiza en el servidor y el resultado se manda al móvil que sólo se encarga de la interfaz gráfica.

Este tipo de aplicaciones se pueden crear tanto con Java (J2ME) como con Windows (.NET) 5.2.- Aplicaciones Standalone

Aplicación que, al contrario que la aplicación web móvil, se instala y ejecuta directamente en el dispositivo.

Esta aplicación comporta la ventaja de que el dispositivo no tiene porqué tener una

capacidad nata de comunicación y puede estar completamente desconectado de la red si la aplicación no requiere ningún tipo de acceso al servidor (off-line). De otra manera, si es necesario para el desarrollo de la aplicación, el dispositivo puede estar conectado (on-line).

También, y como complemento a lo anterior, si la aplicación se va a ejecutar

completamente en el dispositivo, éste ha de tener mucha más memoria y más potencia de cálculo de CPU para poder llevar a cabo todo el cómputo, ya que se necesitará más recursos.

Por otra parte, el dispositivo cliente ha de decidir en todo momento cómo va a

desarrollarse la aplicación, por lo que el cliente ha de ser inteligente (denominado Smart Client) y la persona que posee el terminal ha de tener mucho más control sobre él (se ha de tener un conocimiento amplio sobre el manejo del terminal).

Por último, sobre este tipo de aplicaciones, se ha de comentar que el modelo de propagación de datos es similar al de un ordenador de escritorio pero mediante una red inalámbrica. 5.3.- Aplicaciones de Notificación

Aplicaciones basadas en la comunicación, que consisten en el envío y recepción de mensajes.

Estos mensajes pueden ser noticias, conversaciones de chat, o información temática

solicitada en un determinado lugar. Los tipos pueden ser:

• SMS: mensaje escrito con el teléfono móvil. • EMS: mensaje que permiten introducir gráficos.

Page 13: generalidadesTrabajo_PDM

SCM – Subloque PDM Introducción a los Dispositivos Móviles

13

• MMS: mensaje que permite introducir una aplicación multimedia.

Por otro lado, este tipo de aplicaciones tiene una interfaz con el usuario muy simple, capaz de funcionar en casi cualquier tipo de dispositivo por simple que sea. Para que el dispositivo pueda funcionar ha de estar siempre conectado a la red (on-line) y es imprescindible que tenga capacidad nata de comunicación.

Finalmente, la arquitectura de estas aplicaciones está basada en la

publicación/suscripción.

Page 14: generalidadesTrabajo_PDM

SCM – Subloque PDM Introducción a los Dispositivos Móviles

14

6.- Ventajas e Inconvenientes de los Dispositivos Móviles

6.1.- Ventajas

Las ventajas que suponen los dispositivos móviles son múltiples debido a los propósitos para los que han sido diseñados. Las características de los dispositivos móviles han hecho un mundo en continua evolución y desarrollo y está generando un mercado en expansión donde, en un futuro no muy lejano, se prevé un aumento de las aplicaciones.

La mayor ventaja que supone la utilización de DM’s es la eliminación del problema de cableado. Este hecho hace que sea más cómodo el uso de los dispositivos porque no tenemos que depender de la existencia de una red eléctrica para su funcionamiento.

Con la nueva generación de dispositivos móviles, y una vez superados los problemas de estandarización, podremos acceder a la red en cualquier lugar y a cualquier hora. Esto supone otra de las grandes ventajas de esta tecnología, ya que era casi impensable hace unos años.

El estándar que se está desarrollando es la tecnología WAP. WAP está siendo diseñado para proporcionar interoperabilidad entre las diversas redes de telefonía móvil (GSM, CDMA) y familias de dispositivos portátiles. Mediante la tecnología WAP, las empresas podrán acceder a bases de datos y cualquier usuario podrá informarse del asunto que le interese en cada momento.

En principio, el dispositivo móvil estará conectado permanentemente a la red, así que en todo momento el usuario podrá recibir cualquier tipo de información siendo procesada por el dispositivo al instante. Los dispositivos tendrán gran flexibilidad dentro del área de cobertura. Será posible conectarse a internet o interactuar con otros usuarios en cualquier momento y de una forma sencilla.

La competencia entre las diferentes compañías que se dedican al software y hardware de los dispositivos móviles hace que se estén generando gran cantidad de aplicaciones y se mejoren los sistemas operativos. También se consigue que los usuarios ganen en comodidad haciendo la pantalla de mayores dimensiones y que los modos de introducir datos se haga de una manera más cómoda con teclados más grandes y/o con la tecnología tipo Graffiti.

Otra de las ventajas que ofrece la nueva tecnología, será la de poder enviar datos de diferentes clases ya sea voz, datos, imágenes o vídeo. Esto conllevará a que el usuario será capaz en todo momento de enviar cualquiera de estas clases de datos siempre que lo desee, con la comodidad que supone el hecho de poder hacerlo desde el mismo dispositivo.

Para los que les gustan los juegos on-line, tendrán la oportunidad de jugar con cualquier usuario conectado a la red con una mejor resolución, mayores prestaciones y mayores posiblidades a la hora de escoger el juego. 6.2.- Inconvenientes

El amplio desarrollo que están sufriendo las comunicaciones móviles, han hecho que se intente consolidar un estándar para la Tercera Generación, ya que será necesario para resolver muchos de los problemas que conlleva esta evolución.

Uno de los mayores inconvenientes que se plantean, es la necesidad de adaptar la interfaz de usuario a cada tipo de dispositivo. Las medidas que se están adoptando son las de separar la lógica de aplicación del interfaz de usuario. Esto se está llevando a cabo utilizando métodos estándar de comunicación y haciendo uso de herramientas que permitan adaptar rápidamente las aplicaciones a los nuevos tipos de dispositivos que vayan apareciendo.

Page 15: generalidadesTrabajo_PDM

SCM – Subloque PDM Introducción a los Dispositivos Móviles

15

Otro problema que existe es que la introducción de datos es lenta ya que, en el caso de las PDA, los teclados son muy pequeños o los que escriben directamente en la pantalla (tecnología Graffiti) no son perfectos.

La transferencia de datos es todavía lenta y su uso resulta caro e incómodo. Todavía existen problemas en la facturación, ya que no se ha establecido si será por tiempo de conexión o por el volumen de datos descargados.

El ancho de banda utilizado es otro problema a discutir. Hay en marcha un estándar donde los países intentan ponerse de acuerdo para escoger el ancho de banda que se va a dedicar para la nueva generación de dispositivos móviles, pero existen algunos obstáculos ya que el que se ha propuesto, en algunos países está ocupado por otros sistemas de comunicación.

Un punto débil de los DM’s es la duración de las baterías. Las aplicaciones que más batería gastan son las pantallas a color, los módems, las tarjetas de red, tarjetas de memoria y periféricos. Además, la capacidad de las baterías se va reduciendo con el tiempo.

El tamaño de la pantalla también influye en el software del dispositivo. No es lo mismo programar para un pantalla de un teléfono móvil, que para una pantalla de una PDA, ya que las últimas son más grandes y tienen una mejor resolución. A parte de esto, no hay un estándar de tamaño de pantalla, así que cada compañía programa sus propios dispositivos.

La seguridad es un punto clave para hacer de los dispositivos móviles un modo de conexión a la red patente y sin problemas

La compatibilidad con los diferentes dispositivos móviles sigue siendo un obstáculo, porque todavía no existe un software que poder utilizar independientemente del hardware que se maneje.

En lo que a sistemas operativos se refiere, hay muchas rivalidades entre las compañías existentes, lo que presenta un inconveniente a la hora de hacer un estándar.

Page 16: generalidadesTrabajo_PDM

SCM – Subloque PDM Introducción a los Dispositivos Móviles

16

7.- Plataformas de Desarrollo(10) 7.1.- Desarrollo en Escritorio

Es la forma más común a la hora de programar un dispositivo de mano. Esta técnica consiste en realizar la aplicación a través de alguna herramienta ejecutada en un PC. Las herramientas pueden ser extensiones para los lenguajes y entornos habituales de los PC’s o bien entornos de desarrollo específicamente creados para generar código ejecutable sobre los dispositivos de mano.

Dado que supondría un inconveniente tener que cargar en el dispositivo de cómputo móvil (DCM) el programa en desarrollo cada vez que se necesite ser probado, conviene contar con emuladores. En ellos se puede crear la aplicación y depurarla sobre sus sistemas operativos. El desarrollo en este tipo de software es igual que el desarrollo en escritorio, solamente cambiando la compilación (cross compilation), que es la última parte del proceso.

En el mercado libre existen varios emuladores para Palm OS (así como diversas herramientas propietarias). La más extendida, dada su versatilidad y portabilidad, es POSE (PalmOS Emulator).

Dado que Windows CE es propietario y está protegido por copyright, no puede existir

una herramienta libre que emule esta plataforma. De todas formas, existen herramientas que simulan algunos procesos, pero se distribuyen bajo licencia propietaria.

Para desarrollar programas para Embedded Linux sólo hay que elegir la arquitectura correcta al compilar, mientras que si se quiere probar, puede hacerse en la misma máquina de desarrollo (con las opciones de compilación normales).

Normalmente, el proceso de puesta a punto de las aplicaciones concluye con la generación del código de la aplicación que se instalará en dispositivo de mano. En este caso existen dos filosofías de trabajo: o bien el código generado es directamente ejecutable en la máquina, o bien se genera un código intermedio que al instalarse requerirá de un programa intérprete que lo traduzca y ejecute definitivamente.

Un aspecto fundamental a la hora de desarrollar una aplicación en un emulador, es el tener en cuenta que el emulador es una réplica del dispositivo. Debido a esto, hay veces que los programas realizados no funcionan como inicialmente esperamos una vez desarrollado y cargado en el dispositivo. 7.2.- SUN: J2ME

Versión de Java estándar. Es el conjunto básico de herramientas que permite crear Java Applets y aplicaciones Java Standalone, para dispositivos con capacidades limitadas.

Dentro de Java 2, la empresa Sun Microsystems, como creadora, separó los mundos

del entorno de empresas del entorno estándar, de la misma manera que ha hecho con la versión MicroEdition, ya que los dispositivos que lo utilizan son menos potentes y trabajan con menos potencia. 7.2.1.- Convivencia J2ME El entorno de desarrollo J2ME puede convivir con:

• WAP: permite soportar un navegador web simple. Para la comunicación WAP debe existir un gateway intermedio (pasarela) que permita traducir la petición WAP a petición

(10) Ver apartado Plataformas de desarrollo del anexo adjunto

Page 17: generalidadesTrabajo_PDM

SCM – Subloque PDM Introducción a los Dispositivos Móviles

17

WEB normal. Las páginas que se transmiten por WAP lo hacen con protocolo WML, que cuenta con un script simplificado para que lo entienda la red.

• SMS: no suele competir una aplicación con la otra, ya que son y sirven para finalidades diferentes.

• Bluetooth: se utiliza para comunicar elementos en distancias cortas, por lo que no compite con J2ME.

7.2.2.- Configuración y CLDC

La configuración del J2ME consiste en un conjunto mínimo de APIs útiles de para desarrollar aplicaciones para un conjunto definido de dispositivos. Son muy importantes porque describen las funcionalidades más importantes requeridas para unos dispositivos determinados.

Existe una configuración estándar llamada Connected Limited Device Configuration o

CLDC. Ésta describe el conjunto de funcionalidades mínimas de los dispositivos inalámbricos, acorde a su potencia y a sus características. Consiste en un resumen del conjunto de APIs básicas de construcción de aplicaciones para dispositivos móviles.

Las características de los API’s básicos del CLDC son:

• Especifican aspectos de programación, como lenguaje utilizado y máquina virtual, y

mínimos de hardware que requiere J2ME, como el procesador y el consumo. • En lo que se refiere a limitaciones de Java, no permiten hacer ciertas operaciones

matemáticas, eliminan métodos y limitan la capacidad de CLDC para manejar excepciones.

• En seguridad, se definen unas pautas del modelo sandbox , como son la carga de clases, la ejecución de APIs no autorizados, etc. De todas maneras, estas restricciones son de bajo nivel.

Existe la configuración MIDP, que es un paso alante en la configuración CLDC. 7.3.- MicroSoft .NET

MicroSoft.NET es el conjunto de nuevas tecnologías en las que MicroSoft ha estado trabajando durante los últimos años para competir con la plataforma Java. Esta plataforma se ha desarrollado con los siguientes objetivos:

• Mejorar sus sistemas operativos • Mejorar su modelo de componentes COM+ • Obtener un entorno específicamente diseñado para el desarrollo y ejecución del

software en forma de servicios. Éstos pueden ser publicados por escrito o accesibles a través de Internet de forma independiente del lenguaje de programación, del modelo de objetos, del sistema operativo o del hardware utilizados. Este entorno se denomina Plataforma.NET, y a los servicios antes mencionados se les conoce por servicios web.

Para el desarrollo y ejecución de aplicaciones en este nuevo entorno, Microsoft

proporciona un conjunto de herramientas conocidas como .NET Framework SDK, que incluye compiladores de lenguajes como C#, Visual Basic.NET, Managed C++ y JScript.NET específicamente diseñados para crear aplicaciones para él.

7.3.1.- CLR, el corazon de la plataforma .NET

El corazón de la plataforma.NET es el CLR (Common Language Runtime). Es una aplicación similar a un máquina virtual que se encarga de gestionar la ejecución de las

Page 18: generalidadesTrabajo_PDM

SCM – Subloque PDM Introducción a los Dispositivos Móviles

18

aplicaciones para ella escritas. CLR ofrece numerosos servicios a estas aplicaciones para facilitar su desarrollo y mantenimiento y favorecer su fiabilidad y seguridad.

Entre los principales servicios encontramos:

• Modelo de programación consistente y sencillo, completamente orientado a objetos. • Eliminación del problema de compatibilidad entre DLL’s. • Ejecución multiplataforma y multilenguaje. • Aislamiento de memoria entre procesos y comprobaciones automáticas de seguridad

de tipos en las conversiones. • Gestión del acceso a objetos remotos. • Seguridad avanzada. • Interoperabilidad con código preexistente. • Adecuación automática de la eficiencia de las aplicaciones a las características

concretas de cada máquina donde se vaya a ejecutar. 7.3.2.- Microsoft.NET framework

Es el modelo de programación de Microsoft .Net para desarrollar aplicaciones de tipo Web, cliente y servicios Web XML. Las herramientas que incluye esta plataforma son:

• Common Language Runtime (CLR): responsable de los servicios en tiempo de

ejecución. • Librerías de clases: proporcionan funcionalidad estándar (entradas/salidas),

manipulación de strings, gestión de la seguridad, comunicaciones en redes e hilos, etc. • Incluye el acceso a bases de datos con ADO.Net y páginas Web dinámicas y Servicios

Web con ASP.Net 7.3.3.- Biblioteca de clases: ADO.NET

Similar a ADO, proporciona acceso a datos de forma independiente al lenguaje de programación que utilicemos. Los datos se pueden ver y procesar de forma relacional (tablas) o jerárquica (XML). 7.3.4.- El lenguaje C#

C# es el nuevo lenguaje de Microsoft introducido en la plataforma .Net junto con las adaptaciones de lenguajes anteriores, por ejemplo Visual Basic. Este lenguaje tiene mucho en común con Java. Las principales ventajas de C# son:

• Sintaxis muy parecida a la de C++ (o Java) • Proporciona gestión de memoria automática, aunque permite usar punteros y gestión

manual de la memoria dentro de un bloque de código convenientemente marcado. • Se pueden escribir comentarios en XML para generar luego documentación

automática. • Permite herencia simple y definición de interfaces • Dispone de soporte nativo para COM y otros API’s de Microsoft.

Page 19: generalidadesTrabajo_PDM

SCM – Subloque PDM Introducción a los Dispositivos Móviles

19

7.3.5.- Desarrollo de formularios Existen dos tipos de formularios:

• Formularios Windows Construidos sobre la base de la plataforma .NET. Permiten construir complejas

aplicaciones Windows en un entorno de desarrollo visual de aplicaciones (RAD: Rapid Application Development)

• Formularios web Los formularios web, que se construyen con ASP.NET, constituyen la evolución

natural y lógica de ASP. Siguiendo el mismo estilo que su antecesor, ASP.NET permite utilizar controles complejos, facilita la gestión de sesiones, permite separar la interfaz de la lógica interna, elimina la distinción entre ASP e ISAPI y nos permite emplear cualquier lenguaje de programación que esté soportado por la plataforma .NET.

7.3.6.- Ventajas de desarrollar con Microsoft .NET Las principales ventajas de Microsoft.NET que podemos encontrar son:

• Es una apuesta muy fuerte del fabricante de software líder en ventas. • Es más eficiente que las anteriores plataformas de Microsoft • Aplicaciones creadas sobre .NET más fáciles de instalar. • C# es un buen lenguaje, y la migración desde Visual Basic a Visual Basic.NET, aunque

no es inmediata, es factible. • Microsoft ha desarrollado buenas herramientas 'visuales' de desarrollo (Visual C# y

Visual Studio .Net) 7.4.- Entornos de Desarrollo

Actualmente, las aplicaciones para dispositivos móviles se crean en un PC y cuando se ha comprobado que funciona y que no tiene fallos aparentes, se transmiten a los DM’s. Todas estas aplicaciones se crean en entornos de desarrollo en un PC, la mayoría de los cuales dan soporte a dispositivos móviles.

Los lenguajes de programación y los entornos de desarrollo dirigidos a dispositivos de mano son, básicamente, los utilizados para los demás computadores. No obstante, ya existen algunos lenguajes creados específicamente para el diseño de aplicaciones para dispositivos de mano. En general el programador (que bien puede ser el propio usuario final) escoge el lenguaje o el entorno de desarrollo que desea utilizar.

Como en todo, existe un compromiso entre las necesidades de cálculo, facilidad de uso y de aprendizaje, coste y calidad de los resultados que se obtienen.

Al desarrollar aplicaciones para los equipos de mano hay que tener en cuenta su

especificidad. A continuación se presentan algunas de entornos de desarrollo más conocidos: 7.4.1.- PDA TOOLBOX

Entorno de desarrollo gráfico rápido y fácil de usar sobre PC’s. Permite desarrollar aplicaciones, sin apenas codificación, para el sistema Palm OS. Contiene amplia gama de elementos de ayuda, usuales en las aplicaciones

de los PC’s de sobremesa. Facilita la programación de transferencia de datos entre Palm y PC. Las aplicaciones resultantes se pueden ejecutar directamente en el dispositivo (no necesita

Page 20: generalidadesTrabajo_PDM

SCM – Subloque PDM Introducción a los Dispositivos Móviles

20

interpretes de código intermedio). Orientado a la creación de aplicaciones de gestión de bases de datos. 7.4.2.- SATELLITE FORMS MobileApp Designer

Entorno de desarrollo rápido basado en Visual Basic que genera código ejecutable para Palm OS y para Pocket PC 2002. Permite la integración de aplicaciones de bases de datos con equipos de

sobremesa e incluye facilidades para garantizar la ejecución de las aplicaciones mediante conexión por cable e inalámbricas 7.4.3.- SCOUTBUILDER

Software dinámico que permite crear aplicaciones para Palm OS de manera rápida. Lenguaje de programación basado en BASIC. Facilita la importación de tablas de bases de datos ODBC ya

existentes. Utiliza el recurso Intellisense (como el de Visual Basic) para ayudar a completar líneas de código automáticamente y un editor WYSIWYG (What You See Is What You Get) 7.4.4.- CASL (Compact Application Solution Language)

Entorno de desarrollo visual que genera código para Palm OS o Pocket PC. Permite el intercambio de datos entre el DCM y el PC a través de los programas de conexión. El lenguaje contenido en CASL está orientado a objetos y dirigido por eventos. Permite incluir

segmentos de código escritos en C. Bajos requerimientos de memoria de las aplicaciones. 7.4.5.- EMBEDDED VISUAL TOOLS

Conjunto de herramientas que no requieren de ningún software adicional para su completo funcionamiento. Existen varios SDK (Software Developement Kit) y cada uno de ellos corresponde a un tipo diferente de dispositivo de mano. Estos kits contienen compiladores y emuladores que puede ejecutarse en cualquier PC. Ofrece la posibilidad de utilizar componentes del tipo ActiveX. Embedded Visual C++ es el miembro más potente de esta familia de lenguajes y el código que genera es directamente

ejecutable por los procesadores de los dispositivos de mano. 7.4.6.- MOBILE VISUAL BASIC Mobile VB, de Appforge

Parche que se añade a Visual Basic de sobremesa que no es aplicación autónoma. Tiene la ventaja de poder programar directamente en ese entorno. Utiliza sus propios componentes denominados Ingots, que son instalados y ejecutados en el

dispositivo de mano a través un interprete (Booster) que es necesario instalar. 7.4.7.- HS PASCAL

Apoya la plataforma Computing de Palm Source. El compilador produce rápidamente pequeños y optimizados programas ejecutables directamente sobre Palm OS. Dispone de entornos de desarrollo para el compilador HS Pascal, como por ejemplo Pythia, que se ejecuta en un PC anfitrión bajo Windows, o Poivre, capaz de leer y escribir ficheros directamente ejecutables (de extensión .prc)

Page 21: generalidadesTrabajo_PDM

SCM – Subloque PDM Introducción a los Dispositivos Móviles

21

8.- Estándares 8.1.- Estándar WWW El estándar WWW (World Wide Web) es una forma de acceso e intercambio de información (artículos técnicos, noticias, información personal,etc).

La arquitectura WWW presenta un modelo muy flexible y potente de programación. Todo su contenido se estructura en formatos de datos estándar que se presentan en los llamados 'wed browsers' o navegadores.

El estándar WWW especifica algunos de los mecanismos necesarios para construir aplicaciones de propósito general incluyendo URL-(Uniform Resource Locator). A todos los servicios del WWW se accede mediante este estándar.

Todos los 'navegadores' de internet soportan varios tipos formatos estándar, como por ejemplo HTML .

Los protocolos de red permiten a cualquier navegador comunicarse con cualquier

servidor. El más usado es Hiper Text Transpot Protocol (HTTP). Este estándar permite a los usuarios un fácil acceso a algunos de los recursos que ofrece internet dando lugar al desarrollo de aplicaciones sencillas dejándolas a disposición de cualquiera que esté conectado a la red. Las aplicaciones típicas del estándar WWW son:

• Comunicación: e-mail,chat,… • Compras desde casa • Gestionar cuentas bancarias • Videoconferencias

8.2.- Estándar HTTP El HTTP (Hypertext Transfer Protocol) es el grupo de reglas para intercambiar archivos (texo, imágenes, sonido, vídeo y otros archivos multimedia) en la Web. Cualquier máquina de servidor Web contiene un daemon de HTTP, un programa que es designado para esperar solicitudes HTTP y encargarse de ellas cuando lleguen. El navegador Web es un cliente de HTTP que envía solicitudes a las máquinas de servidor. Cuando el usuario ingresa las solicitudes para los archivos (ya sea escribiendo un URL o haciendo click en un hipervínculo) el navegador construye una solicitud de HTTP y la envía a la dirección IP indicada por el URL. El daemon de HTTP en la máquina del servidor destino recibe la solicitud y, después de cualquier proceso necesario, el archivo solicitado es devuelto. Aspectos a destacar de este estándar:

• HTTP es un protocolo de alto nivel. • Estándares importantes: HTTP 1.0, 1.1, 4.0

Page 22: generalidadesTrabajo_PDM

SCM – Subloque PDM Introducción a los Dispositivos Móviles

22

8.3.- Estándar HTML HTML (Hypertext Markup Language) es un lenguaje de marcado utilizado para representar páginas Web y ser visualizadas. Es capaz de interpretar comandos adicionales que hacen que las páginas sean visualmente más atractivas, y posiblemente mejores, ya que transmiten mejor la información. El lenguaje tiene todas las herramientas ("elementos") para definir el formato de las páginas y permite incluir imágenes así como enlaces a otros documentos. Estos documentos pueden ser de texto, imágenes, sonidos o animaciones. Además pueden estar físicamente en máquinas muy lejanas a la del documento que lo solicita. Las principales características del estándar HTML son:

• El lenguaje HTML puede contener enlaces a imágenes, documentos, otras páginas web, etc.

• Deriva del Standard Generalizad Markup Language (SGML). • No es extensible. • Existen los estándares HTML 3.2, 4.01, XHTML 1.0. • Los elementos distinguen entre mayúsculas y minúsculas en el caso de formateo de

caracteres especiales.

8.4.- Estándar XML XML (eXtensible Markup Language) es un lenguaje orientado a identificar estructuras de datos en un documento. La especificación XML define la manera estándar de cómo hay que realizar el marcado de expresiones en un documento no estructurado , para que, con dicho marcado se defina una determinada estructura de datos. La especificación XML no define el contenido de las estructuras de datos, son los expertos de cada dominio y las entidades reguladoras, los agentes que pueden utilizar el estándar XML para elaborar un lenguaje común que permita transformar los documentos no ordenados en estructuras que se puedan procesar por un sistema. XML se utiliza para transformar datos en información, añadiéndoles un significado concreto y asociándolos a un contexto. La ventaja de XML es que es un estándar con independencia del tipo de implementación seleccionado. Esto significa que podemos usar herramientas de distintos proveedores para estructurar datos con la especificación XML, almacenarlos en una base de datos, realizar búsquedas o ejecutar cualquier proceso.

En conclusión, nuestros datos serán accesibles y podrán ser procesados por todas las herramientas que siguen el estándar XML con independencia de su plataforma y su fabricante.

Las principales características del estándar XML son:

• XML suministra los medios para etiquetar (marcar) piezas de datos (elementos). • Las etiquetas pueden estar anidadas, es decir, los elementos definidos pueden estar

contenidos dentro de otros elementos. • En XML se pueden utilizar diferentes nombres para definir las etiquetas porque con

XML no existe ninguna limitación en cuanto al número ni a la diversidad de etiquetas posibles.

• Cada usuario o cada diseñador de documentos, construye estructuras de datos asignando aquellas etiquetas que mejor describen sus datos.

Page 23: generalidadesTrabajo_PDM

SCM – Subloque PDM Introducción a los Dispositivos Móviles

23

8.5.- Estándares WAP WML

WAP es un protocolo basado en los estándares de Internet que ha sido desarrollado para permitir a teléfonos celulares navegar a través de Internet.

Con la tecnología WAP se pretende que desde cualquier teléfono celular WAP se pueda acceder a la información que hay en Internet así como realizar operaciones de comercio electrónico.

WAP es una serie de tecnologías que consisten en: WML, que es el lenguaje de etiquetas, WMLScript es un lenguaje de script, lo que vendría a ser JavaScript y el Wireless Telephony Application Interface (WTAI) Las características principales de WML son:

• Soporte para imágenes y texto, con posibilidad de texto con formato. • Tarjetas agrupadas en barajas. Una pagina WML es como una página HTML en la que

hay una serie de cartas, al conjunto de estas cartas se les suele llamar baraja. • Posibilidad de navegar entre cartas y barajas de la misma forma que se navega entre

paginas Web. • Manejo de variables y formularios para el intercambio de información entre el teléfono

celular y el servidor.

WML es un lenguaje de marcas similar al HTML. WML es compatible con XML 1.0. Las páginas WML son llamadas barajas ya que están compuestas por cartas. Un navegador WAP, solo puede mostrar un carta al mismo tiempo.

8.6.-Estándar JavaScript

Se trata de un lenguaje de tipo script compacto, basado en objetos y guiado por eventos diseñado específicamente para el desarrollo de aplicaciones cliente-servidor dentro del ámbito de Internet.

Los programas JavaScript van incrustados en los documentos HMTL, y se encargan de

realizar acciones en el cliente, como pueden ser pedir datos, confirmaciones, mostrar mensajes, crear animaciones, comprobar campos...

El programa que va a interpretar los programas JavaScript es el propio navegador, lo

que significa que si el nuestro no soporta JavaScript, no podremos ejecutar las funciones que programemos.

Las diferentes versiones de JavaScript han sido finalmente integradas en un estándar

denominado ECMAScript-262. Dicho estándar ha sido realizado por la organización ECMA dedicada a la estandarización de información y sistemas de comunicación. Las versiones actuales de los navegadores soportan este estándar.

Page 24: generalidadesTrabajo_PDM

SCM – Subloque PDM Introducción a los Dispositivos Móviles

24

9.- Referencias

• esp.pv.com/prodtech/products.htm • http://www.sceu.frba.utn.edu.ar/e-learning/mlearning.htm • http://www.satec.es/3649#3649 • http://www.intel.com/es/products/mobiletechnology/index.htm • www.todosymbian.com • www.symbian.com • www.upc.es/FIB • www.webestilo.com • www.w3schools • www.nokia.com • http://www.fortunecity.com/skyscraper/fatbit/607/wince/wince.html • http://www.microsoft.com/latam/windowsce/default.asp • http://www.pocketr.com/windowsCE.asp • http://www.vnunet.es/Actualidad/Noticias/Inform%C3%A1tica_personal/Windows/20030

114011 • http://www.aecomo.org/content.asp?ContentTypeID=2&ContentID=619 • http://www.palmsource.com • http://www.pcwla.com/pcwla2.nsf/AllList/5CB03264A352451E80256C6A00554090 • http://es.sun.com/infospain/noticias/2003/030917_3.html • http://www.seis.es/i_s/is40/programacion.htm • http://www.linuxdevices.com • http://www.embedded-linux.org • http://jano.unicauca.edu.co/aplimovil • http://www.aecomo.org/cat.asp • http://www.lpsz.org/articulos/introduccion_j2me.html • http://www.cetenasa.es/e-business/Talleres/taller2/c416.htm • http://www.desarrolloweb.com/articulos/592.php • http://www.e-zest.net/images/j2me.gif

• Transparencias de clase PDM1.pdf • Tutorial de Fernando Bernal Galiano sobre .NET Framework • Una web interesante relacionada con Linux y su mundo es: http://www.tuxmobil.org, en

la que además de información y noticias, existe un libro on-line que podrás consultar.