IP Library Granted Patent US 7,404,061
Granted Patent B2
US 7,404,061 · App. 11/057,664 · Granted Jul 22, 2008

Permanent pool memory management method and system

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,404,061
App. No.
11/057,664
Granted
Jul 22, 2008
Kind
B2
Abstract

A method, system, and computer program manager for a computing system memory in the operation of a computing process. At least one memory segment provides memory resources for the computing process. The memory segment includes a plurality of memory objects, each of the memory objects includes an equal number of bytes and has a predetermined order that associates the address of the memory object in the memory segment to the addresses of the remainder of the plurality of memory objects. A pointer identifies a first memory object from the plurality of memory objects. The first memory object occupies a first ordered position according to the predetermined order. The process allocates the first memory objects from the memory segment during the operation of the computing process. The pointer increments to a second memory object having a second ordered position relative to the first memory object. The process continues the allocating and incrementing steps on subsequently ordered memory objects within the memory segment as required by the computing process. The process deconstructs the at least one memory segment only upon the completion of the computing process.

Claims (26)

1. A method for managing a computing system memory device in the operation of a computing process, comprising the steps of:

constructing at least one memory segment for providing memory resources for the computing process, said memory segment comprising a plurality of contiguous consecutively ordered memory objects, each of said memory objects comprising a fixed equal number of bytes and having a predetermined order relating to the memory address of each of said plurality of memory objects;

enumerating each of said plurality of contiguous consecutively ordered memory objects according to said predetermined order of each of said plurality of memory objects within said at least one memory segment;

constructing a pointer identifying a first memory object from said plurality of memory objects, said first memory object having a first ordered position according to said predetermined order;

allocating said first memory object from said memory segment during the operation of the computing process;

incrementing said pointer to a second memory object, said second memory object having second ordered position relative to said first memory object;

continuing said allocating step and said incrementing step on subsequently ordered memory objects of said memory segment as required by said computing process;

deconstructing said at least one memory segment only upon said computing process no longer requiring said memory resources; and

resetting said at least one memory segment by deleting all of said plurality of memory objects in a single operation.

2. The method of claim 1 , further comprising the step of constructing a plurality of said at least one memory segments for traversing from a first one of said at least one memory segment to a second one of said at least one memory segment and in cooperation with each of said first and second one of said at least one memory segment performing said pointer constructing, said memory object allocating, and said pointer incrementing steps for managing a computing system memory device in the operation of said computing process.

3. The method of claim 1 , wherein said constructing step further comprises the step of constructing said at least one memory segment to comprise said plurality of memory objects without the use of a garbage collection process for managing said plurality of memory objects.

4. The method of claim 1 , further comprising the step of managing said computing system memory device in association with an iterative computing process.

5. The method of claim 1 , further comprising the step of managing said computing system memory device in association with the formation and use of a hash table for organizing and accessing a predetermined data set.

6. A system for managing a computing system memory device in the operation of a computing process, comprising:

a storage medium;

a processor connected to said storage medium and said processor:

constructing at least one memory segment for providing memory resources for the computing process, said memory segment comprising a plurality of contiguous consecutively ordered memory objects, each of said memory objects comprising a fixed equal number of bytes and having a predetermined order relating to the memory address of each of said plurality of memory objects;

enumerating each of said plurality of contiguous consecutively ordered memory objects according to said predetermined order of each of said plurality of memory objects within said at least one memory segment;

constructing a pointer identifying a first memory object from said plurality of memory objects, said first memory object having a first ordered position according to said predetermined order;

allocating said first memory object from said memory segment during the operation of the computing process;

incrementing said pointer to a second memory object, said second memory object having second ordered position relative to said first memory object;

continuing said allocating step and said incrementing step on subsequently ordered memory objects of said memory segment as required by said computing process;

deconstructing said at least one memory segment only upon said computing process no longer requiring said memory resources; and

resetting said at least one memory segment by deleting all of said plurality of memory objects in a single operation.

7. The system of claim 6 , further comprising constructing a plurality of said at least one memory segments for traversing from a first one of said at least one memory segment to a second one of said at least one memory segment and in cooperation with each of said first and second one of said at least one memory segment performing said pointer constructing, said memory object allocating, and said pointer incrementing steps for managing a computing system memory device in the operation of said computing process.

8. The system of claim 6 , wherein said constructing step further comprises constructing said at least one memory segment to comprise said plurality of memory objects without the use of a garbage collection process for managing said plurality of memory objects.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2010
From: NETQOS, INC.
To: COMPUTER ASSOCIATES THINK, INC.
Reel/Frame 024546/0286 →
RELEASE OF SECURITY INTEREST Recorded Dec 14, 2009
From: COMERICA BANK
To: NETQOS, INC.
Reel/Frame 023647/0219 →
SECURITY AGREEMENT Recorded Nov 2, 2007
From: NETQOS, INC.
To: COMERICA BANK
Reel/Frame 020062/0924 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 24, 2005
From: JORDAN, DAVID A.
To: NETQOS, INC.
Reel/Frame 016922/0372 →
Continuity (1)
Related Publication 20060184759A1 · Aug 17, 2006