Si parla molto di partizioni Android che si possono trovare con Google. A volte posso trovare riferimenti a GPT nella documentazione per processori mobili o su sviluppatori XDA (dove ho appreso che alcuni dispositivi usano GPT come schema). A parte questo, non si discute molto su ciò che i dispositivi Android utilizzano per archiviare le informazioni sulla partizione. Ci sono eccezioni: so che alcuni dispositivi utilizzano il metodo basato sulla riga di comando del sottosistema MTD, come alcuni dei precedenti dispositivi HTC, e so che i dispositivi Qualcomm sembrano utilizzare una tabella delle partizioni GUID.
Se le partizioni di un dispositivo sono rappresentate da nodi dispositivo che iniziano con mtdo mtdblock, allora Linux riceve le informazioni sulla partizione dagli argomenti di avvio. Se le partizioni sono rappresentate da nodi dispositivo che iniziano con mmcblk, lo schema di partizione è ambiguo. Potrebbe utilizzare una tabella delle partizioni GUID, ma il problema è che la tabella dovrebbe iniziare dal primo settore, che è anche il luogo in cui risiedono tutti i bootloader di primo livello nella mia esperienza.
Proprio come mtdsi trovano le informazioni sulla partizione sui dispositivi i cui nodi iniziano con le partizioni /proc/mtd, sui dispositivi su cui iniziano i nodi dei dispositivi mmcblk, le stesse informazioni possono (solitamente) essere trovate su /proc/emmc. Perché eMMC, un tipo di dispositivo di archiviazione, è trattato come un'alternativa a MTD, che è un'interfaccia per accedere all'archiviazione flash, non lo so. Ma questa pagina su GitHub sembra implicare che le informazioni sulla partizione per i dispositivi con /proc/emmcnon siano raccolte in una tabella come GPT.
Quella stessa pagina sembra anche dire che i kernel avviati da U-Boot espongono le partizioni in modo diverso rispetto a MTD o GPT. Ecco il passaggio:
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.
Quella frase è resa insignificante dal bit sull'accesso sequenziale. Forse qualcuno può spiegarlo meglio.
Quindi, quanto è comune il GPT sui dispositivi Android? Non ho visto alcun riferimento al partizionamento sul sito Web degli sviluppatori Android. Se i bootloader sono effettivamente archiviati dopo la tabella delle partizioni, significa che i chip sono compatibili con GPT?
fdisk -l /dev/block/mmcblk0. A proposito, questa discussione può essere utile: El Grande Partition Table Reference