SlideShare una empresa de Scribd logo
1 de 6
Descargar para leer sin conexión
Android:
Es un sistema operativo móvil, queriendo esto decir que está orientado a dispositivos
portátiles o móviles como lo son los smartphones, tablets, smart TVs, entre otros; Es
desarrollado por Google Inc. Con la ayuda de la Open Handset Alliance, basado en el
Kernel (Núcleo) de Linux bajo una licencia de código abierto.
¿Cómo nace Android?:
La primera aparición de Android se hace en 2003 con la fundación de Android Inc. en
Palo Alto, Estados Unidos. Esta compañía se fundó con el propósito de crear un sistema
operativo móvil de código abierto basado en el núcleo de Linux.
En 2005 Google Inc. adquiere esta empresa siendo esta la nueva responsable del
desarrollo de Android. En 2007 se funda la Open Handset Alliance, un consorcio con el
propósito de crear estándares abiertos para dispositivos móviles, la cual pasaría a formar
parte del proyecto Android con lo que la primera versión de este sistema operativo vería
la luz. A partir de ahí se seguiría desarrollando este sistema operativo hasta la actualidad.
Estructura de Android:
El sistema operativo Android está organizado en varias capas, siendo la más baja el
núcleo y la más alta las aplicaciones.
Núcleo: Esta capa es el Kernel de Linux, provee servicios genéricos tales como el
manejo de la seguridad (permisos), manejo de procesos, manejo de memoria, sistema de
archivos, E/S y los controladores del hardware. Además de estos servicios del Kernel de
Linux mencionados, también provee servicios específicos de Android como lo son el
manejo de energía (batería), el low memory killer (liberador de memoria), entre muchos
otros.
Librerías nativas: Es una variedad de librerías escritas en C y C++ usadas por el sistema
para la creación de procesos e hilos, cálculos, asignación de memoria, actualización de la
visualización, reproducción de audio y video, modelado de gráficos 3D, manejo de bases
de datos y para la representación y visualización de páginas web.
Runtime de Android: Esta capa está compuesta por un conjunto de librerías escritas en
JAVA que facilitan la programación de nuevas aplicaciones; Y por una maquina virtual. Las
aplicaciones de Android están escritas en JAVA, por lo cual se necesita una maquina virtual
que ejecute estos programas, pero, dadas las limitaciones de hardware que poseen los
dispositivos hacia los cuales está dirigido Android, no es posible utilizar la maquina virtual
de JAVA por lo que Google desarrollo una maquina virtual llamada Dalvik la cual permite
ejecutar sus aplicaciones en dispositivos móviles.
Entorno de aplicación: Esta se conforma por una gran cantidad de software reusable
que las aplicaciones necesitan tales como botones, iconos, cajas de entrada de texto,
entre otros elementos utilizados en las interfaces de usuario, la lista de aplicaciones
instaladas para facilitar la comunicación entre las aplicaciones, gestor de ventanas, gestor
de actividades, proveedor de contenido, gestor de ubicación, gestor de notificaciones,
entre otros.
Aplicaciones: Es un conjunto de aplicaciones propias de Android como la pantalla de
inicio, el marcador de teléfono, el navegador web, el lector de correo electrónico, etc.
Componentes de aplicación:
En Android cada aplicación está conformada por componentes, estos componentes son
los diferentes puntos desde los que el sistema puede ejecutar la aplicación, los hay de
cuatro tipos según el propósito que tenga en la aplicación:
Actividades (activities): Son pantallas con interfaz de usuario. Por ejemplo una
aplicación de correo electrónico puede tener una actividad que visualiza una lista de
correos recibidos, otra que edita un correo a ser enviado y otra que permite leer un
correo recibido.
Servicios (services): Son componentes que se ejecutan en segundo plano y no ofrecen
ninguna interfaz de usuario. Por ejemplo un servicio puede reproducir música mientras el
usuario está en otra aplicación.
Receptores de difusión (broadcast receivers): Estos componentes responden a
anuncios enviados a todo el sistema. Por ejemplo que la pantalla se apagó.
Proveedores de contenido (content providers): Estos se encargan de gestionar
información compartida con otras aplicaciones.
Gestión de procesos:
Cuando se inicia un componente de alguna aplicación, y esta aplicación no tiene ningún
otro componente ejecutándose, el sistema crea un nuevo proceso para esa aplicación con
un único hilo de ejecución, por defecto, todos los componentes de una misma aplicación
se ejecutan dentro de este mismo proceso y a medida que se inician más componentes se
anexan al proceso.
El sistema intenta mantener los procesos en memoria por el mayor tiempo posible,
pero si llega a necesitar memoria para procesos de mayor importancia, se verá en la
necesidad de matar procesos. Para determinar qué proceso ha de matar, el sistema le
asigna a cada proceso una prioridad, matando siempre el proceso con menor prioridad, en
caso de haber varios procesos con la misma prioridad se mata al menos recientemente
usado. Las prioridades son:
Primer plano: Estos son procesos que contienen la actividad con la que el usuario esta
interactuando en ese momento o contienen algún servicio del que dependa el proceso
que contiene a la actividad que interactúa con el usuario.
Visible: Estos son procesos que contienen alguna actividad que, aunque no está en
primer plano, es visible para el usuario, por ejemplo si se da el caso de que la actividad en
primer plano recién iniciada permita ver la actividad anterior justo tras ella, o bien
contiene algún servicio del que depende otro proceso visible.
Servicio: Son procesos que contienen servicios que, aunque no interactúan
directamente con el usuario, le incumben directamente al usuario, por ejemplo el
reproductor de música.
Segundo plano: Estos son procesos cuyos componentes no afectan a la experiencia del
usuario. Por lo general estos procesos son los matados mas comúnmente por lo que están
preparados para reanudarse en el punto en que quedaron una vez vuelven a iniciarse.
Vacio: Estos procesos no tienen componentes activos por lo que no ejecutan nada, la
única razón por la que se mantienen en memoria es para agilizar el inicio de futuros
componentes que necesiten ejecutarse en el.
La prioridad que se le asigna a un proceso siempre es la de su componente con mayor
prioridad, es decir, si su componente con mayor prioridad es Visible entonces la prioridad
del proceso será visible.
Puede darse el caso de que un proceso A sea dependiente de otro con menor prioridad
B, en estos casos la prioridad del proceso B tendría que igualar la prioridad del proceso A
ya que un proceso no puede tener menor prioridad que la de los procesos que dependen
de él.

Más contenido relacionado

La actualidad más candente

Software en tiempo real
Software en tiempo realSoftware en tiempo real
Software en tiempo real
Aeivans
 
Administración de procesos y del procesador
Administración de procesos y del procesadorAdministración de procesos y del procesador
Administración de procesos y del procesador
Fernando Camacho
 
Notación infija postfija
Notación infija postfijaNotación infija postfija
Notación infija postfija
Omarzingm
 
Ejemplo plan de desarrollo de software rup
Ejemplo plan de desarrollo de software rupEjemplo plan de desarrollo de software rup
Ejemplo plan de desarrollo de software rup
Xochitl Saucedo Muñoz
 
Introduccion a la administracion de los procesos y el procesador (S.O)
Introduccion a la administracion de los procesos y el procesador (S.O)Introduccion a la administracion de los procesos y el procesador (S.O)
Introduccion a la administracion de los procesos y el procesador (S.O)
Javier Alvarez
 
Ventajas y desventajas de moprosoft
Ventajas y desventajas de moprosoftVentajas y desventajas de moprosoft
Ventajas y desventajas de moprosoft
Chuyito Alvarado
 
Arquitectura Multiprocesadores
Arquitectura Multiprocesadores Arquitectura Multiprocesadores
Arquitectura Multiprocesadores
JUANR1022
 

La actualidad más candente (20)

Software en tiempo real
Software en tiempo realSoftware en tiempo real
Software en tiempo real
 
Razonamiento monotono
Razonamiento monotonoRazonamiento monotono
Razonamiento monotono
 
Conceptos Unidad 1 Lenguajes Automatas Introducción a la Teoría de Lenguaje...
Conceptos Unidad 1 Lenguajes Automatas Introducción  a  la Teoría de Lenguaje...Conceptos Unidad 1 Lenguajes Automatas Introducción  a  la Teoría de Lenguaje...
Conceptos Unidad 1 Lenguajes Automatas Introducción a la Teoría de Lenguaje...
 
Lenguajes autómatas.
Lenguajes autómatas.Lenguajes autómatas.
Lenguajes autómatas.
 
Topicos Avanzados de Programacion - Unidad 3 componentes y librerias
Topicos Avanzados de Programacion - Unidad 3 componentes y libreriasTopicos Avanzados de Programacion - Unidad 3 componentes y librerias
Topicos Avanzados de Programacion - Unidad 3 componentes y librerias
 
Administración de procesos y del procesador
Administración de procesos y del procesadorAdministración de procesos y del procesador
Administración de procesos y del procesador
 
Expresiones regulares
Expresiones regularesExpresiones regulares
Expresiones regulares
 
Notación infija postfija
Notación infija postfijaNotación infija postfija
Notación infija postfija
 
Unidad 6 Protección y seguridad.
Unidad 6 Protección y seguridad.Unidad 6 Protección y seguridad.
Unidad 6 Protección y seguridad.
 
Ejemplo plan de desarrollo de software rup
Ejemplo plan de desarrollo de software rupEjemplo plan de desarrollo de software rup
Ejemplo plan de desarrollo de software rup
 
Herramientas case
Herramientas caseHerramientas case
Herramientas case
 
control de concurrencia
control de concurrenciacontrol de concurrencia
control de concurrencia
 
Jerarquia de chomsky
Jerarquia de chomskyJerarquia de chomsky
Jerarquia de chomsky
 
Introduccion a la administracion de los procesos y el procesador (S.O)
Introduccion a la administracion de los procesos y el procesador (S.O)Introduccion a la administracion de los procesos y el procesador (S.O)
Introduccion a la administracion de los procesos y el procesador (S.O)
 
Ventajas y desventajas de moprosoft
Ventajas y desventajas de moprosoftVentajas y desventajas de moprosoft
Ventajas y desventajas de moprosoft
 
RUP - Fase de Elaboración
RUP - Fase de ElaboraciónRUP - Fase de Elaboración
RUP - Fase de Elaboración
 
Gestion entrada y salida
Gestion entrada y salidaGestion entrada y salida
Gestion entrada y salida
 
Arquitectura Multiprocesadores
Arquitectura Multiprocesadores Arquitectura Multiprocesadores
Arquitectura Multiprocesadores
 
Unidad 3 administracion de memoria(recoplilacion de todas las exposiciones)
Unidad 3 administracion de memoria(recoplilacion de todas las exposiciones)Unidad 3 administracion de memoria(recoplilacion de todas las exposiciones)
Unidad 3 administracion de memoria(recoplilacion de todas las exposiciones)
 
Tópicos Avanzados de Programación - Unidad 2 componentes y librerias
Tópicos Avanzados de Programación - Unidad 2 componentes y libreriasTópicos Avanzados de Programación - Unidad 2 componentes y librerias
Tópicos Avanzados de Programación - Unidad 2 componentes y librerias
 

Similar a Android estructura del Sistema Operativo

Píldora 1: Android intro
Píldora 1: Android introPíldora 1: Android intro
Píldora 1: Android intro
hojalataverde
 
Curso android desarrollo de aplicaciones moviles
Curso android   desarrollo de aplicaciones movilesCurso android   desarrollo de aplicaciones moviles
Curso android desarrollo de aplicaciones moviles
Jose Antonio Prieto
 

Similar a Android estructura del Sistema Operativo (20)

Gestion de procesos Android
Gestion de procesos AndroidGestion de procesos Android
Gestion de procesos Android
 
Curso Android Tema 2
Curso Android Tema 2Curso Android Tema 2
Curso Android Tema 2
 
Gestion de memoria_en_android
Gestion de memoria_en_androidGestion de memoria_en_android
Gestion de memoria_en_android
 
Píldora 1: Android intro
Píldora 1: Android introPíldora 1: Android intro
Píldora 1: Android intro
 
Abarca so moviles
Abarca so movilesAbarca so moviles
Abarca so moviles
 
sistema operativo de una computadora
sistema operativo de una computadorasistema operativo de una computadora
sistema operativo de una computadora
 
Intro. a Android Instituto Bosc de la Coma en Olot
Intro. a Android Instituto Bosc de la Coma en OlotIntro. a Android Instituto Bosc de la Coma en Olot
Intro. a Android Instituto Bosc de la Coma en Olot
 
Mdw guia-android-1.3
Mdw guia-android-1.3Mdw guia-android-1.3
Mdw guia-android-1.3
 
Curso android desarrollo de aplicaciones moviles
Curso android   desarrollo de aplicaciones movilesCurso android   desarrollo de aplicaciones moviles
Curso android desarrollo de aplicaciones moviles
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativos
 
El software
El softwareEl software
El software
 
El software
El softwareEl software
El software
 
El software
El softwareEl software
El software
 
El software
El softwareEl software
El software
 
Artículo científico sobre Sistemas Operativos
Artículo científico sobre Sistemas OperativosArtículo científico sobre Sistemas Operativos
Artículo científico sobre Sistemas Operativos
 
App inventor
App inventorApp inventor
App inventor
 
Materitopicos.pdf
Materitopicos.pdfMateritopicos.pdf
Materitopicos.pdf
 
Trabajo
TrabajoTrabajo
Trabajo
 
Curso desarrollo en android
Curso desarrollo en androidCurso desarrollo en android
Curso desarrollo en android
 
Informe de computacion 05.07.2014
Informe de computacion 05.07.2014Informe de computacion 05.07.2014
Informe de computacion 05.07.2014
 

Más de Jesus Jimenez

Más de Jesus Jimenez (14)

Tesis: Desarrollo de Aplicación Web tipo help desk integrado en Sistema Web e...
Tesis: Desarrollo de Aplicación Web tipo help desk integrado en Sistema Web e...Tesis: Desarrollo de Aplicación Web tipo help desk integrado en Sistema Web e...
Tesis: Desarrollo de Aplicación Web tipo help desk integrado en Sistema Web e...
 
Accesibilidad Web - Universidad de Carabobo - Desarrollo de Aplicaciones Web
Accesibilidad Web - Universidad de Carabobo - Desarrollo de Aplicaciones WebAccesibilidad Web - Universidad de Carabobo - Desarrollo de Aplicaciones Web
Accesibilidad Web - Universidad de Carabobo - Desarrollo de Aplicaciones Web
 
Migracion de Sistemas Computacionales
Migracion de Sistemas ComputacionalesMigracion de Sistemas Computacionales
Migracion de Sistemas Computacionales
 
Presentacion Migracion de Sistemas Computacionales
Presentacion Migracion de Sistemas ComputacionalesPresentacion Migracion de Sistemas Computacionales
Presentacion Migracion de Sistemas Computacionales
 
Seguridad 3 - Redes de Computadoras
Seguridad 3 - Redes de ComputadorasSeguridad 3 - Redes de Computadoras
Seguridad 3 - Redes de Computadoras
 
Capa de Aplicacion - Redes de Computadoras
Capa de Aplicacion - Redes de ComputadorasCapa de Aplicacion - Redes de Computadoras
Capa de Aplicacion - Redes de Computadoras
 
Seguridad 2 - Redes de Computadoras
Seguridad 2 - Redes de ComputadorasSeguridad 2 - Redes de Computadoras
Seguridad 2 - Redes de Computadoras
 
Seguridad 1 - Redes de Computadoras
Seguridad 1 - Redes de ComputadorasSeguridad 1 - Redes de Computadoras
Seguridad 1 - Redes de Computadoras
 
Capa de Transporte - Redes de Computadoras
Capa de Transporte - Redes de ComputadorasCapa de Transporte - Redes de Computadoras
Capa de Transporte - Redes de Computadoras
 
Capa de Enlace - Redes de Computadoras
Capa de Enlace - Redes de ComputadorasCapa de Enlace - Redes de Computadoras
Capa de Enlace - Redes de Computadoras
 
Sistemas Operativos Moviles, Android y IOs
Sistemas Operativos Moviles, Android y IOsSistemas Operativos Moviles, Android y IOs
Sistemas Operativos Moviles, Android y IOs
 
El reconocimiento facial
El reconocimiento facialEl reconocimiento facial
El reconocimiento facial
 
Organizacion del computador documento vertical
Organizacion del computador documento verticalOrganizacion del computador documento vertical
Organizacion del computador documento vertical
 
Trabajo de circuito logico restador
Trabajo de circuito logico restadorTrabajo de circuito logico restador
Trabajo de circuito logico restador
 

Último

Evaluación del riesgo tecnologías informáticas.pdf
Evaluación del riesgo tecnologías informáticas.pdfEvaluación del riesgo tecnologías informáticas.pdf
Evaluación del riesgo tecnologías informáticas.pdf
GuillermoBarquero7
 
2da. Clase Mecanografía e introducción a Excel (2).pptx
2da. Clase Mecanografía e introducción a Excel (2).pptx2da. Clase Mecanografía e introducción a Excel (2).pptx
2da. Clase Mecanografía e introducción a Excel (2).pptx
EncomiendasElSherpa
 

Último (6)

Evaluación del riesgo tecnologías informáticas.pdf
Evaluación del riesgo tecnologías informáticas.pdfEvaluación del riesgo tecnologías informáticas.pdf
Evaluación del riesgo tecnologías informáticas.pdf
 
Caso de éxito de Hervian con el ERP Sage 200
Caso de éxito de Hervian con el ERP Sage 200Caso de éxito de Hervian con el ERP Sage 200
Caso de éxito de Hervian con el ERP Sage 200
 
2da. Clase Mecanografía e introducción a Excel (2).pptx
2da. Clase Mecanografía e introducción a Excel (2).pptx2da. Clase Mecanografía e introducción a Excel (2).pptx
2da. Clase Mecanografía e introducción a Excel (2).pptx
 
ESCRITORIO DE WINDOWS 11 Y SUS ELEMENTOS
ESCRITORIO DE WINDOWS 11 Y SUS ELEMENTOSESCRITORIO DE WINDOWS 11 Y SUS ELEMENTOS
ESCRITORIO DE WINDOWS 11 Y SUS ELEMENTOS
 
Caso de Exito LPL Projects Logistics Spain y Business Central
Caso de Exito LPL Projects Logistics Spain y Business CentralCaso de Exito LPL Projects Logistics Spain y Business Central
Caso de Exito LPL Projects Logistics Spain y Business Central
 
Trabajo de Powerpoint - Unsaac - Ofimática
Trabajo de Powerpoint - Unsaac - OfimáticaTrabajo de Powerpoint - Unsaac - Ofimática
Trabajo de Powerpoint - Unsaac - Ofimática
 

Android estructura del Sistema Operativo

  • 1. Android: Es un sistema operativo móvil, queriendo esto decir que está orientado a dispositivos portátiles o móviles como lo son los smartphones, tablets, smart TVs, entre otros; Es desarrollado por Google Inc. Con la ayuda de la Open Handset Alliance, basado en el Kernel (Núcleo) de Linux bajo una licencia de código abierto. ¿Cómo nace Android?: La primera aparición de Android se hace en 2003 con la fundación de Android Inc. en Palo Alto, Estados Unidos. Esta compañía se fundó con el propósito de crear un sistema operativo móvil de código abierto basado en el núcleo de Linux. En 2005 Google Inc. adquiere esta empresa siendo esta la nueva responsable del desarrollo de Android. En 2007 se funda la Open Handset Alliance, un consorcio con el propósito de crear estándares abiertos para dispositivos móviles, la cual pasaría a formar parte del proyecto Android con lo que la primera versión de este sistema operativo vería la luz. A partir de ahí se seguiría desarrollando este sistema operativo hasta la actualidad.
  • 2. Estructura de Android: El sistema operativo Android está organizado en varias capas, siendo la más baja el núcleo y la más alta las aplicaciones. Núcleo: Esta capa es el Kernel de Linux, provee servicios genéricos tales como el manejo de la seguridad (permisos), manejo de procesos, manejo de memoria, sistema de archivos, E/S y los controladores del hardware. Además de estos servicios del Kernel de Linux mencionados, también provee servicios específicos de Android como lo son el manejo de energía (batería), el low memory killer (liberador de memoria), entre muchos otros.
  • 3. Librerías nativas: Es una variedad de librerías escritas en C y C++ usadas por el sistema para la creación de procesos e hilos, cálculos, asignación de memoria, actualización de la visualización, reproducción de audio y video, modelado de gráficos 3D, manejo de bases de datos y para la representación y visualización de páginas web. Runtime de Android: Esta capa está compuesta por un conjunto de librerías escritas en JAVA que facilitan la programación de nuevas aplicaciones; Y por una maquina virtual. Las aplicaciones de Android están escritas en JAVA, por lo cual se necesita una maquina virtual que ejecute estos programas, pero, dadas las limitaciones de hardware que poseen los dispositivos hacia los cuales está dirigido Android, no es posible utilizar la maquina virtual de JAVA por lo que Google desarrollo una maquina virtual llamada Dalvik la cual permite ejecutar sus aplicaciones en dispositivos móviles.
  • 4. Entorno de aplicación: Esta se conforma por una gran cantidad de software reusable que las aplicaciones necesitan tales como botones, iconos, cajas de entrada de texto, entre otros elementos utilizados en las interfaces de usuario, la lista de aplicaciones instaladas para facilitar la comunicación entre las aplicaciones, gestor de ventanas, gestor de actividades, proveedor de contenido, gestor de ubicación, gestor de notificaciones, entre otros. Aplicaciones: Es un conjunto de aplicaciones propias de Android como la pantalla de inicio, el marcador de teléfono, el navegador web, el lector de correo electrónico, etc. Componentes de aplicación: En Android cada aplicación está conformada por componentes, estos componentes son los diferentes puntos desde los que el sistema puede ejecutar la aplicación, los hay de cuatro tipos según el propósito que tenga en la aplicación: Actividades (activities): Son pantallas con interfaz de usuario. Por ejemplo una aplicación de correo electrónico puede tener una actividad que visualiza una lista de correos recibidos, otra que edita un correo a ser enviado y otra que permite leer un correo recibido.
  • 5. Servicios (services): Son componentes que se ejecutan en segundo plano y no ofrecen ninguna interfaz de usuario. Por ejemplo un servicio puede reproducir música mientras el usuario está en otra aplicación. Receptores de difusión (broadcast receivers): Estos componentes responden a anuncios enviados a todo el sistema. Por ejemplo que la pantalla se apagó. Proveedores de contenido (content providers): Estos se encargan de gestionar información compartida con otras aplicaciones. Gestión de procesos: Cuando se inicia un componente de alguna aplicación, y esta aplicación no tiene ningún otro componente ejecutándose, el sistema crea un nuevo proceso para esa aplicación con un único hilo de ejecución, por defecto, todos los componentes de una misma aplicación se ejecutan dentro de este mismo proceso y a medida que se inician más componentes se anexan al proceso. El sistema intenta mantener los procesos en memoria por el mayor tiempo posible, pero si llega a necesitar memoria para procesos de mayor importancia, se verá en la necesidad de matar procesos. Para determinar qué proceso ha de matar, el sistema le asigna a cada proceso una prioridad, matando siempre el proceso con menor prioridad, en caso de haber varios procesos con la misma prioridad se mata al menos recientemente usado. Las prioridades son: Primer plano: Estos son procesos que contienen la actividad con la que el usuario esta interactuando en ese momento o contienen algún servicio del que dependa el proceso que contiene a la actividad que interactúa con el usuario. Visible: Estos son procesos que contienen alguna actividad que, aunque no está en primer plano, es visible para el usuario, por ejemplo si se da el caso de que la actividad en primer plano recién iniciada permita ver la actividad anterior justo tras ella, o bien contiene algún servicio del que depende otro proceso visible. Servicio: Son procesos que contienen servicios que, aunque no interactúan directamente con el usuario, le incumben directamente al usuario, por ejemplo el reproductor de música.
  • 6. Segundo plano: Estos son procesos cuyos componentes no afectan a la experiencia del usuario. Por lo general estos procesos son los matados mas comúnmente por lo que están preparados para reanudarse en el punto en que quedaron una vez vuelven a iniciarse. Vacio: Estos procesos no tienen componentes activos por lo que no ejecutan nada, la única razón por la que se mantienen en memoria es para agilizar el inicio de futuros componentes que necesiten ejecutarse en el. La prioridad que se le asigna a un proceso siempre es la de su componente con mayor prioridad, es decir, si su componente con mayor prioridad es Visible entonces la prioridad del proceso será visible. Puede darse el caso de que un proceso A sea dependiente de otro con menor prioridad B, en estos casos la prioridad del proceso B tendría que igualar la prioridad del proceso A ya que un proceso no puede tener menor prioridad que la de los procesos que dependen de él.