发明名称 System and method for garbage collection with ambiguous roots
摘要 In a computer system, a dynamic memory allocation and recovery system and method, sometimes referred to as a garbage collection system and method, provides a heap of storage space for storing program objects generated by a task. The heap is divided into pages whose size is independent of physical page sizes used by the computer system. Pages are denoted an unallocated or allocated for storing program objects. A root stroage area stores information called hints regarding program objects stored in the heap. The hints can include ambiguous pointers which may or may not point to program objects stored in the heap. Garbage collection is performed by promoting and retaining all pages in the heap which are referenced by hints, and by copying into previously unallocated pages all other accessible program objects in the heap. All pointers to the copied program objects are replaced with pointers to the new copies of those program objects. As a result, all program objects located in pages pointed to by ambiguous pointers are left in their original position, and only the pointers to the copied program objects are replaced with pointers to the new copies of the program objects. After garbage collection, the set of allocated pages for the task includes all promoted and retained pages pointed to by ambiguous pointers as well as all pages containing the new copies of the copied program objects. All other pages in the heap become the unallocated pages available for storing new program objects generated by the task.
申请公布号 US4907151(A) 申请公布日期 1990.03.06
申请号 US19880251554 申请日期 1988.09.30
申请人 DIGITAL EQUIPMENT CORPORATION 发明人 BARTLETT, JOEL F.
分类号 G06F12/02 主分类号 G06F12/02
代理机构 代理人
主权项
地址
您可能感兴趣的专利