This post is in response to yesterday’s article that claimed the G1 would not receive future Android updates like Donut and Eclair. T-Mobile responded they would work with Google to introduce “future software updates”, but that still doesn’t explain how G1 owners will get Donut.
To begin, let’s look at the sizes for the default partitions of the T-Mobile G1. These sizes are defined by your device’s secondary program loader(SPL) and do not change.
The default partition sizes of a T-Mobile G1:
- dev: 49460K
- sqlite_stmt_journals: 4096k
- system 69120K
- data: 76544K
- cache: 69120K
The largest partition is data which is where all your apps are installed. Many users have experienced this filling up after installing 40-50 apps. The next largest partitions are system and cache. System is where the Android operating system is installed and cache is where OTA updates are stored. Note they are the same size. The cache needs to remain large so that system updates can be downloaded and stored on the device before flashing.
So how full exactly is the system partition where the Android OS is installed? Out of an available 69120k of storage, 68780k is being used as of the last official T-Mobile update(CRC1).
I tried to make a pie chart, but it was a solid circle. Of the total available space in the system partition, 99.5% is being used. This means there is only 340K of space left for future system updates.
As mentioned in my previous post, Google had an extremely difficult task of making Android 1.5 (Cupcake) even fit on the G1.
“Where the situation is really tricky is that the system partition on the US G1 was already filled to the brim with cupcake, and we were routinely flirting with build sizes that were a few dozen kB under the limit (or several MB over…), which means that even small changes to the core platform could very easily push the system size over the limit and staying under the limit took some effort”. Jean-Baptiste Queru, Android Software Engineer
If Cupcake barely fit on the G1, how do you expect Donut or Eclair to be installed? The only possible fix is to rewrite the partition table to expand the system storage. This would require flashing a new SPL which would erase all data on the device. I see no way T-Mobile would ever release an OTA update that flashed the SPL and erased all the partitions.
Could Google and T-Mobile technically find a way to update the G1? Yes, they could engineer an update method to back data up to the SD card, but I just don’t see it happening. The fact remains that the internal storage space is physically limited and this will never change. It was a major oversight by someone and we have to live with it.
Others have suggested that Google should allow apps to be installed on your SD card. Again, I never see this happening. We know for sure this will not happen anytime soon because Donut and Eclair are already feature frozen and do not include this request.
What about the myTouch 3G?
The picture for the myTouch 3G is much better. The sytem partition has been increased about 33% over the G1 and sits around 90 MB.
The default partition sizes of the myTouch 3G:
- dev: 49460k
- sqlite_stmt_journals: 4096k
- system: 92160K total
- data: 302848K
- cache: 81920k
Out of the 92160K in available space, 71660K is used and 20500k is free. This means there is about 20 MB of space left for future updates to the operating system. It is highly likely that the myTouch 3G will get more updates, but for how long will that be the case. Will that 20 MB of free space be enough to last a full 2 years of updates? Time will tell.
Please understand this post is not intended to scare you. I just want to expose the situation now, so you are ready when the next update drops. We loved the discussions in the previous post and welcome your feedback. How do you think Google and T-Mobile should handle the situation?