IP Library Granted Patent US 7,234,137
Granted Patent B2
US 7,234,137 · App. 10/205,757 · Granted Jun 19, 2007

Method, system, and program for processing objects in a distributed computing environment

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,234,137
App. No.
10/205,757
Granted
Jun 19, 2007
Kind
B2
Abstract

Provided are a method, system, and program for processing objects in a distributed computing environment. A determination is made of a program is needed to process a component. A file including the determined program is requested from a remote process. The requested file is received from the remote process, wherein the requested file includes a plurality of sections, each including different programs. At least one section includes programs that are intended only to be executed in a remote address space of the remote process and at least one other section includes programs that are intended to be downloaded from the remote process and execute in a client address space that is different than the remote address space. The programs are loaded from the section including the determined program to execute in the client address space to process the component.

Claims (65)

1. A method for processing objects in a distributed computing environment, comprising:

determining that a program is needed to process a component;

requesting a file including the determined program from a remote process;

receiving the requested file from the remote process, wherein the requested file includes a plurality of sections, each including different programs, wherein at least one section includes domestic programs that are intended only to be executed in a remote address space of the remote process and wherein at least one other section includes exportable programs that are intended to be downloaded from the remote process and to execute in a client address space that is different than the remote address space;

processing an index section of the received file indicating sections including exportable programs intended to be loaded into the client address space;

determining from the index section at least one section including the determined program needed to process the component;

preventing access to the domestic programs in the received file using meta information included in the index section; and

loading the exportable programs from the section in the received file including the determined program to execute in the client address space to process the component.

2. The method of claim 1 , further comprising:

determining at least one section in the received file including the determined program needed to process the component, wherein the exportable programs from the determined at least one section are loaded into the client address space.

3. The method of claim 1 , wherein the component is received from the remote process.

4. The method of claim 1 , wherein the remote process executes on a remote server, further comprising:

communicating with the remote server over a network.

5. The method of claim 1 , wherein the remote process, remote address space, and client address space are implemented in a same computer system, further comprising:

communicating with the remote process through a shared memory in the computer system.

6. The method of claim 1 , further comprising:

determining whether the program needed to process the component is in the client address space; and

loading the program from the client address space if the program is in the client address space, wherein the file is requested after determining that the program needed to process the component is not in the client address space.

7. The method of claim 1 , wherein the component comprises an object received from the remote process.

8. The method of claim 1 , wherein the programs in the sections of the received file comprise classfiles.

9. The method of claim 8 , further comprising:

using a Remote Method Invocation (RMI) interface to communicate with the remote process, wherein the classfiles that are intended only to be executed in the remote address space of the remote process comprise domestic classes and wherein the programs that are intended to be downloaded from the remote process and execute in the client address space comprise exportable classes.

10. The method of claim 8 , wherein the received file comprises a well-formed Java Archive (JAR) file.

11. The method of claim 1 , wherein the received file further indicates a security policy, wherein operations performed by the program loaded into the client address space are restricted by the indicated security policy.

12. A system for processing objects in a distributed computing environment, the system comprising:

a processor; and

a memory, wherein the processor and the memory:

determine that a program is needed to process a component;

request a file including the determined program from a remote process;

receive the requested file from the remote process, wherein the requested file includes a plurality of sections, each including different programs, wherein at least one section includes domestic programs that are intended only to be executed in a remote address space of the remote process and wherein at least one other section includes exportable programs that are intended to be downloaded from the remote process and to execute in a client address space that is different than the remote address space;

process an index section of the received file indicating sections including exportable programs intended to be loaded into the client address space;

determine from the index section at least one section including the determined program needed to process the component;

prevent access to the domestic programs in the received file using meta information included in the index section; and

load the exportable programs from the section in the received file including the determined program to execute in the client address space to process the component.

13. The system of claim 12 , wherein the memory and the processor further:

determine at least one section in the received file including the determined program needed to process the component, wherein the exportable programs from the determined at least one section are loaded into the client address space.

14. The system of claim 12 , wherein the processor and the memory further:

determine whether the program needed to process the component is in the client address space; and

load the program from the client address space if the program is in the client address space, wherein the file is requested after determining that the program needed to process the component is not in the client address space.

15. A computer readable medium comprising program code instructions which, when executed by a processor, perform a method for processing objects in a distributed computing environment, the method comprising:

determining that a program is needed to process a component;

requesting a file including the determined program from a remote process;

receiving the requested file from the remote process, wherein the requested file includes a plurality of sections, each including different programs, wherein at least one section includes domestic programs that are intended only to be executed in a remote address space of the remote process and wherein at least one other section includes exportable programs that are intended to be downloaded from the remote process and to execute in a client address space that is different than the remote address space;

processing an index section of the received file indicating sections including exportable programs intended to be loaded into the client address space;

determining from the index section at least one section including the determined program needed to process the component;

preventing access to the domestic programs in the received file using meta information included in the index section; and

loading the exportable programs from the section in the received file including the determined program to execute in the client address space to process the component.

16. The computer readable medium of claim 15 , wherein the method further comprises:

determining at least one section in the received file including the determined program, wherein the exportable programs are loaded into the client address space.

17. The computer readable medium of claim 15 , wherein the component is received from the remote process.

18. The computer readable medium of claim 15 , wherein:

the remote process executes on a remote server, and

the method further comprises communicating with the remote server over a network.

19. The computer readable medium of claim 15 , wherein:

the remote process, remote address space, and client address space are implemented in a same computer system, and

the method further comprises communicating with the remote process through a shared memory in the computer system.

20. The computer readable medium of claim 15 , wherein the method further comprises:

determining whether the program needed to process the component is in the client address space; and

loading the program from the client address space if the program is in the client address space, wherein the file is requested after determining that the program needed to process the component is not in the client address space.

21. The computer readable medium of claim 15 , wherein the component comprises an object received from the remote process.

22. The computer readable medium of claim 15 , wherein the programs in the sections of the received file comprise classfiles.

23. The computer readable medium of claim 22 , wherein the method further comprises:

using a Remote Method Invocation (RMI) interface to communicate with the remote process, wherein the classfiles that are intended only to be executed in the remote address space of the remote process comprise domestic classes and wherein the programs that are intended to be downloaded from the remote process and execute in the client address space comprise exportable classes.

24. The computer readable medium of claim 22 , wherein the received file comprises a well-formed Java Archive (JAR) file.

25. The computer readable medium of claim 15 , wherein the received file further indicates a security policy, wherein operations performed by the program loaded into the client address space are restricted by the indicated security policy.

Assignments (4)
TERMINATION AND RELEASE OF FIRST SUPPLEMENT OT PATENT SECURITY AGREEMENT AT R/F 049035/0939 Recorded Dec 6, 2021
From: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
To: RIBBON COMMUNICATIONS OPERATING COMPANY, INC. (F/K/A GENBAND US LLC AND SONUS NETWORKS, INC.)
Reel/Frame 058740/0265 →
CORRECTIVE ASSIGNMENT TO CORRECT THE SCHEDULE PREVIOUSLY RECORDED ON REEL 049035 FRAME 0939. ASSIGNOR(S) HEREBY CONFIRMS THE FIRST SUPPLEMENT TO PATENT SECURITY AGREEMENT. Recorded Aug 22, 2019
From: GENBAND US LLC; RIBBON COMMUNICATIONS OPERATING COMPANY, INC., FORMERLY KNOWN AS SONUS NETWORKS, INC.
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
Reel/Frame 050705/0001 →
FIRST SUPPLEMENT TO SECURITY AGREEMENT Recorded Apr 30, 2019
From: GENBAND US LLC; RIBBON COMMUNICATIONS OPERATING COMPANY, INC., FORMERLY KNOWN AS SONUS NETWORKS, INC.
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
Reel/Frame 049035/0939 →
MERGER AND CHANGE OF NAME Recorded Dec 16, 2015
From: ORACLE USA, INC.; SUN MICROSYSTEMS, INC.; ORACLE AMERICA, INC.
To: ORACLE AMERICA, INC.
Reel/Frame 037302/0772 →