We've come to expect that our computer hardware will be upgradable to at least one new operating system version, not to mention able to add the myriad of security updates and patches that come out over a platform's life. Since we tend to view smartphones as small computers, we carry that expectation over to our mobile devices. But, it isn't quite so simple for phone manufacturers.
Perhaps the easiest computer to update is a Mac. Only one company makes the hardware for it, and peripherals are tightly controlled, compared to the rest of the industry. Apple's updates know exactly what to expect as they get installed. Windows PCs are more difficult, but still manageable as long as hardware vendors stick to the specs laid out by Microsoft. PCs also have comparatively infinite resources to handle an upgrade, compared to a phone. Service packs are several hundred MB and platforms are several GB, some of which is code designed to adapt the update to your specific machine. If your PC should have something that the update cannot handle, it can usually be disabled temporarily, or the update can go online to see if the necessary files are in Microsoft's online Windows Update database.
With phones though, the update has to know exactly what it is going to hit when installing. It cannot have dozens of video drivers and then pick the right one during the install, for example.
Again, Apple seems to have it easy compared to the competition. They sell one phone and it usually has two options. 1) How much memory do you want? 2) What color: black or white? The update doesn't care about color, and ROM storage doesn't impact the upgrade process much, if at all. Now, I've oversimplified it a bit, as there are GSM and CDMA radios, and the updates have to be tailored to several generations of the iPhone, but you get the idea--the potential options are limited.
Windows Phone is more complex. Microsoft has its Chassis 1 spec, which lays out certain requirements, but the hardware manufacturer still has some freedom to tweak the phone to differentiate it from the competition. Within Windows took a look at how the Mango update went. You'd think there would be one update needed per phone, perhaps two if there were CDMA versus GSM issues, but you'd be wrong. Take the Samsung Focus as an example. There are four different flavors of that first-generation device and anyone with a Focus knows Microsoft had a bit of a hiccup dealing with the 1.3 and 1.4 versions. Each manufacturer has similar issues. When you look at the 11 models out before Mango shipped, and then consider all of those subsets of devices and versions, it isn't hard to imagine Mango had to target 35-50 different phones and know exactly what was on each one.
Microsoft has it easy, though, compared to Android updates. Android--far and away--has the worst record for having users one, two, and even three generations behind. Some of this has to do with carrier or manufacturer laziness, but fragmentation is also to blame. Android is the Wild West when it comes to customization, both in hardware and software. It makes for a great phone when you open the box, but it also makes for a difficult process to get upgrades ready to go.
Take a look at the latest Ice Cream Sandwich 4.0 upgrade for Motorola devices. Because there is no minimum spec for Android, what works great with Gingerbread may be a dog when Ice Cream Sandwich gets loaded, so right off the bat your new phone may never get an upgrade. If it works well according to Motorola, it still has to work with chipset vendors like Qualcomm and nVidia to make sure the Ice Cream Sandwich bits for their hardware work with the rest of the software on the phone. When all of that is done, Motorola can then start working on their own special sauce, which includes MotoCast and Smart Actions. When all of that is done, it goes to the carrier for certification to test the upgrade process.
Sony Ericsson has gone into some detail on the process from its side as well, focusing heavily on obtaining certifications for various components like Wi-Fi, Bluetooth, and other radio stacks. Everything has to be recertified with a new OS upgrade. Sony Ericsson says this is the most time-consuming part of the process and one that custom ROM burners get to sidestep.
Quality is another issue manufacturers have to deal with. The upgrade experience has to go smoothly. Each one that doesn't costs the carrier money in support calls. Again, custom burners don't worry about this. You use a custom ROM and you are on your own if the update goes south. Your carrier won't help.
You could be a while waiting for Android 4.0, if you get it at all. If you don't get it, it may have nothing to do with your phone, either. It could just be the manufacturer decided to skip your model and focus resources on new devices that can be sold for additional revenue.