11 votos

¿La mayoría de los dispositivos Android utilizan GPT como esquema de partición?

Se habla mucho de las particiones de Android que se pueden encontrar con Google. A veces puedo encontrar referencias a GPT en la documentación de los procesadores móviles o en XDA Developers (donde he aprendido que ciertos dispositivos utilizan GPT como su esquema). Aparte de eso, no hay mucha discusión sobre lo que los dispositivos Android utilizan para almacenar información de las particiones. Hay excepciones: Sé que algunos dispositivos utilizan el método basado en la línea de comandos del subsistema MTD, como algunos de los dispositivos anteriores de HTC, y sé que los dispositivos de Qualcomm parecen utilizar una tabla de particiones GUID.

Si las particiones de un dispositivo están representadas por nodos de dispositivo que empiezan con mtd o mtdblock entonces Linux recibe la información de la partición de los argumentos de arranque. Si las particiones están representadas por nodos de dispositivo que empiezan con mmcblk entonces el esquema de partición es ambiguo. Podría estar usando una tabla de partición GUID, pero el problema es que la tabla tendría que empezar en el primer sector que es también donde todos los cargadores de arranque de primera etapa residen en mi experiencia.

Así como la información de las particiones de los dispositivos cuyos nodos de partición comienzan con mtd se puede encontrar en /proc/mtd en los dispositivos donde los nodos del dispositivo comienzan con mmcblk la misma información puede (normalmente) encontrarse en /proc/emmc . Por qué el eMMC, un tipo de dispositivo de almacenamiento, es tratado como una alternativa al MTD, que es una interfaz para acceder al almacenamiento flash, no lo sé. Pero este en la página de GitHub parece implicar que la información de la partición de los dispositivos con /proc/emmc no se reúne una mesa como GPT.

Esa misma página parece decir también que los núcleos iniciados por U-Boot exponen las particiones de una manera diferente a MTD o GPT. Aquí está el pasaje:

Since MTK devices use the uboot mechanism, partitions including boot and recovery, are not revealed as separate partitions, but rather accessed sequencially by size and start parameters.

Esa frase no tiene sentido para mí por la parte del acceso secuencial. Tal vez alguien pueda explicarlo mejor.

Entonces, ¿qué tan común es el GPT en los dispositivos Android? No he visto ninguna referencia a la partición en el sitio web del desarrollador de Android. Si los cargadores de arranque se almacenan después de la tabla de particiones, ¿significa eso que los chips son compatibles con GPT?

0 votos

Por lo que sé, la mayoría de los dispositivos Android utilizan GPT. Puedes comprobarlo fácilmente con fdisk -l /dev/block/mmcblk0 . Por cierto, este hilo puede ser útil: Referencia de la tabla de partición de El Grande

0 votos

@GokulNC He visto ese hilo. Es uno de los que yo comentaba. Los dispositivos que utilizan el subsistema MTD, que parece ser un número decente de los primeros smartphones Android, sin embargo, no utilizan una tabla de particiones. En esos casos, puede haber un MBR almacenado en el primer sector/bloque de la memoria interna si la ROM de arranque del SoC está diseñada con eso en mente (el cargador de arranque de la primera etapa en los dispositivos basados en OMAP comienza 512 bytes adentro, por ejemplo).

0 votos

¿las tablas de partición tienen que estar en el primer sector? ¿tal vez un SoC pueda arrancar desde el último sector también, como la lectura del sector inverso?

5voto

lakshmipathi Puntos 122

Si no me equivoco, el GPT es bastante común. Es un formato bastante avanzado que el MBR. En mi Kitkat tienen 36 particiones. GPT tiene características como tabla de particiones de respaldo y nombre/bandera, soporta discos más grandes que el MBR. (edit:Android 6.0 introduce la capacidad de adoptar medios de almacenamiento externo que utiliza GPT como formato de partición por defecto).

El dispositivo puede o puede ser consciente de GPT. Típicamente con el MBR los primeros 512 bytes se usan para la tabla de partición. Cuando usamos GPT , no almacena ningún dato en el 1er sector. En su lugar marca como protector el MBR. De modo que si el dispositivo que busca el MBR se queja no hay partición.

Si le interesa un documento en profundidad:

0 votos

Estimado Downvoter: ¿la razón?

0 votos

El segundo párrafo contiene varios errores.

0 votos

¿Puede señalar el error exacto?

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X