U.S. patents available from 1976 to present.
U.S. patent applications available from 2005 to present.

Icon_funbox Did You Know...

...that after Walter Hunt patented the safety pin in 1849, he sold the rights to it for $400?

Newsletter  PatentStorm News

Make the Most of PatentStorm

See this month's Top Inventors and Most Cited Patents.

Stay on top of the latest patents by subscribing to an RSS feed.

Got questions? Ask a Patent Expert!

Registered users: Manage your profile, comments and alerts.

 

US Patent 6704927 - Static binding of dynamically-dispatched calls in the presence of dynamic linking and loading

US Patent Issued on March 9, 2004
Estimated Patent Expiration Date: Icon_subject March 10, 2019Estimated Expiration Date is calculated based on simple USPTO term provisions. It does not account for terminal disclaimers, term adjustments, failure to pay maintenance fees, or other factors which might affect the term of a patent.
loading...


View Patent Images (PDF)
(Registered users only)

Abstract

Techniques for performing static binding of dispatched-calls in the presence of dynamic linking and loading are provided. A method for increasing the execution performance of a function at run-time includes compiling the function, which may either be interpreted or previously compiled, and identifying a call within the function to a process. The method also includes adding dependency information to the function. The dependency information is arranged to indicate a status of the function, and contains information pertaining to the class, the name, and the signature associated with the process. In one embodiment, the process is a virtual process, and the method includes analyzing a class structure associated with the function in order to determine when the virtual process is a substantially unique target of the call. In such an embodiment, the virtual process may be inlined into the function when it is determined that the virtual process is the substantially unique target of the call.

Other References

  • Karkowski-Corporaal, Overcoming the Limitations of the Traditional Loop Parallelization, 1998, Delft University of Technology.
  • J. Dean et al., "Optimization of Object-Oriented Programs Using Static Class Hierarchy Analysis", Aug. 1995, ECOOP'95--Object-Oriented Programming. 9th European Confrence

Inventors

Application

No. 09/265770 filed on 03/10/1999

US Classes:

717/151, Optimization717/139, Interpreter717/140, Compiling code717/148, Just-in-time compiling or dynamic compiling (e.g., compiling Java bytecode on a virtual machine)717/152, Static (source or intermediate level)717/153, Dynamic (i.e., machine or object level)717/165Object oriented

Field of Search

717/136, Translation of code717/151, Optimization717/162, Linking717/138, Emulation717/139, Interpreter717/140, Compiling code717/141, Analysis of code form717/145, Including recompilation717/146, Including intermediate code717/147, Platform-independent form (e.g., abstract code)717/148Just-in-time compiling or dynamic compiling (e.g., compiling Java bytecode on a virtual machine)

Examiners

Primary: Nguyen-Ba, Antony

Attorney, Agent or Firm

US Patent References

5579518, Message compiler for object-oriented language that statically produces object code by provisionally identifying a set of candidate types
Issued on: 11/26/1996
Inventor: Yasumatsu
5606699, Storing and querying execution information for object-oriented programs
Issued on: 02/25/1997
Inventor: De Pauw, et al.
5613120, System and method for enabling, without recompilation, modification of class definitions and implementations in an object-oriented computer program
Issued on: 03/18/1997
Inventor: Palay, et al.
5748961, Efficient method and apparatus for compiling and linking modules of computer code in a large software system
Issued on: 05/05/1998
Inventor: Hanna, et al.
5764989, Interactive software development system
Issued on: 06/09/1998
Inventor: Gustafsson, et al.
5966537, Method and apparatus for dynamically optimizing an executable computer program using input data
Issued on: 10/12/1999
Inventor: Ravichandran
5983020, Rule-based engine for transformation of class hierarchy of an object-oriented program
Issued on: 11/09/1999
Inventor: Sweeney, et al.
5983021, Dynamically switching statically bound function calls to dynamically bound function calls without recompilation
Issued on: 11/09/1999
Inventor: Mitrovic
6063128, Object-oriented computerized modeling system
Issued on: 05/16/2000
Inventor: Bentley, et al.
6085035, Method and apparatus for efficient operations on primary type values without static overloading
Issued on: 07/04/2000
Inventor: Ungar
6230314, Method and device for program transformation using class hierarchy transformation based upon type constraint analysis
Issued on: 05/08/2001
Inventor: Sweeney, et al.
6240547, Method and apparatus for dynamically deoptimizing compiled activations
Issued on: 05/29/2001
Inventor: Holzle, et al.
6260075, System and method for providing shared global offset table for common shared library in a computer system
Issued on: 07/10/2001
Inventor: Cabrero, et al.
6282581Mechanism for resource allocation and for dispatching incoming calls in a distributed object environment
Issued on: 08/28/2001
Inventor: Moore, et al.

International Classes

G06F 9/42 (20060101)
G06F 9/445 (20060101)
G06F 9/40 (20060101)

Comments

No comments for this page
 
 
Forgot password?
Register here