Patents by Inventor Yong Qu

Yong Qu has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 8689182
    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.
    Type: Grant
    Filed: October 19, 2012
    Date of Patent: April 1, 2014
    Assignee: Microsoft Corporation
    Inventors: Travis Leithead, Justin E. Rogers, Miladin Pavlicic, Curtis Cheng-Cheng Man, Yong Qu, Nathan J. E. Furtwangler, Reza A. Nourai, Steven Edward Lucco
  • Patent number: 8646029
    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.
    Type: Grant
    Filed: May 31, 2011
    Date of Patent: February 4, 2014
    Assignee: Microsoft Corporation
    Inventors: Travis Leithead, Justin Rogers, Miladin Pavlicic, Curtis Cheng-Cheng Man, Yong Qu, Nathan J. E. Furtwangler, Reza A. Nourai, Steven Lucco
  • Publication number: 20130132930
    Abstract: At least one embodiment described herein relates to the selective capturing of script code stacks associated with exceptions thrown by script code. For unhandled exceptions, the script engine 1) captures the script code stack in a host-accessible manner in which a host that hosts the script engine may access the captured script code stack, 2) completes unwinding of the script stack, and 3) reports the captured script code stack to a host that hosts the script engine. For at least one of the handled exceptions thrown by the script code for which the script code itself handles the exception, the script code stack is not captured in the host-accessible manner. Also, the call stack property of an error object is populated at throw time, rather than creation time.
    Type: Application
    Filed: November 23, 2011
    Publication date: May 23, 2013
    Applicant: MICROSOFT CORPORATION
    Inventors: Jennifer A. Hamilton, Gaurav Seth, Yong Qu
  • Publication number: 20120304203
    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.
    Type: Application
    Filed: June 1, 2011
    Publication date: November 29, 2012
    Applicant: MICROSOFT CORPORATION
    Inventors: Travis Leithead, Justin Rogers, Miladin Pavlicic, Curtis Cheng-Cheng Man, Yong Qu, Nathan J.E. Furtwangler, Reza A. Nourai, Steven Lucco
  • Publication number: 20120304303
    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.
    Type: Application
    Filed: May 31, 2011
    Publication date: November 29, 2012
    Applicant: MICROSOFT CORPORATION
    Inventors: Travis Leithead, Justin Rogers, Miladin Pavlicic, Curtis Cheng-Cheng Man, Yong Qu, Nathan J.E. Furtwangler, Reza A. Nourai, Steven Lucco
  • Publication number: 20120304044
    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.
    Type: Application
    Filed: May 31, 2011
    Publication date: November 29, 2012
    Applicant: MICROSOFT CORPORATION
    Inventors: Travis Leithead, Justin Rogers, Miladin Pavlicic, Curtis Cheng-Cheng Man, Yong Qu, Nathan J.E. Furtwangler, Reza A. Nourai, Steven Lucco
  • Publication number: 20120304150
    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.
    Type: Application
    Filed: May 24, 2011
    Publication date: November 29, 2012
    Applicant: MICROSOFT CORPORATION
    Inventors: Travis Leithead, Justin Rogers, Miladin Pavlicic, Curtis Cheng-Cheng Man, Yong Qu, Nathan J.E. Furtwangler, Reza A. Nourai, Steven Lucco
  • Publication number: 20120297360
    Abstract: Dynamic code generation and memory management techniques are provided for component object model (COM) objects with corresponding representations in script code and native code. A browser component can receive script code including the code representing the COM object and a marshaling component is provided that marshals, based on a request for native code representing the COM object, the code representing the COM object to the native code based on a pre-constructed intermediate data structure. The pre-constructed intermediate data structure, such as a virtual table, is pre-constructed based on a dynamic type representation associated with a prototype of the COM object and cached for re-use by the marshaling component. Other embodiments provide finalizer support for memory management of COM objects having script and native world representations including an implementation of a two-phase commit protocol that enables efficient and conservative recycling of objects and associated memory.
    Type: Application
    Filed: May 19, 2011
    Publication date: November 22, 2012
    Applicant: MICROSOFT CORPORATION
    Inventors: Steven Lucco, Louis Lafreniere, Yong Qu
  • Publication number: 20060271917
    Abstract: Techniques and tools relating to state-based source code annotation are described. For example, described techniques include flexible techniques for describing object states with annotations. In one aspect, properties of data structures in source code are described using state-defining code annotations. For example, specification structs can be used to describe an arbitrary set of states of objects, thereby improving the capabilities of the annotation language in terms of richness of program description. Specification structs also help to avoid annotating large numbers of individual fields in data structures by allowing several individual fields to be described by a single specification struct. Other aspects of a source code annotation language also are described.
    Type: Application
    Filed: May 31, 2005
    Publication date: November 30, 2006
    Applicant: Microsoft Corporation
    Inventors: Manuvir Das, Manuel Fahndrich, Ramanathan Venkatapathy, Yong Qu, Donn Scott Terry, Daniel Weise, Brian Hackett