Method for practical concurrent copying garbage collection offering minimal thread block times
    1.
    发明授权
    Method for practical concurrent copying garbage collection offering minimal thread block times 有权
    实际并发复制垃圾回收方法,提供最少的线程阻塞时间

    公开(公告)号:US06671707B1

    公开(公告)日:2003-12-30

    申请号:US09421430

    申请日:1999-10-19

    IPC分类号: G06F1730

    CPC分类号: G06F12/0269 Y10S707/99957

    摘要: A method for practical concurrent copying garbage collection offering minimal thread blocking times. The method comprises achieving dynamic consistency between objects in an old memory space and objects in a new memory space. Threads are allowed to progress during garbage collection and threads are flipped one at a time. No read barrier is required.

    摘要翻译: 实现并发复制垃圾回收的方法,提供最少的线程阻塞时间。 该方法包括实现旧存储空间中的对象与新存储空间中的对象之间的动态一致性。 允许线程在垃圾回收过程中进行,线程一次一个地翻转。 不需要阅读障碍。

    System for achieving atomic non-sequential multi-word operations in
shared memory
    2.
    发明授权
    System for achieving atomic non-sequential multi-word operations in shared memory 失效
    用于在共享存储器中实现原子非顺序多字操作的系统

    公开(公告)号:US5428761A

    公开(公告)日:1995-06-27

    申请号:US849887

    申请日:1992-03-12

    IPC分类号: G06F12/08 G06F12/00

    CPC分类号: G06F12/0831

    摘要: A computer system provides transactional memory operations, in which a selected data item in a shared memory is referenced by a CPU in local storage (such as a write-back cache). The CPU performs some operation to alter or use the data item while it is in local memory, and meanwhile monitors the bus to the shared memory to see if another processor references the selected location (as by a snoop mechanism); if so, a status bit is toggled to indicate that the transaction must be scrubbed. When the operation has been completed by the CPU, it attempts to "commit" the transaction, and this includes checking the status bit; if the bit has been toggled, the transaction aborts, the data item is invalidated in local memory, and the selected location in shared memory is not affected. If the status bit has not been toggled, the transaction is committed and the altered data item becomes visible to the other processors, and may be written back to the shared memory. To distinguish these transactional memory operations from standard loads and stores to memory, an indication of "transactional" or "not transactional" is added to the local storage, i.e., to a cache line. The transactional memory operations have the characteristics of serializability and atomicity.

    摘要翻译: 计算机系统提供事务性存储器操作,其中共享存储器中的选定数据项由本地存储器(例如回写缓存)中的CPU引用。 CPU在本地存储器中执行一些操作来更改或使用数据项,同时将总线监视到共享内存,以查看另一个处理器是否引用所选位置(如通过窥探机制); 如果是,则切换状态位以指示必须擦除事务。 当CPU完成操作时,它尝试“提交”事务,这包括检查状态位; 如果该位已被切换,则事务中止,数据项在本地存储器中无效,并且共享存储器中的选定位置不受影响。 如果状态位未被切换,则事务被提交,并且更改的数据项对其他处理器可见,并且可以被写回共享存储器。 为了区分这些事务性存储器操作与标准加载和存储到存储器,将“事务性”或“非事务性”的指示添加到本地存储器,即高速缓存行。 事务记忆操作具有可序列化和原子性的特点。