17
SUBSECRETARIA DE EDUCACION SUPERIOR DIRECCION GENERAL DE EDUCACION SUPERIOR TECNOLOGICA INSTITUTO TECNOLOGICO DE TAPACHULA Nombre Del Alumno: Martínez Ramos Sheyla Berenice Nombre De La Carrera: Ingeniería En Sistemas Computacionales Nombre Del Profesor: Nicolás Cabrera Hidalgo Nombre De La Materia: Tópicos Avanzados de Programación II

Sitemas Operativos de Dispositivos Moviles

Embed Size (px)

DESCRIPTION

Trabajo que explica lo que son los sistemas operativos en los dispositivos moviles, asi como algunos de ellos con sus caracteristicas.

Citation preview

Page 1: Sitemas Operativos de Dispositivos Moviles

SUBSECRETARIA DE EDUCACION SUPERIORDIRECCION GENERAL DE EDUCACION SUPERIOR TECNOLOGICA

INSTITUTO TECNOLOGICO DE TAPACHULA

Nombre Del Alumno:

Martínez Ramos Sheyla Berenice

Nombre De La Carrera:

Ingeniería En Sistemas Computacionales

Nombre Del Profesor:

Nicolás Cabrera Hidalgo

Nombre De La Materia:

Tópicos Avanzados de Programación II

Page 2: Sitemas Operativos de Dispositivos Moviles

INTRODUCCIONHace relativamente poco tiempo, las empresas que desarrollan aplicaciones móviles, buscaban realizar un solo desarrollo multiplataforma, y que valiera para el mayor número de dispositivos posible. El costo de desarrollar estas aplicaciones es alto ya que se necesita realizar adaptaciones para sacar el mayor rendimiento de cada dispositivo; ahora lo que se efectúa es el desarrollo de aplicaciones nativas para cada plataforma.

El interés por crear aplicaciones para Dispositivos Móviles ha aumentado en la misma medida que estos han demostrado su funcionalidad.

Cuando se considera elaborar aplicaciones móviles, la principal dificultad es la elección de una plataforma de desarrollo, entendida como una combinación de metodología de análisis y diseño de sistemas, lenguaje de programación, sistema operativo, entre otros.

El mundo de la tecnología es cambiante. El pasado se hace un año, y el futuro es dentro de un minuto. Esto se acentúa en la tecnología móvil, donde los cambios son constantes. Una empresa dedicada al desarrollo de software para móvil, no puede permitirse el desconocer las plataformas más importantes que envuelven el mercado.

En el primer capítulo se menciona ¿Qué son los dispositivos móviles? Así como su historia y los tipos que existen esto es debido a que si hablamos de software para móviles debemos tener en cuenta que no existe desarrollo si no tenemos donde aplicarlo. Los dispositivos móviles han contribuido para que la sociedad se mantenga comunicada, no solo por llamadas y SMS, sino también mediante el acceso a internet que nos permite estar en línea por medios como el chat o mensajeros, correos electrónicos, video-llamadas y las famosas redes sociales (twitter, Facebook, MySpace, entre otros).

Otro aspecto positivos es el acceso móvil a la información ya que ha aumentado su importancia en el entorno de trabajo gracias a la capacidad de acceder y gestionar documentos, y no podemos dejar atrás la comodidad que nos proporcionan debido a que podemos navegar por la red cuando queramos no importando en el espacio que nos encontremos.

Cabe mencionar que los dispositivos móviles tienen utilidades varias, la principal es la comunicación; sin embargo el crecimiento tecnológico y las necesidades banales de las personas han incrementado el uso de estos aparatos no solo para realizar llamadas o mensajes sino también para su diversión, entretenimiento y organización con juegos interactivos, música, calendarios, agendas, relojes, calculadoras todos ellos llamados como widgets que no son más que mini aplicaciones o programas que son diseñados para proveer información y mejorar la apariencia de los dispositivos.

SISTEMAS OPERATIVOS PARA MÓVILUn sistema operativo móvil o SO móvil es un sistema operativo que controla un dispositivo móvil al igual que los PCs utilizan Windows o Linux entre otros. Sin embargo, los sistemas operativos móviles son mucho más simples y están más orientados a la conectividad inalámbrica, los formatos multimedia para móviles y las diferentes maneras de introducir información en ellos.

Page 3: Sitemas Operativos de Dispositivos Moviles

Algunos de los sistemas operativos utilizados en los dispositivos móviles están basado en el modelo de capas.

CAPAS

KERNEL

El núcleo o kernel proporciona el acceso a los distintos elementos del hardware del dispositivo. Ofrece distintos servicios a las superiores como son los controladores o drivers para el hardware, la gestión de procesos, el sistema de los archivos y el acceso y gestión de la memoria.

MIDDLEWARE

El middleware es el conjunto de módulos que hacen posible la propia existencia de aplicaciones para móviles. Es totalmente transparente para el usuario y ofrece servicios claves como el motor de mensajería y comunicaciones, códecs multimedia, intérpretes de páginas web, gestión del dispositivo y seguridad.

ENTORNO DE EJECUCIÓN DE APLICACIONES

El entorno de ejecución de aplicaciones consiste en un gestor de aplicaciones y un conjunto de interfaces programables abiertas y programables por parte de los desarrolladores para facilitar la creación de software.

INTERFAZ DE USUARIO

Las interfaces de usuario facilitan la interacción con el usuario y el diseño de la presentación visual de la aplicación. Los servicios que incluye son el de componentes gráficos (botones, pantallas, listas, etc.) y el del marco de interacción.

Aparte de estas capas también existe una familia de aplicaciones nativas del teléfono que suelen incluir los menús, el marcador de números de teléfono etc...

MERCADO

A medida que los teléfonos móviles crecen en popularidad, los sistemas operativos con los que funcionan adquieren mayor importancia. La cuota de mercado de sistemas operativos móviles en el segundo trimestre de 2013 era el siguiente:

Android 80% (En países como España las diferencias son más significativas, donde Android tiene el 90,8% de la cuota de mercado).

iOS 13,2% Windows Phone 3% BlackBerry OS 2,9% Linux u otros 0,8% Symbian OS 0,2% Firefox OS Disponible Ubuntu Touch que está en desarrollo

Page 4: Sitemas Operativos de Dispositivos Moviles

Android tiene la mayor cuota, desde enero 2011, con más de la mitad del mercado, experimentó un creciente aumento y en solo dos años (2009 a comienzos de 2011) ha pasado a ser el SO móvil más utilizado.

Figura 5.- Sistemas operativos para dispositivos móviles

En la figura 5 podemos observar la gráfica comparativa de los SO. Podemos observar, a diferencia de los SO para PC, Windows es un sistema muy minoritario, con un 0.55% del mercado, siendo el claro dominador Apple, con su iOS, 54,27%. En segundo lugar tenemos a Android 35,41% y después, muy de lejos, Java ME y Symbian con un 3,18% y BlackBerry y Kindle con un 1,56% y 0.95% respectivamente. La figura 6 nos muestra la gráfica de la figura 5, pero por versiones.

Page 5: Sitemas Operativos de Dispositivos Moviles

Figura 6.- Sistemas operativos más usados en dispositivos móviles (Versiones)

En este caso, podemos ver que el iPad de Apple es el claro dominador del mercado, con un 31%. El iPhone se lleva el 22,36%, y podría parecer que está en segundo lugar. Sin embargo, en segundo lugar esta Android, Donde podemos observar el grave problema de fragmentación que tiene, algo que perjudica tanto a usuarios como a desarrolladores y compañías. La siguiente tabla nos muestra las diferentes versiones con su nombre en clave y su porcentaje de distribución (Fuente: Xakata Android).

Tabla 1.- Diferentes SO Android en el mercado. Fuente: Xakata Android

Page 6: Sitemas Operativos de Dispositivos Moviles

SISTEMAS OPERATIVOS MÓVILES

ANDROID

El sistema operativo Android es sin duda el líder del mercado móvil en sistemas operativos, está basado en Linux, diseñado originalmente para cámaras fotográficas profesionales, luego fue vendido a Google y modificado para ser utilizado en dispositivos móviles como los teléfonos inteligentes y luego en tablets como es el caso del Galaxy Tab de Samsung , actualmente se encuentra en desarrollo para usarse en notebooks y PCs, el desarrollador de este S.O. es Google, fue anunciado en el 2007 y liberado en el 2008; además de la creación de la Open Handset Alliance, compuesto por 78 compañías de hardware, software y telecomunicaciones dedicadas al desarrollo de estándares abiertos para celulares, esto le ha ayudado mucho a Google a masificar el S.O, hasta el punto de ser usado por empresas como HTC, LG, Samsung, Motorola entre otros.

Android Inc., es la empresa que creó el sistema operativo móvil, se fundó en 2003 y fue comprada por Google en el 2005 y 2007 fue lanzado al mercado. Su nombre se debe a su inventor, Andy Rubín. Originalmente era un sistema pensado para las cámaras digitales.

Android está basado en Linux, disponiendo de un Kernel en este sistema y utilizando una máquina virtual sobre este Kernel que es la responsable de convertir el código escrito en Java de las aplicaciones a código capaz de comprender el Kernel.

Las aplicaciones para Android se escriben y desarrollan en Java aunque con unas APIS propias por lo que las aplicaciones escritas en Java para PC y demás plataformas ya existentes no son compatibles con este sistema.

Una de las grandes cualidades o características de este sistema operativo es su carácter abierto. Android se distribuye bajo dos tipos de licencias, una que abarca todo el código del Kernel y que es GNU GPLv2 ( implica que su código se debe poner al alcance de todos y que todos podremos hacer con este código lo que nos parezca oportuno, modificarlo, ampliarlo, recortarlo, pero siempre estaremos en la obligación de volver a licenciarlo con las misma licencia) Google también por supuesto tiene otra licencia para el resto de componentes del sistema que se licencia bajo APACHE v2 (implica que este código se pueda distribuir para ser modificado y usado a antojo del que lo utilice, pero a diferencia del primer caso, las modificaciones y el código resultante no es obligatorio el licenciarlo bajo las mismas condiciones en las que se encontraba).

ARQUITECTURA

Su diseño cuenta, entre otras, con las siguientes características:

Busca el desarrollo rápido de aplicaciones, que sean reutilizables y verdaderamente portables entre diferentes dispositivos.

Los componentes básicos de las aplicaciones se pueden sustituir fácilmente por otros. Cuenta con su propia máquina virtual, Dalvik, que interpreta y ejecuta código escrito

en Java. Permite la representación de gráficos 2D y 3D. Posibilita el uso de bases de datos. Soporta un elevado número de formatos multimedia.

Page 7: Sitemas Operativos de Dispositivos Moviles

Servicio de localización GSM. Controla los diferentes elementos hardware: Bluetooth, Wi-Fi, cámara fotográfica o

de vídeo, GPS, acelerómetro, infrarrojos, etc., siempre y cuando el dispositivo móvil lo contemple.

Cuenta con un entorno de desarrollo muy cuidado mediante un SDK disponible de forma gratuita.

Ofrece un plug-in para uno de los entornos de desarrollo más populares, Eclipse, y un emulador integrado para ejecutar las aplicaciones.

La capa más inmediata es la corresponde al núcleo de Android. Android utiliza el núcleo de Linux 2.6 como una capa de abstracción para el hardware disponible en los dispositivos móviles. Esta capa contiene los drivers necesarios para que cualquier componente hardware pueda ser utilizado mediante las llamadas correspondientes.

Siempre que un fabricante incluya un nuevo elemento de hardware, lo primero que se debe realizar para que pueda ser utilizado desde Android es crear las librerías de control o drivers necesarios dentro de este kernel de Linux embebido en el propio Android.

La elección de Linux 2.6 se ha debido principalmente a dos razones: la primera, su naturaleza de código abierto y libre se ajusta al tipo de distribución que se buscaba para Android (cualquier otra opción comercial disponible hoy día hubiera comprometido la licencia de Apache); la segunda es que este kernel de Linux incluye de por sí numerosos drivers, además de contemplar la gestión de memoria, gestión de procesos, módulos de seguridad, comunicación en red y otras muchas responsabilidades propias de un sistemas operativo.

La siguiente capa se corresponde con las librerías utilizadas por Android. Éstas han sido escritas utilizando C/C++ y proporcionan a Android la mayor parte de sus capacidades más características. Junto al núcleo basado en Linux, estas librerías constituyen el corazón de Android.

Al mismo nivel que las librerías de Android se sitúa el entorno de ejecución. Éste lo constituyen las CoreLibraries, que son librerías con multitud de clases de Java, y la máquina virtual Dalvik.

Los dos últimos niveles de la arquitectura de Android están escritos enteramente en Java. El framework de aplicaciones representa fundamentalmente el conjunto de herramientas de desarrollo de cualquier aplicación. Toda aplicación que se desarrolle para Android, ya sean las propias del dispositivo, las desarrolladas por Google o terceras compañías, o incluso las que el propio usuario cree, utilizan el mismo conjunto de API y el mismo framework, representado por este nivel.

El último nivel del diseño arquitectónico de Android son las aplicaciones. Éste nivel incluye tanto las incluidas por defecto de Android como aquellas que el usuario vaya añadiendo posteriormente, ya sean de terceras empresas o de su propio desarrollo. Todas estas aplicaciones utilizan los servicios, las API y librerías de los niveles anteriores

Page 8: Sitemas Operativos de Dispositivos Moviles

IOS

IOS es el sistema operativo que da vida a dispositivos como el iPhone, el iPad, el iPod Touch o el Apple TV. Su simplicidad y optimización son sus pilares para que millones de usuarios se decanten por iOS en lugar de escoger otras plataformas que necesitan más hardware para mover con fluidez el sistema. Cada año, Apple lanza una gran actualización de iOS que suele trae características exclusivas para los dispositivos más punteros que estén a la venta en ese momento.

Anteriormente denominado iPhone OS creado por Apple originalmente para el iPhone, siendo después usado en el iPod Touch e iPad. Es un derivado de Mac OS X, se lanzó en el año 2007, aumento el interés con el iPod Touch e iPad que son dispositivos con las capacidades multimedia del iPhone pero sin la capacidad de hacer llamadas telefónicas, en si su principal revolución es una combinación casi perfecta entre hardware y software, el manejo de la pantalla multi-táctil que no podía ser superada por la competencia hasta el lanzamiento del celular Galaxy S I y II por parte de Samsung.

WINDOWS PHONE

Anteriormente llamado Windows Mobile es un S.O. móvil compacto desarrollado por Microsoft, se basa en el núcleo del sistema operativo Windows CE y cuenta con un conjunto de aplicaciones básicas, actualmente va por la versión 8. Está diseñado para ser similar a las versiones de escritorio de Windows estéticamente y existe una gran oferta de software de terceros disponible para Windows Mobile, la cual se puede adquirir a través de la tienda en línea Windows Marketplace for MobileS

BLACKBERRY O.S

Desarrollado por la empresa canadiense RIM (Research In Motion) para sus dispositivos. El sistema permite multitarea y tiene soporte para diferentes métodos exclusivos de RIM particularmente me refiero a sus trackwheel, TrackBall, TouchPad y pantallas táctiles.

El SO BlackBerry está claramente orientado a su uso profesional como gestor de correo electrónico y agenda. Desde la cuarta versión se puede sincronizar el dispositivo con el correo electrónico, el calendario, tareas, notas y contactos de Microsoft Exchange Server además es compatible también con Lotus Notes y Novell GroupWise. BlackBerry Enterprise Server (BES) proporciona el acceso y organización del email a grandes compañías identificando a cada usuario con un único BlackBerry PIN. Los usuarios más pequeños cuentan con el software BlackBerry Internet Service, programa más sencillo que proporciona acceso a Internet y a correo POP3 / IMAP / Outlook Web Access sin tener que usar BES. Al igual que en el SO Symbian desarrolladores independientes también pueden crear programas para BlackBerry pero en el caso de querer tener acceso a ciertas funcionalidades restringidas necesitan ser firmados digitalmente para poder ser asociados a una cuenta de desarrollador de RIM.

Page 9: Sitemas Operativos de Dispositivos Moviles

BLACKBERRY 6

BlackBerry es un sistema desarrollado por Research In Motion el cual fue presentado en el WES 2010 junto con un video promocional donde se muestra algunas novedades. RIM apuesta que su BlackBerry 6 estará enfocado en el mercado corporativo y no-corporativo. La mejor experiencia de este sistema se encontrara en los equipos touchscreen (Pantalla Táctil), aunque RIM aseguro que en los equipos que cuenten con un TouchPad o TrackPad podrán ejecutarlo ya que ejerce casi la misma función. Así mismo todavía RIM no ha aclarado cúales son los equipos que se podrán actualizar a esta versión aunque hay muchos rumores al respecto. RIM en el desarrollo de este OS se enfocó en la parte multimedia hacia el usuario, sin dejar a un lado la parte profesional, también se muestra la integración de las redes sociales y la mensajería instantánea en este. Sin duda RIM quiere dar al usuario una nueva experiencia en su equipo BlackBerry que nadie conocía.

BLACKBERRY 7.1

BlackBerry 7.1 es la última versión estable hasta el momento, esta nueva versión es muy parecida a la versión 7.0 aunque con algunas nuevas funciones que harán más fácil el manejo del Smartphone.

SYMBIAN

Fue producto de la alianza de varias empresas de telefonía móvil, entre las que se encuentran Nokia como la más importante, Sony Ericsson, Samsung, Siemens, BenQ, Fujitsu, Lenovo, LG, Motorola, esta alianza le permitió en un momento dado ser unos de los pioneros y más usados.

El objetivo de Symbian fue crear un sistema operativo para terminales móviles que pudiera competir con el de Palm o el Smartphone de Microsoft. Técnicamente, el sistema operativo Symbian es una colección compacta de código ejecutable y varios archivos, la mayoría de ellos son bibliotecas vinculadas dinámicamente (DLL por sus siglas en inglés) y otros datos requeridos, incluyendo archivos de configuración, de imágenes y de tipografía, entre otros recursos residentes. Symbian se almacena, generalmente, en un circuito flash dentro del dispositivo móvil. Gracias a este tipo de tecnología, se puede conservar información aun si el sistema no posee carga eléctrica en la batería, además de que le es factible reprogramarse, sin necesidad de separarla de los demás circuitos. Las aplicaciones compatibles con Symbian se desarrollan a partir de lenguajes de programación orientados a objetos como C++, Java (con sus variantes como PJava, J2ME, etc.), Visual Basic para dispositivos móviles, entre otros, incluyendo algunos lenguajes disponibles en versión libre.

CARACTERÍSTICAS PRINCIPALES

Uso eficiente de todos los recursos de la máquina, especialmente batería, RAM y ROM. Acceso inmediato a los datos. Manejo fiable de los datos incluso en caso de fallo en la comunicación o falta de

recursos, como memoria, disco o batería. Adaptabilidad al hardware específico y a las pilas de telefonía de los fabricantes. Consistencia en la comunicación entre los datos

Page 10: Sitemas Operativos de Dispositivos Moviles

FIREFOX O.S

Firefox OS es un sistema operativo móvil, basado en HTML5 con núcleo Linux, de código abierto, para smartphones y tabletas. Es desarrollado por Mozilla Corporation bajo el apoyo de otras empresas como Telefónica y una gran comunidad de voluntarios de todo el mundo. Este sistema operativo está enfocado especialmente en los dispositivos móviles incluidos los de gama baja. Está diseñado para permitir a las aplicaciones HTML5 comunicarse directamente con el hardware del dispositivo usando JavaScript y Open Web APIs. Ha sido mostrado en smartphones y Raspberry Pi, compatibles con Android.

En febrero de 2013 Mozilla anunció planes para el lanzamiento mundial de Firefox OS. Mozilla ha comunicado en rueda de prensa antes del inicio del Mobile World Congress en Barcelona, que la primera ola de dispositivos con Firefox OS estará disponible Brasil,Colombia, Hungría, México, Montenegro, Polonia, Serbia, España y Venezuela. Firefox también ha anunciado que LG Electronics, ZTE, Huawei y TCL Corporation se han comprometido a la fabricación de dispositivos con Firefox OS.

UBUNTU TOUCH

Ubuntu Touch es un sistema operativo móvil basado en Linux. Es desarrollado por Canonical Ltd... Presentado el 2 de enero de 2013 al público mediante un anuncio en la web de Ubuntu, culmina el proceso de Canonical de desarrollar una interfaz que pueda utilizarse en ordenadores de sobremesa, portátiles, notebooks, tablets y teléfonos inteligentes.

Ubuntu Touch se caracteriza por ser un sistema diseñado para plataformas móviles. Algunas de sus características más destacadas son:

Pantalla de inicio sin sistema de bloqueo/desbloqueo (que funciona con un nuevo sistema de gestos, y que se aprovecha para mostrar notificaciones).

Aplicaciones en segundo plano. Integración con Ubuntu One.

TENDENCIA DE LOS SISTEMAS OPERATIVOS PARA MÓVIL

Page 11: Sitemas Operativos de Dispositivos Moviles

Figura 7.- Tendencia de los sistemas operativos para dispositivos móviles

Como podemos observar en la gráfica de la Figura 7, iOS se mantiene firme y constante en su 54% de mercado, demostrando que sus usuarios son fieles a la marca. Sin embargo, podemos observar también como Java ME se ha desplomado desde el 12% a un 3,9%, porcentaje que se ha llevado Android que pasa de un 25% a un 35% en un año.

Figura 8.-Tendencia de los sistemas operativos para dispositivos móviles con menor impacto

En cuanto a los SO más discretos, BlackBerry y Symbian se mantienen estables en su 1,5% y 3,1% respectivamente, a pesar de sus altibajos anuales.

ARQUITECTURA DE UN SMARTPHONE

Bianco (2005) menciona tres componentes principales:

La unidad central de proceso (CPU, es la encargada de llevar a cabo las operaciones aritméticas y lógicas, es decir, el procesamiento de la información.), una unidad de memoria de almacenamiento permanente (contiene el sistema operativo con todos los elementos necesarios para su funcionamiento: archivos de inicio del sistema, drivers y aplicaciones que

Page 12: Sitemas Operativos de Dispositivos Moviles

vienen desde fábrica.) y una unidad de memoria RAM (s exclusivamente para la ejecución del sistema operativo y aplicaciones). Véase la figura 1.1.

CONECTIVIDAD

La conectividad hoy en día es muy importante ya que para sacar el máximo partido a todas las funcionalidades que ofrecen cada uno de los dispositivos móviles es indispensable contar con acceso a Internet. En este sentido, se valora enormemente el hecho de que cuenten con acceso WiFi, así como conectividad 3G que permitan conectarse a internet desde cualquier lugar.

Estas son algunas opciones de conectividad:

TCP/IP Con cable

Cable al PC: Alta velocidad, conectividad son costo, (USB). Modem: Velocidad 56 kbit/s, costo por plan.

TCP/IP sin cables

Wi-fi: Velocidad 54 Mbits/s, Costo aplica por el acceso a la Wi-fi Wman: Velocidad 2 Mbits/s, Costo plan WiMax. Red celular: Velocidad 28 Kbits/s

Otros

Page 13: Sitemas Operativos de Dispositivos Moviles

Cable Serial/USB Bluetooth Infrarrojo

CONCLUSIONES

En la actualidad, el desarrollo de aplicaciones móviles se ha convertido en un gran negocio. Debido a la utilización masiva de teléfonos móviles y teléfonos inteligentes, muchas empresas han percibido el valor de este negocio en el proceso de desarrollo de aplicaciones móviles. Estas aplicaciones pueden ser preinstaladas en los dispositivos móviles o se pueden descargar por el usuario final de plataformas de distribución móviles diferentes.

Se debe tener en cuenta que el desarrollo de software para dispositivos móviles requiere de algunas técnicas de especial consideración debido a las restricciones de hardware y software que poseen los dispositivos actuales. Entre esas técnicas destaco aquellas ligadas al uso eficiente de los recursos de memoria de ejecución, de almacenamiento, uso del espacio de visualización y métodos de entrada de datos.

En la realización de esta monografía conocimos más sobre el ámbito de Tecnológico de los famosos hoy en día dispositivos móviles. También descubrimos los diversos sistemas operativos, sus arquitecturas y sus sistemas gestores de bases de datos. Ahora es cuando se entiende que el software para diseñar dichas aplicaciones móviles es muy variado tenemos opciones que nos permiten la creación de cada una de ellas con características personalizables y adaptadas a nuestras necesidades para esto solo se necesita conocer con que herramientas trabajaremos, cual es la que mejor se adapta, la de mayor practicidad, más utilizada y de menor complejidad.

El desarrollo de una aplicación móvil no es una tarea sencilla. Los diseñadores de aplicaciones móviles y desarrolladores que enfrentan muchos obstáculos y desafíos para desarrollar aplicaciones de usuario orientada a que son compatibles con cualquier dispositivo de teléfono inteligente