sistemas operativos de dispositivos móviles

Anuncio
SISTEMAS OPERATIVOS
DE DISPOSITIVOS
MÓVILES
HÉCTOR DOMÍNGUEZ
KRYSLER PINTO
AGENDA
Sistemas operativos móviles
Capas
Historia
Características
Arquitectura
Gestión de procesos
Gestión de memoria
Multitasking
Conclusiones
SISTEMAS OPERATIVOS MÓVILES
¿QUÉ SON?
Conjunto de programas que gestiona
los recursos de hardware y provee
servicios en un dispositivo móvil
MERCADO
Fuente: http://www.
comscore.com/
ANDROID
¿Qué es?
Android, Inc.
"Software libre": SO + Middleware + aplicaciones
¿Qué NO es?
Dispositivo móvil
Marca telefónica
Dependiente de un fabricante
ANDROID
Historia
Octubre 2003: Android, Inc. fue fundado
por Andy Rubin, Rich Miner, Nick Sears, Chris White
Agosto 2005: Google adquirió Android, Inc.
Noviembre 2007: se fundó Open Handset Alliance:
operadores móviles + desarrolladores de sw + + + +
Noviembre 2007: se publicó Android Beta SDK.
Septiembre 2008: se lanzó HTC Dream
ANDROID
Historia
30 de Abril
de 2009
15 Septiembre
de 2009
Android 1.5
Android 1.6
Cupcake
Versión
Linux
2.6.27
26 Octubre
de 2009
Android 2.0
20 Mayo
de 2010
Lanzamiento
Android
2.2 OS pasa
Android
2.3
Iphone
iOS con el
a llamarse iOS
iPhone 5
Donut
Eclair
Versión
Linux
2.6.29
Versión
Linux
2.6.29
6 de Diciembre
de 2010
Froyo
Versión
Linux
2.6.32
Gingerbread
Versión
Linux
2.6.33
ANDROID
Características
Conectividad:
●
GSM, EDGE, 3G
●
Bluetooth; Wi-Fi
Software:
●
Navegador integrado (Webkit)
●
OpenGL | ES 1.0
●
SQLite
●
Entorno de desarrollo: emulador + debugger + herr. profile
Hardware / Multimedia:
●
Cámara, GPS, Brújula, Acelerómetro
●
MPEG4, MP3, AMR, JPG, GIF, otros.
ANDROID
Arquitectura
ANDROID
Arquitectura
* DALVIK VM
ANDROID
Arquitectura - Gestión de Procesos
Hace uso de un "Planificador Completamente Justo"
Completely Fair Scheduler - CFS
Insertar
Selección de
tarea: O(1)
tarea:
O(log N)
ANDROID
Arquitectura - Gestión de Memoria
Limitación: 10-20 MB de RAM
Por esto:
1- Archivos .dex.
2- Hace uso de Copy-on-Write
3- Zygote: "Es la célula formada inicialmente cuando un nuevo
organismo es producido".
ANDROID
Arquitectura - Gestión de Memoria
Limitación: 10-20 MB de RAM
Por esto:
1) Marcar
4- Recolector de Basura: algoritmo mark-sweep
2) Barrer
5- Paginación: ARM
●
* Paginación de dos
●
niveles
●
* Translation Lookaside
●
Buffer - TLB
Super-Secciones:
Secciones:
16 MB
1 MB
Páginas grandes: 64 KB
Páginas pequeñas:
1 KB
ANDROID
Arquitectura - Multi-tasking
¿Múltiples aplicaciones se ejecutan al mismo tiempo?
ANDROID
Arquitectura - Sistema de Archivos
Yet Another Flash File System
Fourth Extended File System
Ted Tso
(Desarrollador de Google)
* Memorias Flash
* Gingerbread
(2.3 - Diciembre 2010)
iOS
¿QUÉ ES iOS?
Es un sistema operativo desarrollado y
distribuido
por
Apple,
originalmente
desarrollado para el iPhone (iPhone OS),
siendo después usado en otros dispositivos
iOS
HISTORIA
9 de enero
de 2007
Apple revela
existencia del
iPhoneOS
29 de Junio
de 2007
Lanzamiento
de Iphone OS
27 de enero
de 2010
Steve Jobs
anunció
el
iPad
7 de Junio
de 2010
12 Septiembre
de 2012
Iphone OS pasa Lanzamiento
iOS 6 con el
a llamarse iOS
iPhone 5
iOS
CARACTERÍSTICAS
La interfaz de usuario de iOS está basada en el concepto
de manipulación directa, usando gestos multitáctiles
Acelerómetros
internos
para
hacer
que
aplicaciones respondan a sacudir el dispositivo
algunas
Esta escrito en C, C++ y objective-c
La versión actual del sistema operativo (iOS 6.1.3) ocupa
más o menos 770 megabytes
iOS
KERNEL
iOS se deriva de Mac OS X, que a su vez está basado en Darwin
BSD, y por lo tanto es un sistema operativo Unix.
DARWIN
integra
micronúcleo
Mach
IPC (Mensajes,semáforos,RPC)
Planificador soporta (SMP)
Servicios de Tiempo real
Soporte de memoria virtual
Multitarea
Hilos
freeBSD
File-System
Modelo de seguridad UNIX
Componentes Red
Acceso Multiusuario
Protección de la memoria
iOS
ARQUITECTURA
iOS es un intermediario entre el hardware y
aplicaciones , cuenta con cuatro capas de abstracción
las
iOS
ARQUITECTURA / ADMIN. PROCESOS
Gestión a través de colas de prioridades.
Los niveles de prioridades se dividen en cuatro grupos en
base a sus características
Modo
kernel
Normales
Alta
prioridad
(Sistema)
Migrar otras prioridades
Prioridad en base a su comportamiento y al
de los otros procesos en el sistema
Hilos de
tiempo real
Penalizaciones
iOS
ARQUITECTURA / ADMIN. MEMORIA
Gestión a través de memoria virtual.
Soporta conteo automático de referencias (Objective C)
MEMORIA VIRTUAL
DASD
MULTITASKING
iOS 4
Audio en segundo plano
Voz IP
Localización en segundo plano
Notificaciones push
Notificaciones locales
....... Se agregaron nuevas
iOS
SISTEMA DE ARCHIVOS
MECANISMO DE
AISLAMIENTO
SANDBOX
Crear App => Home
interacción solo Home
Prohibiciones
Excepción interfaces
publicas del sistema
OS X Soporta
distintos sistemas
de archivos HFS+,
NFS,UFS,UDF,FAT,
ETC
ANDROID
iOS
KERNEL
LINUX
DARWIN
GESTIÓN
PROCESOS
ÁRBOL ROJO NEGRO
COLA DE PRIORIDADES
GESTIÓN MEMORIA
PAGINACIÓN
PAGINACIÓN
SISTEMA DE
ARCHIVOS
YAFFS2 / EXT4
MULTITASKING
SI
LIMITADO
DESARROLLO
CUALQUIER
DESARROLLADOR PUEDE
CREAR SUS PROPIAS APPS
LOS DESARROLLADORES
DEBEN PAGAR LA
MEMBRESÍA
SI
NO
VULNERABILIDAD
MALWARE
HARDWARE
Puede instalarse sobre el
Hardware de cualquier
fabricante con previa
adaptación de las librerías y
clases.
HFS+, UFS,ISO,NFS,UDF
iOS no puede instalarse en
hardware de terceros
BIBLIOGRAFÍA
[0].
http://www.comscore.
com/Insights/Presentations_and_Whitepapers/2013/2013_Mobile_Future_in_Focus
Android:
[1]. http://developer.android.com/index.html
[2].http://www.santiagosolis.com/2012/08/arquitectura-deandroid.html
[3]. http://elinux.org/Android_Architecture
[4]. Slash Mobility. http://slashmobility.com/slash/content/
iOS:
[1].https://developer.apple.
com/library/mac/#documentation/Darwin/Conceptual/KernelProg
ramming/About/About.html#//apple_ref/doc/uid/TP30000905
[2]. http://www.apple.com/es/iphone/ios/
[3]. http://es.wikipedia.org/wiki/IOS_(sistema_operativo)
[4]. http://es.wikipedia.org/wiki/Darwin_BSD
[5]. http://es.wikipedia.org/wiki/Mac_OS_X
Descargar