Award Abstract # 1162447
CSR: Medium: A Virtual Smartphone and Tablet System Architecture

NSF Org: CNS
Division Of Computer and Network Systems
Recipient: THE TRUSTEES OF COLUMBIA UNIVERSITY IN THE CITY OF NEW YORK
Initial Amendment Date: May 31, 2012
Latest Amendment Date: July 28, 2015
Award Number: 1162447
Award Instrument: Continuing Grant
Program Manager: Marilyn McClure
mmcclure@nsf.gov
 (703)292-5197
CNS
 Division Of Computer and Network Systems
CSE
 Directorate for Computer and Information Science and Engineering
Start Date: September 1, 2012
End Date: August 31, 2016 (Estimated)
Total Intended Award Amount: $782,999.00
Total Awarded Amount to Date: $782,999.00
Funds Obligated to Date: FY 2012 = $187,001.00
FY 2013 = $192,999.00

FY 2014 = $197,999.00

FY 2015 = $205,000.00
History of Investigator:
  • Jason Nieh (Principal Investigator)
    nieh@cs.columbia.edu
Recipient Sponsored Research Office: Columbia University
615 W 131ST ST
NEW YORK
NY  US  10027-7922
(212)854-6851
Sponsor Congressional District: 13
Primary Place of Performance: Columbia University
NY  US  10027-6902
Primary Place of Performance
Congressional District:
13
Unique Entity Identifier (UEI): F4N1QNPB95M4
Parent UEI:
NSF Program(s): CSR-Computer Systems Research
Primary Program Source: 01001213DB NSF RESEARCH & RELATED ACTIVIT
01001314DB NSF RESEARCH & RELATED ACTIVIT

01001415DB NSF RESEARCH & RELATED ACTIVIT

01001516DB NSF RESEARCH & RELATED ACTIVIT
Program Reference Code(s): 7354, 7924
Program Element Code(s): 735400
Award Agency Code: 4900
Fund Agency Code: 4900
Assistance Listing Number(s): 47.070

ABSTRACT

Smartphones are increasingly ubiquitous. Many users are forced to carry multiple smartphones for work, personal, and geographic mobility needs. This research is developing Cells, a lightweight virtualization architecture for enabling multiple virtual smartphones to run simultaneously on the same physical device in a securely isolated manner. Cells introduces a new device namespace mechanism and novel device proxies that multiplex phone hardware devices efficiently and securely across multiple virtual phones while providing native hardware device performance to all applications. Virtual phone features include fully accelerated graphics for gaming, complete power management features, easy-to-use security and safety mechanisms that can control the availability of phone features transparently and dynamically, and full telephony functionality with separately assignable telephone numbers and caller ID support. Cells is implemented in Android, the most widely used smartphone platform, to transparently support multiple Android virtual phones on the same phone hardware. While the primary focus of this research is smartphone devices, the development of these ideas is also explored in the context of tablet devices.

The results of this research provide a foundation for future innovations in smartphone computing, enabling new uses and applications and transforming the way the devices can be used. This research promises to improve not just system security, but also user safety; especially for young people. Integrating this research with the CS curriculum provides students with hands-on learning through programming projects on smartphone devices, enabling them to become contributors to the workforce as smartphones become an increasingly dominant computing platform.

PUBLICATIONS PRODUCED AS A RESULT OF THIS RESEARCH

Note:  When clicking on a Digital Object Identifier (DOI) number, you will be taken to an external site maintained by the publisher. Some full text articles may not yet be available without a charge during the embargo (administrative interval).

Some links on this page may take you to non-federal websites. Their policies may differ from this site.

Christoffer Dall, Jeremy Andrus, Alex Van?t Hof, Oren Laadan, and Jason Nieh "The Design, Implementation, and Evaluation of Cells: A Virtual Mobile Smartphone Architecture" ACM Transactions on Computer Systems (TOCS) , v.30 , 2012 , p.9:1-31
Christoffer Dall, Shih-Wei Li, Jintack Lim, Jason Nieh, and Georgios Koloventzos "ARM Virtualization: Performance and Architectural Implications" Proceedings of the 43rd International Symposium on Computer Architecture (ISCA 2016) , 2016 DOI 10.1109/ISCA.2016.35
Vaggelis Atlidakis, Jeremy Andrus, Roxana Geambasu, Dimitris Mitropoulos, and Jason Nieh "POSIX Abstractions in Modern Operating Systems: The Old, the New, and the Missing" Proceedings of the 8th European Conference on Computer Systems (EuroSys 2016) , 2016

PROJECT OUTCOMES REPORT

Disclaimer

This Project Outcomes Report for the General Public is displayed verbatim as submitted by the Principal Investigator (PI) for this award. Any opinions, findings, and conclusions or recommendations expressed in this Report are those of the PI and do not necessarily reflect the views of the National Science Foundation; NSF has not approved or endorsed its content.

Smartphones and tablets have become the dominant platform for everyday computing needs. Millions of applications for these devices are available for users to download through various online application stores. The ease of downloading new software imposes a risk on users as malicious software can easily access sensitive data with the risk of corrupting it or even leaking it to third parties. For this reason, smartphones given to employees for work use are often locked down resulting in many users having to carry separate work and personal phones. Application developers also carry additional phones for development to avoid having a misbehaving application prototype corrupt their primary phone. Parents sometimes wish they had additional phones with safety constraints when their children use the parent’s smartphone for entertainment and end up with unexpected charges due to accidental phone calls or unintended in-app purchases, or worse yet when their older children are distracted by phone usage when they should not be, such as when driving.

We have investigated, developed, implemented, and evaluated a new lightweight virtualization architecture to enable multiple virtual phones/tablets (VPs) to run simultaneously on the same physical smartphone/tablet hardware with high performance and securely isolated from one another. Instead of requiring traditional virtual machines running multiple OS instances, we use lightweight OS virtualization with a novel device namespace mechanism to provide virtual namespaces that can run and securely isolate multiple VPs on a single OS instance. The isolation between VPs ensures that buggy or malicious applications running in one VP cannot adversely impact other VPs. We further improve the performance of these systems by optimizing resource sharing in a secure manner, including file system and memory management mechanisms to maximize sharing of common code and data across VPs, reducing memory consumption and enabling additional VPs to be instantiated without much overhead.  

Both open-source and commercial implementations of this architecture have been made available for Android.  The results of this research provide a foundation for both commercial deployment and future computer systems innovations to provide improved system security and management for mobile computing infrastructure.


Last Modified: 12/01/2016
Modified by: Jason Nieh

Please report errors in award information by writing to: awardsearch@nsf.gov.

Print this page

Back to Top of page