Memory Model for a Layout Engine and Scripting Engine
AssigneeMicrosoft Technology Licensing, LLC
InventorsYong Qu, Curtis Cheng-Cheng Man, Justin E. Rogers
Life of this patent
Estimating the term…
Abstract
Various embodiments provide an interface between a Web browser's layout engine and a scripting engine. The interface enables objects from the layout engine to be recognized by a memory manager in the scripting engine and interact in a streamlined, efficient manner. In accordance with one or more embodiments, the interface allows browser layout engine objects to be created as objects that are native to the scripting engine. Alternately or additionally, in some embodiments, the native objects are further configured to proxy functionality between the layout engine and the scripting engine.
Claims20
A computing device comprising:
- at least one processor;
- memory coupled to the at least one processor;
- a web browser that includes a layout engine and a scripting engine;
- a first memory space within the memory in which the computing device is configured to execute the layout engine;
- a second memory space within the memory that is separate from the first memory space and in which the computing device is configured to execute the scripting engine, where the scripting engine is bound to the layout engine via a wrapper function native to the second memory space, and where the layout engine and the scripting engine are able to securely interact with each other via the wrapper function across the first memory space and the second memory space.
A method performed on a computing device comprising at least one processor and memory, the method comprising:
- executing, by the computing device, a layout engine in a first memory space of the memory;
- executing, by the computing device, a scripting engine in a second memory space of the memory that is separate from the first memory space, where the layout engine and the scripting engine are parts of a web browser;
- binding, by the computing device via a wrapper function native to the second memory space, the scripting engine to the layout engine;
- and
- the layout engine and the scripting engine securely interacting with each other via the wrapper function across the first memory space and the second memory space.
At least one hardware computer-readable medium that includes computer-executable instructions that, based on execution by at least one processor of a computing device that further comprises memory, configure the computing device to perform actions comprising:
- executing, by the computing device, a layout engine in a first memory space of the memory;
- executing, by the computing device, a scripting engine in a second memory space of the memory that is separate from the first memory space, where the layout engine and the scripting engine are parts of a web browser;
- binding, by the computing device via a wrapper function native to the second memory space, the scripting engine to the layout engine;
- and
- the layout engine and the scripting engine securely interacting with each other via the wrapper function across the first memory space and the second memory space.
The at least one hardware computer-readable medium of claim 17 where a bridge function that is associated with the layout engine is wrapped by the wrapper function within the second memory space.
Dependencies are inferred from the claim text.