Claims
- 1. A computer-implemented interface for reclaiming memory in a multi-threaded virtual machine environment, the multi-threaded virtual machine environment including a virtual machine, the computer-implemented interface comprising:a first module, the first module being associated with the virtual machine and having routines configured to interact interchangeably with a plurality of garbage collectors, the routines including a first routine for initiating a garbage collection process within the virtual machine environment, a second routine for scanning roots associated with the virtual machine environment, a third routine for following roots through objects associated with the virtual machine environment; and a second module, the second module being separate from the first module, the second module being arranged to interface with the first module, the second module including a fourth routine for initializing a heap in the virtual machine environment, a fifth routine for allocating an object in the virtual machine environment, and a sixth routine for performing the garbage collection process.
- 2. A computer-implemented interface according to claim 1 wherein the second module further includes at least a seventh routine for implementing barriers for the garbage collection process.
- 3. A computer-implemented interface according to claim 2 wherein the barriers include a read barrier and a write barrier.
- 4. A computer-implemented interface according to claim 1 wherein the first module includes a seventh routine for handling particular objects associated with the virtual machine environment.
- 5. A computer-implemented interface according to claim 1 wherein the routines of the first module are further configured to interact interchangeably with a plurality of garbage collectors, the garbage collectors operating generally according to a plurality of garbage collection algorithms.
- 6. A computer-implemented interface according to claim 1 wherein the fourth, fifth, and sixth routines are each further configured to interact only with those garbage collectors that are algorithm-specific garbage collectors each operating generally according to the same garbage collection algorithm.
- 7. A computer-implemented interface for interchangeable use with garbage collectors in a virtual machine environment, comprising:a first module, the first module being associated with the virtual machine and having common routines configured to interact interchangeably with a plurality of garbage collectors operating generally according to a plurality of garbage collection algorithms, the common routines including a first routine for initiating a garbage collection process within the virtual machine environment; and a second module, the second module being separate from the first module, the second module being arranged to interface with the first module and having algorithm-specific routines that are not configured to interact interchangeably with the plurality of garbage collectors, the algorithm-specific routines including a second routine for initializing a heap in the virtual machine environment.
- 8. The computer-implemented interface of claim 7 wherein the algorithm-specific routines are further configured to interact only with those garbage collectors that are algorithm-specific garbage collectors each operating generally according to the same garbage collection algorithm.
- 9. The computer-implemented interface of claim 7 wherein the first module further comprises a third routine for scanning roots associated with the virtual machine environment, a fourth routine for following roots through objects associated with the virtual machine environment.
- 10. A computer-implemented interface of claim 9 wherein the second module further comprises a fifth routine for allocating an object in the virtual machine environment, and a sixth routine for performing the garbage collection process.
- 11. The computer-implemented interface of claim 10 wherein the second module further includes at least a seventh routine for implementing barriers for the garbage collection process.
- 12. The computer-implemented interface of claim 11 wherein the barriers include a read barrier and a write barrier.
- 13. The computer-implemented interface of claim 7 wherein the first module includes a third routine for handling particular objects associated with the virtual machine environment.
CROSS REFERENCE TO RELATED APPLICATION
This application takes priority under U.S.C. 19(e) of United States Provisional application No. 60/210,924 filed Jun. 12, 2000 entitled, “METHOD AND APPARATUS FOR IMPLEMENTING MODULAR GARBAGE COLLECTORS” by Fresko et. al. which is incorporated by reference in its entirety.
US Referenced Citations (7)
| Number |
Name |
Date |
Kind |
|
5561785 |
Blandy et al. |
Oct 1996 |
A |
|
5692193 |
Jagannathan et al. |
Nov 1997 |
A |
|
5845298 |
O'Connor et al. |
Dec 1998 |
A |
|
6065020 |
Dussud |
May 2000 |
A |
|
6081665 |
Nilsen et al. |
Jun 2000 |
A |
|
6098889 |
Ogawa et al. |
Aug 2000 |
A |
|
6671707 |
Hudson et al. |
Dec 2003 |
B1 |
Foreign Referenced Citations (3)
| Number |
Date |
Country |
| 0959409 |
Nov 1999 |
EP |
| 0994416 |
Apr 2000 |
EP |
| WO 0033192 |
Jun 2000 |
WO |
Non-Patent Literature Citations (1)
| Entry |
| International Search Report in corresponding PCT application PCT/US 01/18465. |
Provisional Applications (1)
|
Number |
Date |
Country |
|
60/210924 |
Jun 2000 |
US |