Looking for breakthrough ideas for innovation challenges? Try Patsnap Eureka!

Object type system for a run-time environment using generated high-order language instructions for generic functions

a run-time environment and object type technology, applied in the field of computer systems, can solve the problems of difficult design and maintenance of code in comparison with object-oriented programming languages, inability to implement low-level substrate services, etc., to achieve the effect of convenient linkage with environmental code, efficient method dispatching, and convenient us

Inactive Publication Date: 2004-08-24
ORACLE INT CORP
View PDF21 Cites 20 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Benefits of technology

This and other needs are addressed by the present invention, in which a static, object-oriented meta-object system is provided for implementing a run-time environment. In particular, code is generated by the meta-object system that is compatible with a high-order systems programming language such as C. Since the meta-object system is object-oriented, the benefits of ease of design and maintenance associated with object-oriented programming are attained. Since meta-object system is static, each invoked method can be identified at compile-time, leading to efficient method dispatching. Finally, the meta-object system methods are translated into "generic functions" in a portable systems programming language such as C, thereby facilitating linkage with environmental code.

Problems solved by technology

Conventional techniques for implementing the low-level substrate services, however, suffer from several disadvantages, depending on the implementation language being used.
For example, if the low-level substrate is written in the C programming language and assembly language, the resulting code tends to be difficult to design and maintain in comparison with object-oriented programming languages.
Use of an objected-oriented language like the C++ programming language, however, also suffers from disadvantages.
In particular, C++ member functions (methods) are difficult to interface with generic C environmental code due to compiler name-mangling, and sometimes involve run-time overhead in method dispatching (i.e. invoking virtual member functions requires an indirection through a virtual table).
Furthermore, C++ is less portable than C.

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Image

Smart Image Click on the blue labels to locate them in the text.
Viewing Examples
Smart Image
  • Object type system for a run-time environment using generated high-order language instructions for generic functions
  • Object type system for a run-time environment using generated high-order language instructions for generic functions
  • Object type system for a run-time environment using generated high-order language instructions for generic functions

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

A method and apparatus for implementing a run-time environment are described. In the following description, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It will be apparent, however, to one skilled in the art that the present invention may be practiced without these specific details. In other instances, well-known structures and devices are shown in block diagram form in order to avoid unnecessarily obscuring the present invention.

Hardware Overview

FIG. 1 is a block diagram that illustrates a computer system 100 upon which an embodiment of the invention may be implemented. Computer system 100 includes a bus 102 or other communication mechanism for communicating information, and processors 104 and 105 both coupled with bus 102 for processing information. Computer system 100 also includes a main memory 106, such as a random access memory (RAM) or other dynamic storage device, coupled to b...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to View More

PUM

No PUM Login to View More

Abstract

A static object system is provided to allow for code for implementing a run-time environment to be automatically generated that is compatible with a high-order systems programming language such as C. In particular, the meta-object system is static, object-oriented, and uses generic functions that can dispatch to an appropriate member function based on the types of one or more arguments. In one embodiment, the generated dispatch code uses a multi-way conditional branch.

Description

FIELD OF THE INVENTIONThe present invention relates to computer systems and more particularly to implementing a run-time environment.BACKGROUND OF THE INVENTIONA dynamic run-time environment for a language such as JAVA.TM. is responsible for managing memory for objects that are created and destroyed during the execution of a program. An object is an entity that encapsulates data and, in some languages, operations associated with the object. Since the encapsulated data is stored in memory, objects are associated with particular regions of memory that are allocated and deallocated by the dynamic run-time environment.In general, all implementations of a language run-time environment are built upon a low-level substrate that provides proto-language services. These services may include memory management, method dispatching, operating system (or other encapsulating environment) services, and outcall mechanisms. Typically, the low-level substrate and a schema of the system classes belongin...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to View More

Application Information

Patent Timeline
no application Login to View More
IPC IPC(8): G06F9/45
CPCG06F8/24G06F8/315
Inventor SEXTON, HARLANUNIETIS, DAVIDBENSON, PETERJUNGERMAN, MARKMEYER, SCOTTROSENBERG, DAVID
Owner ORACLE INT CORP
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Patsnap Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Patsnap Eureka Blog
Learn More
PatSnap group products