STOCK Hboot
The Desire has 3 internal partitions using up 437Mb on its 512ish Mb internal nand. They are named /system, /cache and /data
- /system (250Mb) holds the OS files
- /cache (40Mb) is there to hold HTC OTA updates before they are flashed to /system
- /data (147Mb) is space for your downloaded apps
As we all know, /data on a stock desire fills quickly. It is a pathetic 147Mb, of which 20Mb is reserved for the dalvik cache leaving you with just 127Mb for downloaded apps.
CUSTOM A2SD+ ROMS
A script(s) is set up so that the Desire will essentially see an ext partition on the SD Card as an extension of the internal /data partition. This partition is much larger (512Mb to 2Gb), and so apps can be stored there as well, note that this is not a perfect system and some space on the internal /data needs to be used for the dex files, private data directories, and native shared libraries. However because custom ROM’s are “deodexed” the dalvik cache now needs to be MUCH bigger, like 80-100Mb, so this too is usually moved to run on the SD card by the scripts. If it is active and working properly apps will dynamically move themselves around the /data and sd-ext areas according to the scripts, no user input necessary.
CUSTOM CM7 Hboot
Realise now that most of the /system partition is just .apk files sitting doing nothing (firstboot allows all system .apk files to be loaded into the dalvik cache, they then “live” there, and are never accessed from the /system partition again). So we move and symlink all the .apks from /system to sd-ext. This means we can shrink the size of /system because we don’t need all that extra space anymore, so too we can shrink /cache, since we will not be receiving OTA updates with a custom ROM. This allows us to make our /data partition a nice and beefy 302Mb. Large enough now to hold the bloated dalvik cache of a custom ROM, and still with more space than stock room for apps. This technique is commonly referred to as Data++. The allocations for the CM7 Hboot are:
- /system (130Mb)
- /cache (5Mb)
- /data (302Mb)
Checking Memory Usage
To see how memory is used on your Desire, load Titanium backup, it has a nice little graph at the bottom which will show available space on
- System ROM (/system partition)
- Internal (/data partition)
- SD card (your FAT32 area of the SD card)
- SD card (a2sd) (the ext partition on your sd card)
Common Hboot layouts
Name /system /cache /data
- Bravo Stock 1.8 250M 40M 147M
- Bravo N1Table 145M 95M 197M
- Bravo Data++ 180M 40M 217M
- Bravo Oxygen 90M 10M 337M (no longer used, replaced by r2)
- Bravo Oxygen r2 100M 5M 332M
- Bravo CM7 130M 5M 302M (no longer used, replaced by r2)
- Bravo CM7 r2 145M 5M 287M