One of the reasons that the iPhone operating systems to date didn't include widespread multitasking-the capability to run multiple applications simultaneously-is that it takes a bite out of battery life. Apple, apparently, has decided that it has solved the problem, at least to the extent necessary to introduce the feature.
Of course, the company had to, since other smartphones do multitask and its subscribers were screaming for the feature. In general, the iPhone 4 announcement was well chronicled. The slides CEO Steve Jobs displayed are available in a number of places, including Gizmodo, while eWEEK does an admirable job of highlighting the features that are being introduced, which appear to significant.
One of the bigger pieces of news to emerge yesterday was that the iPhone finally is multitasking. It's important, however, to understand precisely what the situation was and what the OS now will do. It's inaccurate to say that previous iPhone OSes never ran more than one application at one time. In older versions of the OS, the ability to run more than one application (which Justin Lee at Tech65.org says Apple refers to as a "service") was present. It just was restricted to Apple apps and was not available to developers, who consequently couldn't write applications for the public to do so.
The change isn't as dramatic as some reports suggest. Lee notes that the iPhone OS 4.0 is allowing seven processes to multitask. His analysis focuses on what this capability means to developers -- or what he speculates it does, since he hasn't seen the software development kit. In doing so, he offers insight that is valuable to anyone trying to gauge the impact of the new OS on battery life.
In laymen's terms, Lee suggests that a lot of what Apple is doing is not true multitasking. Rather, it is enabling an application to create an alarm or notification when triggered by an action. For instance, Lee takes a look at the how VoIP operates on the iPhone OS 4.0:
This, in fact, is also not a full fledged application at all, but a small part of code that "reacts" to an action by the OS (namely the voice service) to load up the application and "receive" the action to do something about it.
Most of the other services on iPhone OS 4.0 follow this procedure, or something fairly close. That's not necessarily a bad thing, since it will give users the functions they want, while not imposing as draconian a penalty on the battery as a continuously running application would. It's a win-win.
It all comes back, in a strange way, to the fact that the guy running Apple is very clever. Concludes Lee:
What does this all mean? Steve Jobs has redefined what multitasking actually means and converted the meaning to a consumer terminology. Consumers do not want true multitasking, but a pseudo-version of it with all the benefits of multitasking, and also the benefits of a fast and responsive OS.
The bottom line, then, is that Jobs and Apple may not be giving the public the full multitasking it demands. But they may be giving it something far more important: The services and functions it wants.