Arquitectura del sistema operativo android.pdf

Arquitectura del sistema operativo android El sistema android es una pia de software para dispositivos mobiles en el cua

Views 302 Downloads 7 File size 409KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

Arquitectura del sistema operativo android El sistema android es una pia de software para dispositivos mobiles en el cual se encuentra compuesto con el sistema operativo meddleware (es un software intermedio entre las aplicaciones y el sistema operativo) conjunto de aplicaciones básicas android provee una plataforma de desarrollo abierto y ofrece a los desarrolladores la capacidad de crear aplicaciones ricas e innovadoras además permite tomar las ventajas que ofrece el Hardware del dispositivo para mejorar las aplicaciones. Como desarrolladores se tiene total acceso a las API del framework ya que la arquitectura de android está diseñada para simplificar el uso de los componentes asi como APIs para el control de los dispositivos para conectividad, sensores, etc.

Kernel de Linux es la primera capa de la arquitectura el núcleo del sistema operativo android está basado en la versión 2.6 del kernel de Linux similar al que puede incluir cualquier distribución de Linux como Ubuntu solo que adaptado a las características del hardware en el que se ejecutara android es decir adaptado a dispositivos móviles. El nucleo actua como una capa de abstracción entre el hardware y el resto de las capas de la arquitectura el desarrollador no accede a directamente a esta capa, sino que debe utilizar las bibliotecas disponibles en capas superiores. De esta forma se evita tener que conocer las características precisas de cada dispositivos. Por ejemplo si se requiere hacer uso de la recamara el S.O. se encarga de utilizar en la que incluya en el equipo sea cual sea. Para cada elemento de hardware del dispositivo existe un controlador (Driver) dentro del Kernel que permite que permite utilizarlo desde el software. Otras tareas del kernel es la de gestionar los diferentes recursos del dispositivos (energía, memoria, etc) y del sistema operativo (procesos, red, entre otros) Linux Kernel 1. 2. 3. 4. 5.

Display driver Camera driver Bluetooth Driver Flash Memory Driver Bender (IPC) Driver

6. 7. 8. 9. 10.

USB Driver KeyPad Driver WIFI Driver AUDIO Drivers Power Management

Librerías o Bibliotecas La siguiente capa que se situa justo con el kernel la componen las bibliotecas nativas de android estas están escritas en C o C++ y copiladas para la arquitectura hardware especifica en cada dispositivo normalmente están hechas por el fabricante que también se encarga de instalarlas en el dispositivos antes de ponerlo a la venta. El objetivo de las bibliotecas es proporcionar funcionalidad a las aplicaciones para tareas que se repiten con frecuencias evitando que codificarlas cada vez y garantizando que las tareas se llevan a cabo de manera más eficiente. Entre las bibliotecas incluidas habitualmente encontramos: OpenGL (Motor Gráfico) Bibliotecas multimedios (formatos de audio, imagen y video) WebKit (Navegador) SSL (cifrado de comunicaciones) FreeType (fuente de Texto) SQLite (Base de Datos) Entre Otras Android RunTime (Entorno de Ejecución) este entorno no se considera una capa como tal dado que también está formado por bibliotecas aquí se encuentran las bibliotecas con funcionalidades habituales de java así como otras especificaciones de android. El componente principal del entorno de ejecución es la máquina virtual las aplicaciones se codifican en Java y son compiladas en formato específico para que esta máquina virtual se ejecute la ventaja de esto es que las aplicaciones se compilan una única vez y de esta forma estarán listas para distribuirse con la total garantía que se podrán ejecutar en cualquier dispositivo android que disponga de la versión minima del sistema operativo que requiera de la aplicación cabe aclara que la máquina virtual android es una variación de la máquina virtual de Java por lo que no es compatible con el BiteCode Java. Java se usa únicamente como lenguaje de programación y los ejecutables que se generan con el SDK de android tiene la extencion .dex que es específico para la máquina virtual de android y por ello no podemos correr aplicaciones en java en Android ni viceversa. Libreries 1. 2. 3. 4. 5. 6. 7.

Surface Manager Media Frame Work SQLite OpenGLies FreeType Welokit SGL SSL

8. Libc Android RunTime 1. Core Libraries 2. Dalvik Virtual Machine

Aplicación FrameWork (El marco de aplicaciones) La siguiente capa está formada por todas las clases y servicios que utilizan directamente las aplicaciones para realizar sus funciones. La mayoría de los componentes de esta capa son bibliotecas Java que acceden a los recursos de las capas anteriores atreves de la máquina virtual. Algunos de los componentes mas importantes se listan en la siguiente tabla: Activity Manager Gestor de actividad es una herramienta de gestión de proyectos. Ayuda a un jefe de proyecto para gestionar y comprobar su actividad colaboradores. Fácil de usar ligero pero muy eficiente y adaptable Windows Manager Un Gestor de ventanas o manejador de ventanas es un programa información que controla la ubicación y apariencia de las ventanas bajo un sistema de ventanas en una interfaz gráfica de usuario.

Content Provider En pocas palabras es quien gestiona los contenidos es decir es un professional con un perfil preferentemente del área de las humanidades periodismo probablemente y/o filología que ha realizado cursos masters postgrados etc.

View Notificacion Manager

Pack Manager Resource Manager Location Manager Sensor Manager Camera Manager Multimedia Manager Telefonia Manager