Root

Android, aunque sea un sistema operativo basado en Linux y por lo tanto de código libre, tiene una protección para que los usuarios no pueda modificar distintos parámetros de importancia de los dispositivos; esto se hace para proteger la integridad del sistema. Para quitar esta seguridad necesitamos darnos ciertos privilegios, esto se conoce como "rootear" el sistema, aunque esa palabra no exista, y la definición correcta sería darnos accesos de super usuario o accesos de root.

Para darnos estos accesos necesitaremos de algunos programas, por ejemplo, para la versión 2.2 (Froyo) de Android podemos utilizar z4root, el cual es compatible con muchos dispositivos.

Nota: Esto es solo informativo, no quiere decir que teniendo la versión 2.2 de Android podamos ser root con este programa, depende del celular que tengamos.

Existen muchos programas para dar accesos de root, por ejemplo, SuperOneClick, Gingerbreak, y z4root, aunque sé que hay varios más.

ROM

Cuando hablamos de una ROM, estamos hablando de una memoria de solo lectura. Esto viene desde fines de los años 80, cuando las PCs tenian su sistema operativo grabado en una de estas memorias, para actualizar el sistema operativo necesitábamos cambiar la memoria ROM.

En Android, una ROM es un archivo en formato zip que contiene todo los datos del sistema operativo, al instalar una ROM nueva, podemos darle a nuestro dispositivo funciones que originalmente no tenia, como por ejemplo, mejor administración de memoria RAM, habilitación de la partición swap, utilizar una parte de la tarjeta SD como memoria del telefono, etc...

Para poder instalar una ROM nueva en nuestros dispositivos necesitamos instalar antes un "Recovery".

Recovery

El Recovery es una parte del sistema que permite instalar una ROM. Los recovery que vienen de serie tiene muy poca ultilidad, por ejemplo, en los LG p500h, solo permite "reinstalar" la ROM original.

Esta parte del sistema se puede cambiar, instalando otro recovery que tenga más funciones, como por ejemplo instalar una ROM personalizada o particionar la tarjeta de memoria.

Los dos recovery más utilizados son ClockworkMod y AmonRa, la forma de instalación de estos puede variar dependiendo el telefono.

Kernel

El kernel es el que se encarga de administrar todos los recursos del sistema, todo el hardware y sus funciones. Instalando una nueva versión del kernel podemos llegar a obtener muchos mejores resultados en la administración de nuestro celular.

El kernel es el nucleo del sistema operativo, como en la mayoría de las versiones de linux (desconozco si hay alguna que no), el kernel se encuentra separado del sistema operativo en sí, de está forma podemos actualizar el kernel sin necesidad de instalar nuevamente el sistema operativo. Esto en un celular es muy util, ya que podemos actualizar el kernel sin necesidad de perder los datos que teníamos. Por ejemplo, algunos celulares tiene por defecto un kernel que tiene problemas con el driver touch, si encontráramos alguno que gestione mejor este recurso podríamos actualizarlo y no perderíamos datos.

Para actualizar el kernel debemos tener instalado un recovery diferente al original y tener el kernel guardado en nuestra tarjeta de memoria, la forma es muy similar a instalar una nueva ROM