Display techniques using virtual surface allocation
First Claim
Patent Images
1. A method implemented by a computing device, the method comprising:
- initializing, by a composition system part of an operating system, a virtual surface without allocation in physical memory of the computing device, the virtual surface usable by an application executed by the computing device to render visuals thereto as a composition element including a bitmap and associated compositional metadata for display in a user interface corresponding to the application, the virtual surface comprising a collection of one or more logical surfaces representative of individual surfaces as seen by the application and not displayed by the computing device;
receiving a request by the composition system of the computing device to allocate a portion of the virtual surface in which to render the visuals, the request specifying a size of the portion of the virtual surface;
responsive to the receiving of the request, allocating the portion of the virtual surface in the physical memory by the composition system for rendering the visuals thereto, the allocation of physical memory having a size that is greater than the size requested by the application to render the visuals; and
using at least a portion of the surface from the allocated size of the virtual surface that is greater than the size requested by the application by the composition system of the computing device for reuse in response to a request to provide a virtual surface for an update instead of allocating a new virtual surface.
2 Assignments
0 Petitions
Accused Products
Abstract
Virtual surface techniques are described. These techniques include support of initialization and batching of updates, use of updates and lookaside lists, the use of gutters, the use of blending and BLT operations, surface optimization techniques such as push down as well as enumeration and clumping, mesh usage, and occlusion management techniques.
198 Citations
20 Claims
-
1. A method implemented by a computing device, the method comprising:
-
initializing, by a composition system part of an operating system, a virtual surface without allocation in physical memory of the computing device, the virtual surface usable by an application executed by the computing device to render visuals thereto as a composition element including a bitmap and associated compositional metadata for display in a user interface corresponding to the application, the virtual surface comprising a collection of one or more logical surfaces representative of individual surfaces as seen by the application and not displayed by the computing device; receiving a request by the composition system of the computing device to allocate a portion of the virtual surface in which to render the visuals, the request specifying a size of the portion of the virtual surface; responsive to the receiving of the request, allocating the portion of the virtual surface in the physical memory by the composition system for rendering the visuals thereto, the allocation of physical memory having a size that is greater than the size requested by the application to render the visuals; and using at least a portion of the surface from the allocated size of the virtual surface that is greater than the size requested by the application by the composition system of the computing device for reuse in response to a request to provide a virtual surface for an update instead of allocating a new virtual surface. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computing device comprising one or more processors and one or more modules implemented at least partially in hardware and configured to implement a composition system, the composition system, when executed by the one or more processors, configured to perform operations comprising:
-
initializing a virtual surface without allocation in physical memory of the computing device, the virtual surface usable by an application to render visuals thereto as a composition element including a bitmap and associated compositional metadata for display in a user interface corresponding to the application, the virtual surface comprising a collection of one or more logical surfaces representative of individual surfaces as seen by the application and not displayed by the computing device; responsive to receipt of a request to allocate a portion of the virtual surface in which to render the visuals that specifies a size of the portion of the virtual surface, allocating the portion of the virtual surface in the physical memory by the composition system for rendering the visuals thereto, the allocation of physical memory having a size that is greater than the size requested by the application to render the visuals; and using at least a portion of the surface from the allocated size of the virtual surface that is greater than the size requested by the application by the composition system of the computing device for reuse in response to a request to provide a virtual surface for an update instead of allocating a new virtual surface. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15)
-
-
16. One or more computer-readable storage media comprising instructions stored thereon that, responsive to execution by a computing device, causes the computing device to implement a composition system to perform one or more operations comprising:
-
initializing a virtual surface without allocation in physical memory of the computing device, the virtual surface usable by an application to render visuals thereto as a composition element including a bitmap and associated compositional metadata for display in a user interface corresponding to the application, the virtual surface comprising a collection of one or more logical surfaces representative of individual surfaces as seen by the application and not displayed by the computing device; responsive to receipt of a request to allocate a portion of the virtual surface in which to render the visuals that specifies a size of the portion of the virtual surface, allocating the portion of the virtual surface in the physical memory by the composition system for rendering the visuals thereto, the allocation of physical memory having a size that is greater than the size requested by the application to render the visuals; and using at least a portion of the surface from the allocated size of the virtual surface that is greater than the size requested by the application by the composition system of the computing device for reuse in response to a request to provide a virtual surface for an update instead of allocating a new virtual surface. - View Dependent Claims (17, 18, 19, 20)
-
Specification