On Thu, 2008-02-28 at 17:20 +0100, Tomeu Vizoso wrote: > > Right, I think there's some discussion going on about which view > should be the default. > > As changing that will be rather trivial code-wise, I guess we can > defer that decision.
I have a proposal that might be relevant, based on a discussion with Chris Ball about "hibernation" (i.e. suspend-to-disk). Hibernation essentially saves all of userspace RAM into a file on disk, along with the list of active processes, then shuts down. On the next boot, it simply reads that file back into memory and continues those processes. This is a very desirable behavior, as it allows one to pause one's work and consume precisely zero power. However, hibernation can require a large amount of disk space, and is relatively fragile in relation to network connections and hardware state. I would like to propose a form of fake hibernation, implemented at the level of Sugar. If the user clicks the "hibernate" button, Sugar should tell all open activities to Keep their state, and also save: the list of open activities, which one was active, any clipboard objects, and which view was in the foreground. On the next boot, Sugar can simply restart all open activities from that latest checkpoint, "activate" the active activity, show the correct view, and recreate the clipboard. This approach would be far more efficient than hibernation, and IMHO more reliable as well. Fake hibernation relies on a standard reboot sequences, so boot-time optimization would be very valuable. Open questions: 0. Should "fake hibernate" be a user-visible option? 1. Should "fake hibernate" be the default shutdown behavior? Pro: makes system use feel very continuous. Con: requires manual shutdown of every activity. Potentially problematic interaction with memory pressure and OOM under current implementations. 2. Should OHM automatically trigger a "fake hibernate" under certain conditions, such as very low battery, or screen closed for 30 minutes and no mesh contacts made? _______________________________________________ Sugar mailing list [email protected] http://lists.laptop.org/listinfo/sugar

