aro1s Proceso de nicioen Android Newonas dgtales
tome About Me
¥Y = in
Neuronas digitales
# cat /dev/brain >
www
°
November 20, 2012 by SPaNKeR | Uncategorized
Proceso de inicio en Android
La gran mayoria que trastea profesionalmente con un
ordenador conoce como un PC se inicia internamente:
inicio de dispositivos, carga de sector de arranque, kernel
del SSOO, etcetc. Recuerdo que eso se estudiaba en
primero de carrera, tiempo atras....
phwuwneuronascgtales. comiproneso-de-rcioen- android 0aro1s
Proceso de cio en Arnold: Nexoras les
Pero, y Android? Es un sistema operativo como cualquier
otro y tiene igualmente su proceso, pero es algo que no
esta tan extendido, por su poco tiempo en este mundo. Voy
a describir brevemente los pasos que todo cacharrito
Android comparte cuando éste se inicia.
1. Boot ROM
Cuando se enciende el dispositivo, lo primero que se pone
en marcha es la CPU. Esta tiene hardcoreada la direccién
de memoria donde se encuentra el codigo de inicio, 0 boot
ROM. Lo que hace este cédigo es inicializar el resto de
hardware del dispositivo. Hecho esto, busca la partici6n
de arranque, que suele estar en la memoria NAND, y copia
el boot loader en la RAM.
Boot
meda
(NAND)
phwuwneuronascgtales. comiproneso-de-rcioen- androidaro1s
Proceso do nico. Android - Nexonas dgiales
2. Boot Loader
La CPU empieza a ejecutar entonces el Boot Loader, 0 SPL.
Este codigo se asemeja en funcionalidad al GRUB de Linux,
ya que su funcion es la de lanzar el sistema operativo
Android o dar la opcion de elegir una alternativa, como el
fastboot, recovery, 0 una imagen custom creada por la
comunidad.
Physical
memory
Boot
media
(NAND)
3. Kernel
La carga del kernel de Android es igual que cualquier
sistema Linux. Inicializa memoria, dispositivos,
schedulers, y acceso a la particién raiz para lanzar el
proceso init.
pihnaw neonates comiproceso-de-ircioen- andlaro1s Proceso do nico. Android - Nexonas dgiales
Boot
media
(NAND)
4. Init
Al igual que en un sistema Linux, el proceso init se
encarga de lanzar los scripts de inicio contenidos en
/etc/rcX.d. En este caso el script que se ejecuta es init.rc
que se encuentra en raiz, aunque el fichero o la ubicacién
puede variar dependiendo del dispositivo. Contiene toda
la configuracion inicial del sistema. Desde el punto de
vista del analista forense, es la parte de inicio mas
suculenta, por lo que si os pica la curiosidad, os
recomiendo que busqueis este archivo y le echeis un ojo.
Necesitareis eso si un dispositivo rooteado y un
explorador de ficheros que permita navegar por
directorios con permisos de root.
pihnaw neonates comiproceso-de-ircioen- andl 410aro1s Proceso de nicioen Android Newonas dgtales
Virtual Physical
Memory _ memory
Boot
media
(NAND)
5. Zygote
Este servicio lanzado por Init es el encargado de inicializar
las maquinas virtuales Dalvik. Basicamente su funcién es
crear maquinas virtuales por cada proceso nuevo que se
inicia.
phwuwneuronascgtales. comiproneso-de-rcioen- androidaro1s Proceso do nico. Android - Nexonas dgiales
Virtual Physical
Memory _ memory
Boot
media
(NAND)
6. System Server
Iniciado el servicio Zygote, el sistema ya puede empezar a
lanzar servicios basicos, como la telefonia, teclado, y otros
agentes y servicios de Google. Finalizado el inicio de estos
servicios, el sistema esta listo para interactuar con el
usuario.
phwuwneuronascgtales. comiproneso-de-rcioen- android anaro1s Proceso de nicioen Android Newonas dgtales
Dank Vital Physical
Palvik Memory memory
Boot
vi
;
(AND)
Sencillo script para bac blo Kersioncterd inux : Integracién KeePass + Firefox —>
Fuentes:
-Xdin Android Blog
SPaNKeR
°
4 thoughts on “Proceso de
inicio en Android”
phwuwneuronascgtales. comiproneso-de-rcioen- android m0