Es wird viel über Android-Partitionen gesprochen, die bei Google zu finden sind. Manchmal finde ich Verweise auf GPT in der Dokumentation für mobile Prozessoren oder auf XDA-Entwicklern (wo ich erfahren habe, dass bestimmte Geräte GPT als Schema verwenden). Abgesehen davon gibt es nicht viele Diskussionen darüber, was Android-Geräte zum Speichern von Partitionsinformationen verwenden. Es gibt Ausnahmen: Ich weiß, dass einige Geräte die befehlszeilenbasierte Methode des MTD-Subsystems verwenden, wie einige frühere Geräte von HTC, und ich weiß, dass Qualcomm-Geräte anscheinend eine GUID-Partitionstabelle verwenden.
Wenn die Partitionen eines Geräts durch Geräteknoten dargestellt werden, die mit mtd
oder beginnen mtdblock
, erhält Linux die Partitionsinformationen von den Startargumenten. Wenn die Partitionen durch Geräteknoten dargestellt werden, die mit beginnen mmcblk
, ist das Partitionsschema nicht eindeutig. Es könnte eine GUID-Partitionstabelle verwendet werden, aber das Problem ist, dass die Tabelle im ersten Sektor beginnen muss, in dem sich meiner Erfahrung nach auch alle Bootloader der ersten Stufe befinden.
So wie Partitionsinformationen auf Geräten, mit deren Partitionsknoten beginnen , auf Geräten mtd
zu finden sind /proc/mtd
, mit denen die Geräteknoten beginnen mmcblk
, finden Sie dieselben Informationen (normalerweise) unter /proc/emmc
. Warum eMMC, eine Art Speichergerät, als Alternative zu MTD behandelt wird, einer Schnittstelle für den Zugriff auf Flash-Speicher, weiß ich nicht. Aber diese Seite auf GitHub scheint zu implizieren , dass die Partitionsinformationen für Geräte mit /proc/emmc
nicht einer Tabelle wie GPT gesammelt.
Dieselbe Seite scheint auch zu sagen, dass von U-Boot gebootete Kernel Partitionen auf eine andere Weise als MTD oder GPT verfügbar machen. Hier ist die Passage:
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.
Dieser Satz wird für mich durch das Stück über den sequentiellen Zugriff bedeutungslos. Vielleicht kann es jemand besser erklären.
Wie häufig ist das GPT auf Android-Geräten? Ich habe auf der Android-Entwickler-Website keinen Hinweis auf Partitionierung gesehen. Wenn Bootloader tatsächlich nach der Partitionstabelle gespeichert werden, bedeutet dies dann, dass die Chips GPT-fähig sind?
fdisk -l /dev/block/mmcblk0
. Übrigens kann dieser Thread hilfreich sein: El Grande Partition Table Reference