At the "preview" of Mac OS X 10.7 Lion last week, Steve Jobs covered some of the more visible changes in the OS, such as the Mission Control window switcher and full screen apps. As the days go on and observers analyze what was shown and said, increasing focus is being put on what was not
discussed. One significant change includes a more iOS-like way of handling programs, allowing you to "pick up where you left off" rather than quitting and restarting. In addition to subtly changing how we use apps on the desktop, this functionality may lead to a more ground-breaking (or "revolutionary" as Apple would probably rather put it) shift in the future.
When Jobs talked about the iOS innovations that were being brought "back to the Mac," one of the more interesting ones was given short shrift. Jobs mentioned how apps in iOS "auto resume... they come up exactly where you left them," adding that the Fast App Switching technology that's used to simulate multitasking in iOS 4 "would be great on the Mac too," but not saying anything specific about it. This would be such a fundamental change to how programs are handled in Mac OS X or any other current desktop operating system that it's a little surprising it wasn't further discussed.
On iOS, when you press the Home button leave an app, it doesn't quit. Instead, it is "Backgrounded," going into a sort of "suspended animation." Except for certain specific apps - ones that play audio, do two-way voice communications (like the phone and VoIP apps) or use location services - the app stops receiving messages from the system or using CPU time. Its interface and state are flash-frozen, and when you relaunch the app or use something like Multifl0w to reactivate it, you are immediately returned to where you were when you last used the app. Though Jobs said nothing about how this is going to work on Lion, one indication comes from watching the Dock during various demos. The familiar "white light" on Dock icons - indicating which programs are running and which are not - was never seen, even when apps were launched. And although it was not explicitly stated at any point, this would seem to render the whole idea of quitting an app
obsolete, at least from a user point of view. The constraints on RAM are much less on a desktop computer than on a mobile device, and the need for real multitasking is greater: you want to keep getting your mail, for example, while you are doing other things, and users would widely reject something like an image processing program that could only do processor-intensive transforms when in the foreground. Alex Layne at GigaOM
theorizes that the resume functionality would allow running but unused applications to go into suspend mode and free up RAM.
Another possibility that was not discussed, but seems to be entirely workable with this technology, is the ability to take that frozen system state and move it from place to place like Han Solo in a block of carbonite
. Recall the Apple patent for "Grab & Go
" syncing of everything: in addition to saving files and media, it also included the ability to save program states and move them from one device to another. The patent application
explicitly described a scenario where "a kid may be playing a video game on the computer" and "a parent needs to use the computer," so the kid is able to "transfer the game save data to the standalone media player, where the game can be continued where the computer left off."
An Apple job listing earlier this year
sought engineers to work on an innovative feature of a future operating system that "has never been done before" and that would "truly amaze everyone." The ability to pick up on your iPad where you left off on your Mac Pro would definitely fit the bill, and though this may all be guesswork, it's certainly possible that Jobs didn't mention it because the feature still needs some work - and resources like, say, a massive data center
- to function properly.