14 Comments

Summary:

In my coverage of OS X Lion, I wondered how the app resume feature would work. I noticed that in the preview, the activity indicators in the Dock (those white dots) were all gone. Then I realized: There are no activity indicators in iOS.

osx-lion-feature

In my coverage of the OS X Lion preview Wednesday, I wondered how the app resume feature would work. I noticed that in the preview, the activity indicators in the Dock (those white dots) were all gone. Poof. I squinted at the image below until I was certain that my eyes weren’t playing tricks on me. Then I realized: You never see activity indicators in iOS.

See, no glowing white things!

If Apple’s goal is to bring the good from iOS into OS X, then this move makes sense. iOS’s multitasking behavior would allow you to open applications like normal until you run out of RAM, then the app resume model kicks in and applications will start suspending themselves in memory, available quickly if you need them, making activity indicators redundant.

This would give OS X a huge advantage over Windows. Imagine never running out of RAM again, and yet never having to quit an application again. The OS will manage it for you, just like in iOS. That’s what Apple’s aiming for here. The need to quit and start apps to begin with was only really a convention put in place because memory had to be managed in some way so that the user could control what got prioritized. An app resume feature eliminates that need.

The only problem is launching the applications fast enough to make the experience  perfectly mimic iOS. How would Apple do that? Using flash storage. Apple’s already using it exclusively in the MacBook Air, so I think we can expect a flash-only MacBook Pro in the future.

What do you think? Are you looking forward to an always-on future, or dreading it?

Related content from GigaOM Pro (sub req’d):

You’re subscribed! If you like, you can update your settings

You're subscribed! If you like, you can update your settings

Related stories

  1. I can see a few issues with suspend/resume in a desktop OS that simply dont exist in iOS.

    Firstly, iOS runs all applications maximized. This makes it very easy for it to suspend a background application without the user noticing, as none of the application is visible. This isnt the case for desktop operating systems. How would you suspend an application that has an active window showing? The only option I can see is to limit it to minimized applications.

    Secondly, iOS applications are considerably smaller than desktop applications, which can easily run into GBs of virtual size. Suspending a multi-GB application to disk could take an inordinate amount of time – although admittedly the SSD route would alleviate this somewhat.

    It’ll be interesting to see how Apple resolves these issues….

  2. “iOS’s multitasking behavior would allow you to open applications like normal until you run out of RAM, then the app resume model kicks in and applications will start suspending themselves in memory, available quickly if you need them, making activity indicators redundant.”

    Your explanation above doesn’t make sense. If you’ve run out of RAM, into what memory would an application be “suspending itself”?

    Every OS has to contend with finite memory space. On multitasking desktop OS’ (OS X, Ubuntu, Windows), the OS manages priority of CPU cycles for running applications. But they all deal with maxed-out RAM the same way – by paging least-accessed RAM out to a disk. On iOS, the oldest apps (used longest ago) are simply unloaded from memory as newer apps are opened and require it. Open enough apps on your iOS 4 device and you’ll find that choosing that first app from the far-right side of the row of “running” apps isn’t any different than if you opened it from the home screen — it’s having to be re-loaded.

    With Lion, the bet is that saving/resuming state from disk (when the machine goes to sleep) is fast merely due to the flash storage being so much more common. Even with a 7200 rpm drive (or a strategy like Seagate’s hybrid drives), the “lag” on resume is likely minimal for most smaller/utility apps… if you’re authenticating, it’s likely restored by the time you’ve logged back into the machine. And for save/resume on a running machine, there’s no reason it’s not handled like any other multitasking.

    1. “Your explanation above doesn’t make sense. If you’ve run out of RAM, into what memory would an application be ‘suspending itself'”?

      It would (presumably) suspend to disk, in a similar manner to how current OS’s swap out process memory to make room for more allocations.

      Infact, I cant really see how the proposed model differs from simply swapping out an entire application to disk and then re-reading when the application is next needed/launched. Kindof like system hibernation, but on a per application basis.

      Or maybe I’ve just drunk too much coffee :-)

      1. James … I don’t think it’s the coffee. You’re right and made the point in fewer words than I tried with. It’s likely not at all different from the usual model of swapping to disk. In fact, I think it’s mostly a matter of crafting the UI and the fullscreen-ness of apps that run this way to give the appearance that it works similarly to iOS.

        My main contention was with the author’s quote about how an application would simply “suspend [itself] into memory” when the OS runs out of RAM. And more ridiculously, that this was some “huge advantage” over Windows or any other OS. If there’s no RAM, what memory can it suspend to? It would page to disk, just like applications have done on OS’es (including Windows) for years.

        I love my Mac and OS X, but not every feature from Apple is magical, new, or represents a quantum leap of other OS’es. Sometimes, just “different” is enough.

    2. Notice I said “from memory”, not “from RAM”.

      The reason I think this will be a huge advantage over Windows is that you’ll never have to manage applications. No more slowdowns and no more hitting Cmd-Q.

      At least, that’s what I hope Apple accomplishes.

      1. I fail to understand the magic here. Care to explain it technically, not just conceptually? Where would apps suspend themselves into when the system runs out of RAM? They can’t just save their state into thin air.

      2. Most computer professionals think of “memory” as “main memory” or “random access memory”, not a disk. If you do mean disk, then this is already what every OS in use (including OS X and Windows) does. This is not new in any way. The only change would be adding flash (NAND) storage, but this is a hardware change, not an OS change, and any operating system will benefit from this.

      3. Please explain the difference between “memory” and “RAM”.

  3. The entire concept is pointless to me. Have we all become so drivin by convienance and laziness that we feel the need to somehow develop the means to keep from having to simply quit or launch an application based on need? And besides, I’m a power user, fairly advanced in terms of use and although I demand a lot of my Macs resources-I have rarely run out of RAM. My Mac consistently has no less than 12 user apps running at any given time with an uncanny ability to always be active and available when needed. The idea that this would somehow be better due to caching apps to memory seems poposterous. Have we not had virtual memory for years? The only way to vastly improve this technology is through the advancement of hardware suchas flash drive technology and new forms of RAM capable of greater capacity and speed.

    Enough, I’m typing this on my iPhone so I’ll need to cut my comments short… Something to think about.

  4. What bugs me the most about this is the apparent move away from a desktop environment, to something more like the iOS environment. I use a mac at work all day long, and I need to be able to get in and monkey with the settings on my programs, to install plugins, etc. If the OS goes the direction of basically sealing all of that off so I can’t touch it, then I’m done. I will have no more use for Apple products at that point, if it comes to that.

  5. I think that in general, most power users will simply fall back on “if I wanted an iPad I would have bought one” – and I couldn’t agree more.

    However, we’re basing a whole lot of discussion on a whole lot of thin air. More intelligent discussion is not to be had until next summer. Until then it’s just idle speculation and assumption.

  6. Louis Wheeler Sunday, October 24, 2010

    you don’t seem to know much about Macs. Mac OSX doesn’t run out of RAM now. It has had Virtual Memory since 1998. You never have to quit applications and apps can even run in background. Windows Seven is decades behind Mac OSX in this.

    iOS is a very limited version of Mac OSX. It was hardware limitations which kept Copy and Paste, along with Virtual memory. off the iPhone. What Apple did was invent some cosmetic differences to satisfy some of the special needs of phones. It seems that Apple will be importing some of those new conventions to Mac OSX. This is fine if it unifies the OS. Eventually, the iPhone hardware will be robust enough to handle all of Mac OSX. But, it won’t be for several years.

  7. Another option for suspend/resume is to leverage the fast app switching API introduced in iOS 4.0. On quit, exit, or low memory the app receives a message telling it to save state. The state is serialized out to disk and the app is given the chance to restore state on startup. iOS doesn’t doesn’t drop app memory to disk just application object state. This is a lot less glamorous then never running out of ram but as has been stated OSes solved that problem long ago and OSX already does a good job.

  8. I’d hate to have this. As a power user I want control over when my apps are running or not.

    Moreover, imagine trying to work on a memory intensive song in Logic, running Photoshop and all of a sudden you’re frozen whilst Mac OS X realises it wants to go and serialise 2GB of Logic’s process memory onto a disk.

    iOS apps are tiny and also run on flash. The majority of computers are NOT flash.

Comments have been disabled for this post