A user nowadays owns a variety of mobile systems, including smartphones, tablets, smartglasses and smartwatches, each equipped with a plethora of I/O devices, such as cameras, speakers, microphones, sensors and cellular modems. There are many interesting use cases for allowing an application running on one mobile system to access I/O devices on another system, for three fundamental reasons. (i) Mobile systems can be in different physical locations or orientations. For example, one can control a smartphone's high-resolution camera from a tablet to more easily capture a self-portrait. (ii) Mobile systems can serve different users; for example, one can play music for another user if one's smartphone can access the other system's speaker. (iii) Certain mobile systems have unique I/O devices due to their distinct form factors and targeted use cases. For example, a user can make a phone call from her tablet using the modem and SIM card in her smartphone.
['Ardalan Amiri Sani', 'Kevin Boos', 'Min Hong Yun', 'Lin Zhong']
Rio: I/O Sharing Between Mobile Systems