IP Library Granted Patent US 8,443,154
Granted Patent B2
US 8,443,154 · App. 12/979,505 · Granted May 14, 2013

Managing shared data objects to provide visibility to shared memory

Inventors: Barry P. Gower (Poughkeepsie, NY); Daniel S. Gritter (Wappingers Falls, NY); Colette A. Manoni (Brewster, NY); Matthew J. Sykes (Poughkeepsie, NY)
Assignee: International Business Machines Corporation
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 8,443,154
App. No.
12/979,505
Granted
May 14, 2013
Kind
B2
Abstract

A system for sharing data between computer processes. The system includes a processor configured to implement a method that includes executing a plurality of independent processes on an application server, the processes including a first process and a second process. A shared memory utilized by the plurality of independent processes is provided. A single copy of the data and metadata are stored in the shared memory. The metadata includes an address of the data. The first process initiates the storing of the data in the shared memory. An address of the metadata is transferred from the first process to the second process to notify the second process about the data. The second process determines the address of the shared memory by reading the metadata. The data in the shared memory is accessed by the second process.

Claims (24)

1. A system for sharing data between computer processes, the system comprising a processor configured to perform a method, the method comprising:

executing a plurality of independent processes on an application server, the processes including a first process and a second process;

providing a shared memory for storing data, the data utilized by the plurality of independent processes;

storing, in the shared memory, a single copy of the data and metadata, the metadata including an address of the data and the storing initiated by the first process;

transferring an address of the metadata from the first process to the second process to notify the second process about the data;

reading the metadata to determining the address of the data in the shared memory, the reading by the second process; and

accessing the data in the shared memory, the accessing by the second process.

2. The system of claim 1 , wherein the data identifies the first process as a creator of the data and the second process as a user of the data.

3. The system of claim 1 , wherein the data identifies a creator of the data and a user of the data that are utilized by the application server during a data deletion process.

4. The system of claim 1 , wherein the first process is a Java control region, the second process is a Java servant region, the first process stores the address of the metadata in a first direct byte buffer in the control region, and the second process stores the address of the metadata in a second direct byte buffer in the servant region.

5. A computer program product for sharing data between computer processes, the computer program product comprising:

a non-transitory storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method comprising:

executing a plurality of independent processes on an application server, the processes including a first process and a second process;

providing a shared memory for storing data, the data utilized by the plurality of independent processes;

storing, in the shared memory, a single copy of the data and metadata, the metadata including an address of the data and the storing initiated by the first process;

transferring an address of the metadata from the first process to the second process to notify the second process about the data;

reading the metadata to determining the address of the data in the shared memory, the reading by the second process; and

accessing the data in the shared memory, the accessing by the second process.

6. The computer program product of claim 5 , wherein the data identifies the first process as a creator of the data and the second process as a user of the data.

7. The computer program product of claim 5 , wherein the data identifies a creator of the data and a user of the data that are utilized by the application server during a data deletion process.

8. The computer program product of claim 5 , wherein the first process is a Java control region and the second process is a Java servant region.

9. The computer program product of claim 8 , wherein the first process stores the address of the metadata in a first direct byte buffer in the control region and the second process stores the address of the metadata in a second direct byte buffer in the servant region.

10. The computer program product of claim 8 , wherein the method further comprises passing control to a Java virtual machine.

11. The computer program product of claim 8 , wherein the data includes a request and the method further comprises executing the request on the servant region.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 28, 2010
From: GOWER, BARRY P.; GRITTER, DANIEL S.; MANONI, COLETTE A.; SYKES, MATTHEW J.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 025542/0198 →
Continuity (1)
Related Publication 20120166738A1 · Jun 28, 2012