APPLICATION MIRRORING USING MULTIPLE GRAPHICS CONTEXTS
First Claim
1. A method comprising:
- maintaining display of application graphics for a first application and a second application, both compiled for and in active concurrent execution within a first operating system, by iteratively performing steps comprising;
establishing a first rendering context of the first operating system;
calculating updates to surfaces of the first application using the first operating system;
rendering the updated surfaces of the first application in the first rendering context of the first operating system to generate a first graphics frame in a first memory location;
disestablishing the first rendering context;
establishing a second rendering context of the first operating system;
calculating updates to surfaces of the second application using the first operating system;
rendering the updated surfaces of the second application in the second rendering context of the first operating system to generate a second graphics frame in a second memory location, the second memory location being a shared memory location accessible by both the first operating system and a second operating system running concurrently on a shared kernel; and
disestablishing the second rendering context.
3 Assignments
0 Petitions
Accused Products
Abstract
Cross-environment rendering and user interaction support provide a seamless computing experience in a multi-operating system computing environment. Cross-environment rendering provides real-time display of applications running in a mobile operating system to be displayed within an environment of a desktop operating system. The mobile operating system and the desktop operating system may be running concurrently and independently on a shared kernel of a mobile computing device. A graphics server of the mobile operating system tears down and rebuilds the rendering context for each application as it composites the surface information. The rendering context may be established to match the resolution of the associated display, so that graphics will be appropriately rendered for that resolution. 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.
94 Citations
17 Claims
-
1. A method comprising:
maintaining display of application graphics for a first application and a second application, both compiled for and in active concurrent execution within a first operating system, by iteratively performing steps comprising; establishing a first rendering context of the first operating system; calculating updates to surfaces of the first application using the first operating system; rendering the updated surfaces of the first application in the first rendering context of the first operating system to generate a first graphics frame in a first memory location; disestablishing the first rendering context; establishing a second rendering context of the first operating system; calculating updates to surfaces of the second application using the first operating system; rendering the updated surfaces of the second application in the second rendering context of the first operating system to generate a second graphics frame in a second memory location, the second memory location being a shared memory location accessible by both the first operating system and a second operating system running concurrently on a shared kernel; and disestablishing the second rendering context. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
10. A mobile computing device, comprising:
-
a first application running within a first operating system, the first application calculating updates for a first graphics surface using the first operating system; a second application running within the first operating system, the second application calculating updates for a second graphics surface using the first operating system; and a graphics server of the first operating system, wherein the graphics server establishes a first rendering context of the first operating system, renders updated surfaces of the first application through the first rendering context to generate a first graphics frame in a first memory location, disestablishes the first rendering context, establishes a second rendering context of the first operating system, renders the updated surfaces of the second application through the second rendering context to generate a second graphics frame in a second memory location, the second memory location being a shared memory location accessible by both the first operating system and a second operating system running concurrently on a shared kernel, and disestablishes the second rendering context. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
-
17. 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:
maintaining display of application graphics for a first application and a second application, both compiled for and in active concurrent execution within a first operating system, by iteratively performing steps comprising; establishing a first rendering context of the first operating system; calculating updates to surfaces of the first application using the first operating system; rendering the updated surfaces of the first application in the first rendering context of the first operating system to generate a first graphics frame in a first memory location; disestablishing the first rendering context; establishing a second rendering context of the first operating system; calculating updates to surfaces of the second application using the first operating system; rendering the updated surfaces of the second application in the second rendering context of the first operating system to generate a second graphics frame in a second memory location, the second memory location being a shared memory location accessible by both the first operating system and a second operating system running concurrently on a shared kernel; and disestablishing the second rendering context.
Specification