El boot.img
que es responsable de arrancar Android, tiene sus scripts de inicio incrustados en el disco RAM de la actual boot.img
que monta los tabiques en los respectivos /data
, /cache
, /system
puntos de montaje respectivamente.
Alterando los guiones de inicio para golpear la tarjeta SDCard, podría llevar a un sistema inestable, además, reduciendo la vida de la tarjeta SDCard a través del desgaste de la misma - ¿por qué?
El núcleo al arrancar, se está cargando desde el /
que está dentro de la misma partición que la boot
de ahí la necesidad de que el disco RAM esté presente junto con él. Es eso, lo que se carga en la memoria - un sistema de archivos temporal, para que los guiones de inicio se lean y se ejecuten. Una vez que se establecen los puntos de montaje, se retira el disco RAM y, por lo tanto, el sistema de archivos temporal, un disco RAM, se "voltea" a las particiones reales en una etapa posterior durante el arranque.
Aquí es donde entra el Disco RAM, sólo temporalmente, es a través de él que todo el proceso de arranque puede ocurrir.
El huevo y la gallina es esto - el núcleo antes del arranque, no tiene ni idea de qué particiones hay!
No sólo eso, codificando duramente la tarjeta SDCard en el parámetro de inicio del kernel, que es una opción específica que puede ser pasada al kernel en el arranque en la que altera el procesamiento del entorno del kernel.
El desgaste de la SDCard se incrementaría significativamente, y no sólo eso, todo el ecosistema de Android cambiaría drásticamente, las API han definido el almacenamiento interno y el almacenamiento externo - por lo que podría llevar a la confusión en cuanto a dónde almacenar sus propios proveedores de contenido para los contactos, etc, "¿Estamos sentados en un almacenamiento externo o interno?" Desde la perspectiva del propio Android, tened en cuenta que los proveedores de contenido en sí se alojan en el almacenamiento interno y, desde una perspectiva general, es una convención estándar de facto para los sistemas de archivos de Android implicados.
Así que para resumir, no creo que eso sea posible, sin descartar tampoco su imposibilidad, pero si se puede hacer, lo más probable es que esté íntimamente ligado al propio teléfono, más o menos, lo que los fabricantes ponen ahí desde una perspectiva de tipos de formato de partición (yaffs, emmc, LinusStoreIII, y más importante, el mecanismo de manejo de SDCard desde el punto de vista del kernel/hardware será diferente - estoy hablando de diferentes direcciones IO aquí) y no sólo eso, difiriendo los tamaños de las particiones también, esto haría que todo el concepto de Android - no exactamente portátil tampoco debido a los scripts no estándar que se encuentran dentro del propio disco RAM.