doc:appunti:hardware:android_partitions
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
doc:appunti:hardware:android_partitions [2020/01/17 09:31] – [Web References] niccolo | doc:appunti:hardware:android_partitions [2020/01/17 12:41] (current) – removed niccolo | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Android Partitions on MTK Devices ====== | ||
- | ===== NAND Flash vs eMMC Flash ===== | ||
- | |||
- | **NAND flash** can only be read in pages, some bits in a page may be wrong and need to be corrected by an error correction mechanism. | ||
- | With NAND flash the OS and device drivers are responsible to handle these issues. | ||
- | |||
- | **eMMC Flash** combines NAND memory with a built-in controller, that handles most of the things you have to take care of when dealing with NAND flash. | ||
- | |||
- | ===== EMMC Regions ===== | ||
- | |||
- | **EMMC_BOOT_1** and **EMMC_USER** | ||
- | ===== Inspecting partitions on the command line ===== | ||
- | |||
- | The following commands were executed on a **ZTE Blade A610**, running **Android 6.0**, via the **adb shell** command line. The phone was rooted so that the **su** command was available. | ||
- | |||
- | ==== cat / | ||
- | |||
- | < | ||
- | cat / | ||
- | major minor # | ||
- | |||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | </ | ||
- | |||
- | ==== sgdisk ==== | ||
- | |||
- | The **/ | ||
- | |||
- | < | ||
- | sgdisk --print / | ||
- | Disk / | ||
- | Logical sector size: 512 bytes | ||
- | Disk identifier (GUID): 00000000-0000-0000-0000-000000000000 | ||
- | Partition table holds up to 23 entries | ||
- | First usable sector is 1024, last usable sector is 30776319 | ||
- | Partitions will be aligned on 1024-sector boundaries | ||
- | Total free space is 0 sectors (0 bytes) | ||
- | |||
- | Number | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | 10 142336 | ||
- | 11 162816 | ||
- | 12 163840 | ||
- | 13 167936 | ||
- | 14 180224 | ||
- | 15 196608 | ||
- | 16 206848 | ||
- | 17 217088 | ||
- | 18 219136 | ||
- | 19 284672 | ||
- | 20 360448 | ||
- | 21 | ||
- | 22 | ||
- | 23 30743552 | ||
- | </ | ||
- | |||
- | ==== / | ||
- | |||
- | The partition **/ | ||
- | |||
- | The actual Linux device content starts with the characters **EMMC_BOOT**. It seems that it is an header of **2048 (0x800) bytes** and the actual preloader follows that header. FIXME Some stock ROMs include the preloader image, without that header. But if you readback the preloader partition using **SP Flash Tool**, you get an image with that heder included. | ||
- | ===== Web References ===== | ||
- | |||
- | * **[[http:// | ||
- | * **[[http:// |