2013/12/17 by Ardalan Amiri Sani, Sani, Ardalan Amiri, Kevin Boos +5 · 1 citation
Computer Science · #Advanced Data Storage Technologies #Cloud Computing and Remote Desktop Technologies #FOS: Computer and information sciences #Image and Video Quality Assessment #Operating Systems (cs.OS) #cs.OS
paper · pdf · doi:10.48550/arxiv.1312.4931
arxiv created 2013/12/17 · openalex publication_date 2013/12/17 · arxiv updated 2013/12/18 · openalex created_date 2025/10/10 · openalex updated_date 2026/07/28
Mobile systems are equipped with a diverse collection of I/O devices, including cameras, microphones, sensors, and modems. There exist many novel use cases for allowing an application on one mobile system to utilize I/O devices from another. This paper presents Rio, an I/O sharing solution that supports unmodified applications and exposes all the functionality of an I/O device for sharing. Rio's design is common to many classes of I/O devices, thus significantly reducing the engineering effort to support new I/O devices. Our implementation of Rio on Android consists of 6700 total lines of code and supports four I/O classes with fewer than 450 class-specific lines of code. Rio also supports I/O sharing between mobile systems of different form factors, including smartphones and tablets. We show that Rio achieves performance close to that of local I/O for audio, sensors, and modems, but suffers noticeable performance degradation for camera due to network throughput limitations between the two systems, which is likely to be alleviated by emerging wireless standards.