CROSS-ENVIRONMENT USER INTERFACE MIRRORING
First Claim
1. A method comprising:
- calculating, using a first operating system, updates to a set of surfaces of a first application compiled for and in active execution within the first operating system;
rendering, using the first operating system, the set of surfaces according to the updates to generate a graphics frame;
storing the graphics frame in a shared memory location accessible by both the first operating system and a second operating system running concurrently on a shared kernel;
displaying the graphics frame to a first application display of the first application on a first display of a first computing environment using the first operating system;
passing a file descriptor indicating the shared memory location to a console application compiled for and in active execution within the second operating system; and
displaying the graphics frame from the shared memory location to a second application display of the first application on a second display of a second computing environment via the console application of the second operating system according to the file descriptor, such that the second application display is substantially identical to the first application display.
3 Assignments
0 Petitions
Accused Products
Abstract
A mobile computing device with a mobile operating system and desktop operating system running concurrently and independently on a shared kernel without virtualization. The mobile operating system provides a user experience for the mobile computing device that suits the mobile environment. The desktop operating system provides a full desktop user experience when the mobile computing device is docked to a second user environment. Cross-environment rendering and user interaction support provide a seamless computing experience in a multi-operating system computing environment. The seamless computing experience includes mirroring the active user interaction space of the mobile operating system to a display of a user environment associated with the desktop operating system. The mobile computing device may be a smartphone running the Android mobile operating system and a full desktop Linux distribution on a modified Android kernel.
72 Citations
19 Claims
-
1. A method comprising:
-
calculating, using a first operating system, updates to a set of surfaces of a first application compiled for and in active execution within the first operating system; rendering, using the first operating system, the set of surfaces according to the updates to generate a graphics frame; storing the graphics frame in a shared memory location accessible by both the first operating system and a second operating system running concurrently on a shared kernel; displaying the graphics frame to a first application display of the first application on a first display of a first computing environment using the first operating system; passing a file descriptor indicating the shared memory location to a console application compiled for and in active execution within the second operating system; and displaying the graphics frame from the shared memory location to a second application display of the first application on a second display of a second computing environment via the console application of the second operating system according to the file descriptor, such that the second application display is substantially identical to the first application display. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A mobile computing device comprising:
-
a first application compiled for and in active execution within a first operating system; a graphics frame for the first application rendered in a shared memory location by the first operating system, the shared memory location accessible by both the first operating system and a second operating system running concurrently with the first operating system on a shared kernel; a first application display of the first application displayed on a first display of a first computing environment using the first operating system; and a console application running within the second operating system that displays the graphics frame to a second application display on a display of a second computing environment associated with the second operating system by accessing the shared memory location of the graphics frame through a file descriptor to the graphics frame passed by the first operating system. - View Dependent Claims (10, 11)
-
-
12. A computing device including a computer-readable medium storing instructions for a physical processor, the instructions, when executed, causing the processor to perform steps comprising:
-
calculating, using a first operating system, updates to a set of surfaces of a first application compiled for and in active execution within the first operating system; rendering, using the first operating system, the set of surfaces according to the updates to generate a graphics frame; storing the graphics frame in a shared memory location accessible by both the first operating system and a second operating system running concurrently on a shared kernel; displaying the graphics frame to a first application display of the first application on a first display of a first computing environment using the first operating system; passing a file descriptor indicating the shared memory location to a console application compiled for and in active execution within the second operating system; and displaying the graphics frame from the shared memory location to a second application display of the first application on a second display of a second computing environment via the console application of the second operating system according to the file descriptor, such that the second application display is substantially identical to the first application display. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19)
-
Specification