Computer Science Department
School of Computer Science, Carnegie Mellon University


Smart Phones as Self-Cleaning Portable Caches
for Infrastructure-Based Mobile Computing

Stephen Smaldone*, Benjamin Gilbert, Matt Toups
Liviu Iftode*, Mahadev Satyanarayanan

July 2008


Keywords: Smart phones, 3G phones, iPhone, PDA, Internet Suspend/Resume®, OpenISR®, mobile computing, pervasive computing, virtual machines, VMware, VirtualBox, Xen, KVM, Horatio, operating systems, distributed file systems, content addressable storage

An increasingly ubiquitous computing infrastructure promises mobile users an attractive "carry-nothing" computing model, in which powerful computers for personal use can be found anywhere, anytime. Since pure "carry-nothing" computing approaches can make users unacceptably dependent on the availability and performance of Internet connectivity, compromise solutions in which users carry their computing environment have been proposed in the literature. To make these approaches practical, and to outweigh the benefits of "carry-everything" models, a user's personal computing environment must be conveniently, efficiently, and reliably stored and transferred between the local computing infrastructure and centralized servers. Unfortunately, all currently proposed approaches fail to meet one or more of these requirements.

We present Horatio, a trusted personal assistant that enhances user experience in infrastructure-based mobile computing systems. Horatio runs on smart phones (or other smart personal devices, such as PDAs, handheld PCs, etc.), leveraging three key properties of these devices: (i) users carry them wherever they go, (ii) users place high levels of trust in them, and (iii) they are almost always connected to the Internet, albeit with varying and sometimes limited bandwidth. Horatio devices act as trusted allies in three ways. First, they cache users' personal computing environments and make them available even when servers are not reachable. Second, they ensure that any cache modifications will be eventually stored at servers. Third, they improve the performance of both saving and retrieving a personal computing environment.

In this paper, we present the initial basic design of Horatio and a number of near-term future directions for this project. We describe how Horatio: (i) extends the Internet Suspend/Resume® system by introducing new state transfer protocols based upon the separation of control and data state, (ii) cleans cache state asynchronously without user intervention, and (iii) reduces both the suspend and resume latencies of a user's personal computing environment while maintaining high levels of availability and reliability.

24 pages

*Department of Computer Science, Rutgers University, Piscataway, NJ

Return to: SCS Technical Report Collection
School of Computer Science

This page maintained by