发明名称 FACILITATING GARBAGE COLLECTION DURING OBJECT VERSIONING FOR SPACE AND TIME DIMENSIONAL COMPUTING
摘要 <p>One embodiment of the present invention provides a system that facilitates garbage collection and supports space and time dimensional execution of a computer program. The system executes program instructions with a head thread and speculatively executes program instructions in advance of the head thread with a speculative thread. During execution of the speculative thread, the system creates space-time dimensioned versions of objects from a system heap that are modified by the speculative thread. These space-time dimensioned versions of objects are created in a speculative heap that is separate from the system heap. The system keeps a record of objects for which space-time dimensioned versions have been created during updates to value fields and during updates to pointer fields by the speculative thread. This record is used during a garbage collection operation to identify live objects so that the garbage collection operation can move the live objects from the speculative heap to the system heap. In one embodiment of the present invention, if the speculative thread causes a hazard condition, the system performs a rollback. This rollback uses the record to identify objects in the system heap that have been modified by the speculative thread so that the modifications can be undone. Note that a hazard condition can occur if the head thread writes to a field that was read by the speculative thread, or alternatively if the head thread writes to a space-time dimensioned version of an object that was written to by the speculative thread.</p>
申请公布号 WO2000070443(A2) 申请公布日期 2000.11.23
申请号 US2000012494 申请日期 2000.05.05
申请人 发明人
分类号 主分类号
代理机构 代理人
主权项
地址