updated 04:05 pm EDT, Thu April 8, 2010
Hardware limits dictate iPhone 4 limits
Apple's unveiling of iPhone 4.0 has already stirred controversy by cutting multitasking for all older iPhone and iPod touch models; some have accused Apple of forcing upgrades. The truth, however, is that there are very real hardware limits that make multitasking impractical. Having experience with multiple platforms, Electronista can explain just why Apple made the hard call to drop the important feature on most of its older devices.
More than anything, multitasking depends most heavily on RAM. An app running in the background will need at least a small slice of memory to keep running. The problem with the iPhone 3G and the second-generation iPod touch (including the 2009 8GB model) is that there simply isn't much. Both only have 128MB to work with, which is low by modern standards and could push some of these devices to the breaking point. Memory-hungry apps like We Rule could take as much as a quarter of the RAM just for themselves; even with the controlled multitasking in iPhone 4.0, it could still take already scarce resources away from basic functions. The iPhone 3GS and latest iPods have 256MB of RAM, and while this won't be perfect, there should be much more headroom.
Processor speed is also a noticeable, if less critical, component. The leap from the iPhone 3G's 412MHz chip to the iPhone 3GS' (and third-run iPod's) 600MHz ARM Cortex-A8 can't be understated: just about every task runs faster with the new architecture and higher clock speed. That already has an impact on the current iPhone OS, but with multitasking, any speed or slowness is magnified: the CPU not only has to handle whatever's running in the foreground but devote a small amount of its time to the background. While the iPhone 3G could likely handle some tasks in the background without fault, others would likely bog it down. At least in theory, newer Apple devices should make that almost unnoticeable.
While we certainly like all features being available to as many phones as possible, we've seen the consequences of what happens with borderline specs when multitasking comes into play. Nokia's N97 has been the most frequently cited example: when it shipped last summer, it was criticized for being too slow for the price precisely because its CPU and RAM -- both very similar to the iPhone 3G -- weren't up to the load the Symbian OS and its apps demanded. The N97 mini and the N900 were virtually rushed out the door as a result.
Android hasn't been immune, either. While most phones are well-equipped, the original T-Mobile G1 and early versions of the HTC Magic had little enough RAM (192MB) and processor speed (a more than year-old 528MHz Qualcomm chip) that they would very noticeably slow down as more apps were left open. It should be telling that the Nexus One and Evo 4G have 512MB and even 1GB of RAM on top of their 1GHz processors; depending on the tasks, it can take that much to guarantee smooth performance in all conditions.
In many ways, the feature cut for older phones was inevitable. Eventually, certain features were simply going to be impossible on older hardware, and Apple had to make a decision to either drop features on some devices or strip them down to where they work everywhere. Given that multitasking is one of the most heavily requested features in the iPhone's brief history, it's not entirely surprising that Apple decided to provide the feature for a few at first. We can only hope that it's as well executed as Apple has promised.