System and method providing inlined stub
AssigneeMicrosoft Corporation
InventorsFrank V. Peschel-Gallee, Raja Krishnaswamy, Patrick H. Dussud
Life of this patent
Estimating the term…
Loading patent…
AssigneeMicrosoft Corporation
InventorsFrank V. Peschel-Gallee, Raja Krishnaswamy, Patrick H. Dussud
Estimating the term…
A system and method is provided to facilitate communications between object systems. A caller is provided having optimized in-lined functionality when initiating a remote function call between managed and unmanaged object systems, for example. The in-lined functionality includes utilizing direct calls and returns within a calling function. In this manner, pushing additional arguments onto an execution stack because of an external stub reference is mitigated. In addition, one or more code loops can be analyzed to enable stack markers to be “hoisted” and thus pushed a single time instead of each time the calling function executes. Other aspects of the optimized caller provide garbage collection and thread management, security attribute checking on outgoing calls, calling convention considerations, wherein arguments and return values are organized according to the convention utilized by the remote object system, and in-lined marshalling to provide enhanced performance over external stub code references. Code extensibility options can be included enabling functions to be generalized thereby insulating object systems from implementation details of the called functions.
A computer implemented system that facilitates communications between managed and unmanaged code, comprising a memory having stored therein the following executable components and a processor that executes the computer executable components:
A method for facilitating communications between managed and unmanaged code, comprising:
The method of claim l5, further comprising suspending operations from the unmanaged code until operations associated with the garbage collector have completed.
A system comprising a processor and memory having stored therein computer-executable components that, when executed by the processor, causes the system to perform the following:
Dependencies are inferred from the claim text.