La arquitectura de Android contiene una cantidad diferente de componentes para satisfacer las necesidades de cualquier dispositivo Android. El software de Android contiene un kernel de Linux de código abierto que tiene una colección de bibliotecas C/C++ que se exponen a través de los servicios de un marco de aplicación.
Entre todos los componentes, Linux Kernel proporciona la funcionalidad principal de las funciones del sistema operativo para teléfonos inteligentes y Dalvik Virtual Machine (DVM) proporciona una plataforma para ejecutar una aplicación de Android.
Los principales componentes de la arquitectura de Android son los siguientes: –
- Aplicaciones
- Marco de aplicación
- Tiempo de ejecución de Android
- Bibliotecas de plataforma
- Núcleo de Linux
Representación pictórica de la arquitectura de Android con varios componentes principales y sus subcomponentes:
Aplicaciones –
Aplicaciones es la capa superior de la arquitectura de Android. Las aplicaciones preinstaladas como casa, contactos, cámara, galería, etc. y las aplicaciones de terceros descargadas de Play Store, como aplicaciones de chat, juegos, etc., se instalarán solo en esta capa.
Se ejecuta dentro del tiempo de ejecución de Android con la ayuda de las clases y servicios proporcionados por el marco de la aplicación.
Marco de aplicación –
Application Framework proporciona varias clases importantes que se utilizan para crear una aplicación de Android. Proporciona una abstracción genérica para el acceso al hardware y también ayuda a administrar la interfaz de usuario con los recursos de la aplicación. En general, proporciona los servicios con la ayuda de los cuales podemos crear una clase en particular y hacer que esa clase sea útil para la creación de aplicaciones.
Incluye diferentes tipos de administrador de actividades de servicios, administrador de notificaciones, sistema de visualización, administrador de paquetes, etc., que son útiles para el desarrollo de nuestra aplicación de acuerdo con los requisitos previos.
tiempo de ejecución de la aplicación –
El entorno Android Runtime es una de las partes más importantes de Android. Contiene componentes como bibliotecas centrales y la máquina virtual Dalvik (DVM). Principalmente, proporciona la base para el marco de la aplicación y potencia nuestra aplicación con la ayuda de las bibliotecas principales.
Al igual que Java Virtual Machine (JVM), Dalvik Virtual Machine (DVM) es una máquina virtual basada en registros y especialmente diseñada y optimizada para Android para garantizar que un dispositivo pueda ejecutar múltiples instancias de manera eficiente. Depende de la capa del kernel de Linux para subprocesos y gestión de memoria de bajo nivel. Las bibliotecas principales nos permiten implementar aplicaciones de Android utilizando los lenguajes de programación estándar JAVA o Kotlin.
bibliotecas de la plataforma –
Las bibliotecas de la plataforma incluyen varias bibliotecas principales de C/C++ y bibliotecas basadas en Java, como Media, Graphics, Surface Manager, OpenGL, etc., para proporcionar soporte para el desarrollo de Android.
- La biblioteca de medios brinda soporte para reproducir y grabar formatos de audio y video.
- Gestor de superficies encargado de gestionar el acceso al subsistema de visualización.
- SGL y OpenGL , ambas interfaces de programación de aplicaciones (API) multiplataforma y multilenguaje, se utilizan para gráficos por computadora en 2D y 3D.
- SQLite proporciona soporte para bases de datos y FreeType proporciona soporte para fuentes.
- Web-Kit Este motor de navegador web de código abierto proporciona toda la funcionalidad para mostrar contenido web y simplificar la carga de la página.
- SSL (Secure Sockets Layer) es una tecnología de seguridad para establecer un enlace encriptado entre un servidor web y un navegador web.
Núcleo de Linux –
Linux Kernel es el corazón de la arquitectura de Android. Administra todos los controladores disponibles, como controladores de pantalla, controladores de cámara, controladores de Bluetooth, controladores de audio, controladores de memoria, etc., que se requieren durante el tiempo de ejecución.
El kernel de Linux proporcionará una capa de abstracción entre el hardware del dispositivo y los demás componentes de la arquitectura de Android. Es responsable de la gestión de la memoria, la energía, los dispositivos, etc.
Las características del kernel de Linux son:
- Seguridad: el kernel de Linux maneja la seguridad entre la aplicación y el sistema.
- Gestión de la memoria: maneja de manera eficiente la gestión de la memoria, lo que proporciona la libertad para desarrollar nuestras aplicaciones.
- Gestión de Procesos: Gestiona bien el proceso, asigna recursos a los procesos cada vez que los necesitan.
- Network Stack: Maneja efectivamente la comunicación de la red.
- Modelo de controlador: garantiza que la aplicación funcione correctamente en el dispositivo y los fabricantes de hardware responsables de incorporar sus controladores en la compilación de Linux.
Publicación traducida automáticamente
Artículo escrito por Praveenruhil y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA