Está en la página 1de 6

|Android Sistema Operativo para Smartphone

Jose Luis Vidal Maestra con mencin en Telemtica - UNI 2010 jvidalsm@yahoo.es

Abstract
With the advance of technology and fashion for smart phones, comes this new project promises to be the feeling for long. A new operating system in addition to being created just for smart phones and have a good support with their SDK is free for all developers who wish to undertake this new adventure. An operating system that has the robustness of Linux, the Java language practice, the total handling using C++ language, the platform SDK and many other things.

Resumen
Con el avance de la tecnologa y la moda de los celulares inteligentes, surge este nuevo proyecto que promete ser la sensacin por mucho tiempo. Un nuevo sistema operativo que adems de ser creado pensando en los celulares inteligentes y de tener un buen soporte con su SDK, es libre para todos aquellos desarrolladores que quieran emprender esta nueva aventura. Un sistema operativo que cuenta con la robustez de Linux, el lenguaje practico de Java, el manejo total usando lenguaje C++, su SDK multiplataforma y muchas otras cosas ms. Palabras clave: plataforma, API, OpenGL, runtime, kernel, SDK.

1. Que es Android?
Android es un software desarrollado por la compaa Google [1] inicialmente para ser usado en telfonos celulares inteligentes (Smartphone). Su primera aparicin lo hizo con la versin Android 1.1 junto con el Smartphone T-Mobile G1 [2] (ver figura 1). Desde ese momento el S.O Android ya contaba con Gmail, GCalc, Google Maps, YouTube, etc. Actualmente se encuentra disponible el T-Mobile G2.

Figura 1. El T-Mobile G-1, primera aparicin del Android 1.1 para el uso de un Smartphone.

Existe una herramienta SDK para el desarrollo de Android en multiplataforma. Y no existe problema alguno con la licencia, pues (por si fuera poco) este nuevo sistema operativo es de cdigo abierto.

2. Su arquitectura.
Android se ha dividido en 5 capas para lograr la mejor performance (ver figura 2).

Figura 2. Los componentes con los que cuenta el sistema operativo Android.

En esta divisin se encuentran las capas de Aplicaciones de Usuario, Aplicaciones del Sistema, Libreras, el Android Runtime 1 y el Kernel de Linux.

2.1 Linux Kernel.


El sistema operativo Android se basa en el Kernel de Linux versin 2.6, aprovechando sus mejores cualidades tales como: Seguridad. Manejo de memoria. Manejo de procesos. Diversidad de drivers2.

El Kernel acta como una capa abstracta entre el hardware (ver figura 3) y el resto del software.

Figura 3. El Linux Kernel contiene los drivers tales como video, cmara, audio, wifi, teclado, etc.

2.2 Libraries.
Incluye un conjunto de libreras (ver figura 4) usadas en lenguaje de programacin C++. Las libreras ms utilizadas son: 2.2.1 System C library Est derivada de la implementacin estndar en librera C (lib). 2.2.2 Media Libreries Basada en los paquetes de OpenCORE. Dan soporte a extensiones tales como MPG4, H.264, MP3, AAC, AMR, JPG y PNG. 2.2.3 Surface Manager Acceso a la pantalla para mostrar imgenes en 2D y 3D desde mltiples aplicaciones.

Se denomina tiempo de ejecucin (runtime en ingles) al intervalo de tiempo en el que un programa de computadora se ejecuta en un sistema operativo [3]. 2 Un controlador (driver en ingls) es un programa de computadora que permite al sistema operativo interactuar con un perifrico, haciendo una abstraccin del hardware [4].

2.2.4 LibWebCore Moderno motor para la navegacin web. Tanto para el navegador Android como para los embebidos. 2.2.5 SGL: Motor para trabajar grficos en 2D. 2.2.6 3D libreries Implementacin basada en el API OpenGL ES 1.0. 2.2.7 FreeType Mapa de bits y uso de vectores. 2.2.8 SQLite Potente motor de base de datos.

Figura 4. Estas libreras son expuestas a los desarrolladores a travs de las aplicaciones framework.

2.3 Android Runtime


Incluye un conjunto de libreras que proporcionan la mayor funcionalidad permitida en las libreras del lenguaje de programacin Java (ver figura 5). Incluye adems, una maquina virtual llamada Virtual Dalvik 3 la cual fue creada para que un dispositivo pueda ejecutarse en mltiples maquinas virtuales. Dicha MV Dalvik se compone de registros y se ejecuta basndose en la compilacin del lenguaje Java.

Figura 5. El Runtime se compone bsicamente de las libreras principales y de la maquina virtual Dalvik
3

Dalvik ha sido diseada por Dan Bornstein con contribuciones de otros ingenieros de Google [5].

2.4 Application Framework


Son las aplicaciones del sistema (ver figura 6), las cuales estarn accesibles a los desarrolladores. Se ha simplificado el re-uso de los componentes, pudiendo de esta manera acceder a todas las aplicaciones desarrolladas.

Figura 6. Cualquier aplicacin podr exponer sus cualidades para que otras aplicaciones puedan acceder muy fcilmente a esas cualidades.

2.5 Applications
Es importante resaltar que todas las aplicaciones utilizan el lenguaje de programacin Java. Existen mltiples aplicaciones que el usuario ya dispone para su mejor interaccin con el sistema operativo. Tales como calendarios, servidores de correo, buscadores, aplicaciones para celular, etc. (ver figura 7).

Figura 7. Todas las aplicaciones han sido desarrolladas utilizando el lenguaje de programacin Java.

3. Las APIs
Un nivel de API es un valor entero que identifica a la versin de Android. La siguiente tabla (tabla 1) muestra la relacin que existe entre las APIs y las versiones de Android. Versin de Plataforma Android 2.2 Android 2.1 Android 2.0.1 Android 2.0 Android 1.6 Nivel de API 8 7 6 5 4
5

Android 1.5 Android 1.1 Android 1.0

3 2 1

Tabla 1. Relacin entre la versin de Android y su correspondiente API.

4. Conclusiones
El artculo presentado describi un primer anlisis respecto a Android, pues definitivamente es un gran aporte dentro de la lnea de Sistemas Operativos. Es importante resaltar que Android se enfoca principalmente al desarrollo de los Smartphone, con aplicaciones orientadas a calidad y servicio.

Agradecimientos
Gracias al profesor Alex Samaniego por darme la oportunidad de investigar y realizar el presente artculo.

Referencias
[1] http://www.android.com/ [2] http://www.t-mobile.com/ [3] http://es.wikipedia.org/wiki/Runtime [4] http://es.wikipedia.org/wiki/Driver [5] http://es.wikipedia.org/wiki/Dalvik

También podría gustarte