Object-oriented interface for portability to diverse operating systems or hardware platforms
First Claim
1. A computer system for running object-oriented applications, comprising:
- a computer platform including a computer hardware and an operating system executable on the computer hardware;
an object-oriented interface specifying object-oriented classes each containing one or more methods, the interface implemented on a plurality of different computer platforms including different combinations of computer hardware and operating systems, the interface used by object-oriented applications to instantiate objects from the classes and invoke the object oriented methods;
a procedural program logic code, specific to the operating system, compiled for use on the computer hardware and responsive to the object-oriented interface to provide native system services from the computer platform;
executable program memory in the computer hardware for runtime execution of the operating system, the object-oriented interface, and the procedural program logic code;
logic to determine if object-oriented methods to be invoked during runtime execution are not present in the executable program memory; and
a runtime loader for loading into the executable program memory object-oriented methods determined to not be present in the executable program memory prior to their runtime execution.
1 Assignment
0 Petitions
Accused Products
Abstract
An object-oriented interface is disclosed for conferring portability for object-oriented programming to diverse operating systems on diverse hardware platforms in a computer system. The object-oriented interface is executable on a plurality of different computer platforms and includes classes of object-oriented methods. The interface is responsive to the object-oriented programming which instantiates its objects from its own classes and invokes the object oriented methods of the interface. Operating system specific, procedural program logic is compiled for use on a given computer platform that includes given computer hardware and a given procedural operating system which is executable on the hardware. A determination is made if the object-oriented methods of the interface to be invoked during runtime execution are present in the program memory of the computer hardware. A runtime loader selectively loads into the program memory any required object-oriented methods of the interface during runtime before their invocation by the object-oriented programming. The object-oriented interface thereby provides native system services to the object-oriented programming from the given computer hardware and procedural operating system.
141 Citations
12 Claims
-
1. A computer system for running object-oriented applications, comprising:
-
a computer platform including a computer hardware and an operating system executable on the computer hardware;
an object-oriented interface specifying object-oriented classes each containing one or more methods, the interface implemented on a plurality of different computer platforms including different combinations of computer hardware and operating systems, the interface used by object-oriented applications to instantiate objects from the classes and invoke the object oriented methods;
a procedural program logic code, specific to the operating system, compiled for use on the computer hardware and responsive to the object-oriented interface to provide native system services from the computer platform;
executable program memory in the computer hardware for runtime execution of the operating system, the object-oriented interface, and the procedural program logic code;
logic to determine if object-oriented methods to be invoked during runtime execution are not present in the executable program memory; and
a runtime loader for loading into the executable program memory object-oriented methods determined to not be present in the executable program memory prior to their runtime execution. - View Dependent Claims (2, 3, 4, 5, 6)
logic to load related portions of the procedural program logic code determined to not be present in the executable program memory prior to their runtime execution.
-
-
3. The computer system of claim 2, further comprising:
logic to designate which object-oriented methods request native system services.
-
4. The computer system of claim 2, wherein the operating system further comprises:
an operating system selected from the group consisting of an operating system based on Windows and an operating system based on Unix.
-
5. The computer system of claim 2, wherein the computer hardware further comprises:
computer hardware selected from the group consisting of Unix compatible computer hardware, Apple compatible computer hardware, and IBM compatible computer hardware.
-
6. The computer system of claim 2, wherein the native system services further comprise one or more native system services selected from the group consisting of thread services;
-
task services;
virtual memory services;
interprocess communication (IPC) services;
synchronization services;
scheduling services;
fault services;
processor and processor set services;
port services;
security services;
file system services; and
graphical user interface (GUI) services.
-
-
7. A method for running object-oriented applications, comprising:
-
specifying a computer platform including a computer hardware and an operating system executing on said computer hardware;
providing an object-oriented interface specifying object-oriented classes each containing one or more methods, on the computer platform, the interface implemented on a plurality of computer platforms including different combinations of computer hardware and operating systems, the interface used by object-oriented applications to instantiate objects from the classes and invoke the object oriented methods;
providing a procedural program logic code, specific to the operating system, compiled for use on the computer hardware and responsive to the object-oriented interface to provide native system services from the computer platform;
determining if object-oriented methods to be invoked during runtime execution are not present in executable program memory in the computer hardware; and
loading object-oriented methods into the executable program memory determined to not be present in the executable program memory prior to their runtime execution. - View Dependent Claims (8, 9, 10, 11, 12)
loading related portions of the procedural program logic code determined to not be present in the executable program memory prior to their runtime execution.
-
-
9. The method of claim 8, further comprising the step of:
- designating which object-oriented methods request native system services.
-
10. The method of claim 8, wherein the step of executing an operating system on computer hardware further comprises the step of:
executing an operating system selected from the group consisting of an operating system based on Windows and an operating system based on Unix.
-
11. The method of claim 8, wherein the step of executing an operating system on computer hardware further comprises the step of:
executing the operating system on computer hardware selected from the group consisting of Unix compatible computer hardware, Apple compatible computer hardware, and IBM compatible computer hardware.
-
12. The method of claim 8 wherein the step of providing a procedural program logic code, specific to an operating system, compiled for use on computer hardware and responsive to an object-oriented interface for providing native system services from a computer platform further comprises:
-
providing one or more native system services selected from the group consisting of thread services;
task services;
virtual memory services;
interprocess communication (IPC) services;
synchronization services;
scheduling services;
fault services;
processor and processor set services;
port services;
security services;
file system services; and
graphical user interface (GUI) services.
-
Specification