You are on page 1of 6

ARCHIVOS DE ARRANQUE ANDROID

El arranque del sistema operativo


es una parte fundamental para
poder modificar nuestro Android y
sobre
todo
para
poder
personalizar algunos factores en
las ROMs.
Android
utiliza,
bsicamente, el mismo sistema
de arranque que la mayora de
las distribuciones Linux, as que
os vamos a hacer una pequea
introduccin para que podis entender superficialmente este concepto.
Todo sistema operativo, a la hora de arrancar, ejecuta una serie de rutinas
o tareas que realiza diferentes acciones. En el caso de Android, el
encargado de realizar el inicio de forma correcta es un programa
llamado Init.
A la hora de comenzar, Init, va a ir ejecutando los archivos (scripts)
ubicados dentro de /system/etc/init.d/. Es dentro de este directorio donde
podremos agregar nuestros scripts personalizados para ajustar la ROM a
nuestro gusto.

Los scripts alojados en /system/etc/init.d utilizan


lo que podra denominarse como programacin
bash, algo realmente til si queremos automatizar
tareas tanto en Linux como en Android. Este
lenguaje scripting no es complicado y suele ser muy
transparente a la hora de ejecutar tareas, porque
utiliza los comandos disponibles en nuestro sistema.
Adems, los scripts de inicio en Android suelen
utilizarse para realizar overclocking en nuestro
terminal, lo que aumenta el rendimiento del
procesador a cambio de un poco de batera y algo
de temperatura (en la mayora de los casos).
Esta breve introduccin nos sirve de inicio para saber cmo hacer OC en
cualquier terminal sin necesidad de utilizar un programa externo. Bastar

con crear un script bash que se ejecute al inicio del terminal y ah ya


tendremos la tarea lista. Claro que si no sois un poco impacientes a la hora
de iniciar el terminal tambin podris ejecutar otro tipo de tareas como
puede ser la limpieza de algunos archivos.
Esperamos esto os sea de ayuda para entender un poco ms el inicio de
vuestro terminal Android.

ARCHIVOS DE ARRANQUE DE WINDOWS

Durante el arranque de cualquier mquina, su BIOS localiza el sector de arranque del disco
duro (MBR). Los siguientes 4 pasos describen el pre-inicio:
1) Cuando encendemos un ordenador, se ejecutan las rutinas POST (Power and Self Test) para
determinar la cantidad de memoria fsica y los componentes de hardware presentes en la
mquina.
2) La BIOS, localiza el dispositivo de arranque (BOOT) y carga y ejecuta el MBR (Master Boot
Record).
3) El MBR busca en su tabla de particiones, la particin que est marcada como activa, carga
en memoria el sector de boot de dicha particin y lo ejecuta.
4) Dicho sector, carga y ejecuta el archivo NTLDR (BootMgr en Windows Vista y 7)el cual es el
cargador del sistema operativo.
Secuencia de Inicio (Boot):
Despus de cargar en memoria NTLDR, la secuencia de inicio busca informacin acerca del
hardware y los controladores para preparar las fases de carga del sistema operativo. La
secuencia de boot, utiliza los siguientes ficheros: NTLDR, BOOT.INI (Bootbcd en Windows
Vista y 7), BOOTSECT.DOS (opcional), NTDETECT.COM y NTOSKRNL.EXE.
Esta secuencia de Boot tiene 4 fases, fase de Initial Boot Loader (cargador inicial), fase de
seleccin del sistema operativo, deteccin de hardware y seleccin de la configuracin.
Initial Boot Loader.
Durante este fase, NTLDR cambia el modo de funcionamiento del procesador, de modo real a
modo protegido (32 bit flat memory mode). Posteriormente NTLDR arranca los minidrivers del

sistema incorporados dentro del propio NTLDR. Estos minidrivers permiten a NTLDR localizar y
cargar Windows desde particiones FAT, FAT32 y NTFS.
Seleccin del Sistema Operativo.
Durante la secuencia de inicio, NTLDR lee el archivo BOOT.INI. Si dicho archivo tiene ms de
una linea de seleccin del sistema operativo, se muestra una pantalla durante el tiempo
predeterminado en el archivo BOOT.INI para poder seleccionar el sistema operativo a arrancar.
Si no seleccionamos en este caso ninguna entrada, NTLDR cargar el sistema operativo por
defecto que est especificado en el archivo BOOT.INI.
Por defecto, siempre es la ltima instalacin del ltimo Windows que hayamos instalado.
Recordemos que esta seleccin slo se muestra si hay ms de una lnea de sistema operativo
instalado en el archivo BOOT.INI.
Si el archivo BOOT.INI no existe, NTLDR siempre intenta cargar el sistema operativo de la
primera particion activa del primer disco duro (tpicamente, el C:)
Deteccin de Hardware.
NTDETECT.COM y NTOSKRNL.EXE realizan la deteccin del hardware. NTDETEC.COM se
ejecuta inmediatamente despus de haber seleccionado el sistema operativo a arrancar.
Si seleccionamos un sistema operativo de ncleo W9X en vez de ncleo NT / W2000 /XP,
NTLDR cargar y ejecutar BOOTSECT.DOS, el cual es una copia del sector de arranque que
exista en la particion del sistema cuando instalamos por primera vez un sistema operativo de
ncleo NT / W2000 / XP. Este sector corresponde a una particin formateada previamente con
MSDOS o bien con algn sistema W9X / ME.
NTDETECT.COM empieza a construir una lista del hardware actualmente instalado y devuelve
esta lista al programa NTLDR para una inclusin posterior en el registro bajo la clave
HKEY_LOCAL_MACHINEHARDWARE
NTDETECT.COM detecta los siguientes componentes:

Tipo
de
adaptador

Puertos
de

Coprocesador

Ratn
o
dispositivo

Puerto

Adaptadores
Adaptadores de Vdeo.

del

BUS
comunicaciones
matemtico
Disqueteras
Teclado
apuntador
paralelo
SCSI

Seleccin de la configuracin.
Despus de que NTLDR comienza la carga de Windows y ha recuperado ya la informacin de
hardware, el cargador del sistema presenta la pantalla de Perfiles de Hardware si en nuestra
mquina est definido ms de un perfil.

El primer Perfil de hardware se muestra con caracteres de alta intensidad. En esta pantalla,
podemos seleccionar el perfil, o bien pulsar L para seleccionar la Ultima configuracin buena
conocida.
Si slo existe un Perfil de Hardware, la pantalla anterior no se mostrar y Windows continuar
la carga usando la configuracion del perfil de hardware por defecto.
Carga del Ncleo (Kernel):
Despus de la Seleccin de la Configuracin el ncleo (kernel) de Windows (NTOSKRNL.EXE)
se carga e inicializa. Es en el momento en que la pantalla de seleccin anterior se borra y
aparecen una serie de rectngulos blancos en una linea inferior de la pantalla que indican el
proceso de carga de NTOSKRNL. (este proceso es muy rpido, y en Windows XP puede que
no llegue a verse debido a que inmediatamente entra la pantalla grfica del logo de carga de
XP.
Durante esta fase de carga, NTLDR realiza lo siguiente:
Carga NTOSKRNL.EXE pero no lo inicializa.
Carga la capa de abstraccin del hardware (HAL.DLL Hardware Abstraction Layer).
Carga la clave del registro: HKEY_LOCAL_MACHINESYSTEM desde %systemroot
%System32ConfigSystem
Selecciona un juego de control (control set) que va a utilizar para inicializar la mquina. Dentro
de este control set estn los datos que se utilizan para arrancar, como por ejemplo la lista de
controladores de dispositivos y los servicios a arrancar y cargar.
Carga los drivers de dispositivos que contienen un valor de 0x0 en la entrada Start de
definicin del dispositivo en el registro. Normalmente son controladores de hardware de bajo
nivel. El valor de esta lista est especficado en:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControl ServiceGroupOrder
En ella est el orden con el cual NTLDR va a cargar dichos controladores de dispositivos.
Inicializacin del Ncleo (Kernel):
Cuando la fase de carga del ncleo (Kernel) se ha completado, se inicializa el Kernel y NTLDR
pasa control al ncleo (NTOSKRNL.EXE). Es en este momento cuando el sistema muestra la
pantalla grfica con la barra de proceso de carga. Cuatro tareas van a ocurrir durante esta fase:
1) Creacin de la clave del registro de Hardware. El Kernel usa los datos recogidos durante la
deteccin de hardware para crear la clave del registro HKEY_LOCAL_MACHINEHARDWARE
la cual contiene informacin acerca de los componentes del hardware y las interrupciones
usadas por los dispositivos especficos.
2) Se crea el entorno del Clone Control Set. Se crea copiando el valor del registro almacenado
en HKEY_LOCAL_MACHINESYSTEMSelect. Estos datos nunca sern modificados y deben

entenderse como una copia idntica de los datos de configuracin de la mquina y por tanto,
no reflejar ningn cambio realizado durante la fase de arranque.
3) Carga e inicializacin de los controladores de dispositivos. Despus de crear el Clone control
set el kernel inicializa los drivers de bajo nivel que se han cargado durante la fase de carga del
ncleo. El ncleo busca la clave HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices
para localizar los controladores de dispositivos con el valor 0x1 en la entrada Start. Al igual que
en la fase de carga del ncleo el valor de la entrada Group especifica el orden en que sern
cargados. Estos controladores se inicializan en el momento en que son cargados.
Si ocurre un error durante la carga e inicializacin de uno de estos controladores, realizar la
accin que est especificada en la entrada ErrorControl del controlador de dispositivo.
Los valores posibles son:
0x0 (Ignorar)
La secuencia de inicio ignora el error y contina sin sacar ningn mensaje.
0x1 (Normal)
La secuencia de inicio saca un mensaje, pero ignora el error y contina la carga.
0x2 (Severo)
La secuencia de inicio falla y contina, pero usando el juego de control de la Ultima
configuracin buena conocida. Se ignora el error y contina.
0x3 (Crtico)
Igual que la anterior, pero si en este caso el error vuelve a suceder, la Ultima configuracin
buena conocida se detiene la secuencia de inicio con un mensaje de error.
Los valores de ErrorControl aparecen en el registro bajos las subclaves
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesNombre_del_servicio_o_dispositi
voErrorControl
4) Arranque de los Servicios. Despus de que el Kernel cargue e inicialice los controladores de
dispositivos, el programa Session Manager (SMSS.EXE) arranca estos subsistemas y servicios
de Windows. SMSS ejecuta las instrucciones de las claves: BootExecute, Memory
Management, DOS Devices y las subclaves del Subsytem.
BootExecute.
Ejecuta los comandos de esta clave antes de arrancar ningn servicio.
Memory Management Key.
Crea la informacin del fichero de paginacin necesario para el Virtual Memory Manager.
DOS Device Key.

Crea los enlaces simblicos (links) que direccionan ciertas clases de comandos al componente
correcto del sistema.
SybSystems key.
Arranca el subsistema Win32, el cual controla toda la entras / salida (I/O) y los accesos a la
pantalla de video y posteriormente arranca el proceso de WinLogon.
LOGON:
El proceso de Logon comienza al finalizar la fase de inicializacin del Kernel. El sistema
automticamente arranca el programa WINLOGON.EXE, el cual arranca el Local Security
Authority (LSASS.EXE) y nos muestra la pantalla de Logon. Se puede arrancar en este
momento aunque Windows no haya terminado de inicalizar los controladores de dispositivos
(drivers) de la red.
Posteriormente, el controlador de servicios (Service Controller) ejecuta y realiza una bsqueda
final en la clave Services del registro, buscando los servicio con un valor 0x2 en la entrada.
Estos servicios, incluyendo el servicio de Workstation y el servicio Server, son marcados para
cargarse automticamente.
Los servicios que son cargados durante esta fase estn basados en los valores de la clave
DependenOnGroup
o
DependOnService
de
las
entradas
en
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices.
El arranque de Windows no se considera finalizado y correcto hasta que el usuario se haya
conectado. Despus de este Logon correcto, el sistema copia el Clone Control Set a las claves
de LastKnownGood.

You might also like