36. LA: Cross-Device I/O Sharing Flashcards

1
Q

Alice has music playing on her smartphone. When she sits down at her laptop, she wants the music to seamlessly begin playing from her laptop speakers.

Bob is playing a racing game on his tablet. But instead of controlling it by tilting the tablet, which disrupts his view of the display, he wants to control the tablet game by tilting his smartphone.

First describe a design for an OS cross-device I/O sharing system that would allow applications to make use of I/O devices on other nearby devices.

A

Hint to use: “operating systems such as Linux typically reuse the file abstraction to expose many different types of I/O devices to processes” (aka “narrow waist”). Gives us a way to support a bunch of different types of devices using a few common mechanisms.

  1. Machine B’s local devices need to be exposed to apps running on Machine A. This may require some local configuaration. For example, the user may have to configure both devices as if they were local files. As an example, Machine A might see Machine B’s audio card /dev/audio as /dev/machineb/audio. And when configured to use that device, voila, music played by the player on MAchien A emerges from the speakers on Machine B.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly