会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
热词
    • 1. 发明申请
    • Code preparation technique employing lock-free pointer operations
    • 采用无锁指针操作的代码准备技术
    • US20060218561A1
    • 2006-09-28
    • US11343678
    • 2006-01-30
    • Mark MoirDavid DetlefsSimon DohertyMaurice HerlihyVictor LuchangcoPaul MartinGuy Steele
    • Mark MoirDavid DetlefsSimon DohertyMaurice HerlihyVictor LuchangcoPaul MartinGuy Steele
    • G06F9/46
    • G06F12/0261G06F9/46G06F9/526
    • A methodology has been discovered for transforming garbage collection-dependent algorithms, shared object implementations and/or concurrent software mechanisms into a form that does not presume the existence of an independent, or execution environment provided, garbage collector. Algorithms, shared object implementations and/or mechanisms designed or transformed using techniques described herein provide explicit reclamation of storage using lock-free pointer operations. Transformations can be applied to lock-free algorithms and shared object implementations and preserve lock-freedom of such algorithms and implementations. As a result, existing and future lock-free algorithms and shared object implementations that depend on a garbage-collected execution environment can be exploited in environments that do not provide garbage collection. Furthermore, algorithms and shared object implementations that employ explicit reclamation of storage using lock-free pointer operations such as described herein may be employed in the implementation of a garbage collector itself.
    • 已经发现了一种方法,用于将垃圾回收依赖算法,共享对象实现和/或并发软件机制转换为不假定存在独立或执行环境(垃圾收集器)的形式。 使用本文描述的技术设计或变换的算法,共享对象实现和/或机制使用无锁指针操作来提供存储的显式回收。 转换可以应用于无锁算法和共享对象实现,并保持这种算法和实现的锁定自由度。 因此,依赖于垃圾回收执行环境的现有和将来的无锁算法和共享对象实现可以在不提供垃圾回收的环境中被利用。 此外,使用如本文所述的无锁定指针操作的使用显式回收存储的算法和共享对象实现可以用于实现垃圾收集器本身。
    • 2. 发明申请
    • Lightweight reference counting using single-target synchronization
    • 使用单目标同步的轻量级参考计数
    • US20060037026A1
    • 2006-02-16
    • US11226038
    • 2005-09-14
    • Simon DohertyMaurice HerlihyVictor LuchangcoMark Moir
    • Simon DohertyMaurice HerlihyVictor LuchangcoMark Moir
    • G06F9/46
    • G06F12/0261G06F9/46G06F9/526
    • We have developed a methodology for transforming garbage collection-dependent algorithms, shared object implementations and/or concurrent software mechanisms into a form that does not presume the existence of an independent, or execution environment provided, garbage collector. Algorithms, shared object implementations and/or mechanisms designed or transformed using techniques described herein provide explicit reclamation of storage using lock-free pointer operations. Transformations can be applied to lock-free algorithms and shared object implementations and preserve lock-freedom of such algorithms and implementations. As a result, existing and future lock-free algorithms and shared object implementations that depend on a garbage-collected execution environment can be exploited in environments that do not provide garbage collection. Furthermore, algorithms and shared object implementations that employ explicit reclamation of storage using lock-free pointer operations such as described herein may be employed in the implementation of a garbage collector itself.
    • 我们已经开发了一种将垃圾回收依赖算法,共享对象实现和/或并发软件机制转换为不假定存在独立或执行环境(垃圾收集器)的形式的方法。 使用本文描述的技术设计或变换的算法,共享对象实现和/或机制使用无锁指针操作来提供存储的显式回收。 转换可以应用于无锁算法和共享对象实现,并保持这种算法和实现的锁定自由度。 因此,依赖于垃圾回收执行环境的现有和将来的无锁算法和共享对象实现可以在不提供垃圾回收的环境中被利用。 此外,使用如本文所述的无锁定指针操作的使用显式回收存储的算法和共享对象实现可以用于实现垃圾收集器本身。
    • 3. 发明申请
    • Concurrency technique for shared objects
    • 共享对象的并发技术
    • US20060161737A1
    • 2006-07-20
    • US11384627
    • 2006-03-20
    • Paul MartinDavid DetlefsAlexander GarthwaiteGuy SteeleMark Moir
    • Paul MartinDavid DetlefsAlexander GarthwaiteGuy SteeleMark Moir
    • G06F13/28
    • G06F7/785G06F9/30032G06F9/526G06F9/544G06F2205/064G06F2209/521
    • In some embodiments, a Hat Trick deque requires only a single DCAS for most pushes and pops. The left and right ends do not interfere with each other until there is one or fewer items in the queue, and then a DCAS adjudicates between competing pops. By choosing a granularity greater than a single node, the user can amortize the costs of adding additional storage over multiple push (and pop) operations that employ the added storage. A suitable removal strategy can provide similar amortization advantages. The technique of leaving spare nodes linked in the structure allows an indefinite number of pushes and pops at a given deque end to proceed without the need to invoke memory allocation or reclamation so long as the difference between the number of pushes and the number of pops remains within given bounds. Both garbage collection dependent and explicit reclamation implementations are described.
    • 在一些实施例中,帽子技巧deque仅需要单个DCAS用于大多数按压和弹出。 在队列中有一个或多个项目之前,左右两端不会相互干扰,然后DCAS在竞争弹出之间进行裁决。 通过选择大于单个节点的粒度,用户可以通过使用添加的存储的多个推送(和弹出)操作来分摊添加附加存储的成本。 合适的清除策略可以提供类似的摊销优势。 在结构中链接的备用节点的技术允许在给定的deque端的无限数量的推送和弹出进行,而不需要调用内存分配或回收,只要推送次数和流量数之间的差异保持不变 在给定范围内。 描述垃圾收集相关和显式回收实现。
    • 5. 发明申请
    • Obstruction-free data structures and mechanisms with separable and/or substitutable contention management mechanisms
    • 无障碍的数据结构和具有可分离和/或可替换的争用管理机制的机制
    • US20060173885A1
    • 2006-08-03
    • US11106790
    • 2005-04-15
    • Mark MoirVictor LuchangcoMaurice Herlihy
    • Mark MoirVictor LuchangcoMaurice Herlihy
    • G06F17/00G06F7/00
    • G06F9/526G06F9/466G06F9/467G06F12/1475G06F2212/1052
    • We teach a powerful approach that greatly simplifies the design of non-blocking mechanisms and data structures, in part by, largely separate the issues of correctness and progress. At a high level, our methodology includes designing an “obstruction-free” implementation of the desired mechanism or data structure, which may then be combined with a contention management mechanism whose role is to facilitate the conditions under which progress of the obstruction-free implementation is assured. In general, the contention management mechanism is separable semantically from an obstruction-free concurrent shared/sharable object implementation to which it is/may be applied. In some cases, the contention management mechanism may actually be coded separately from the obstruction-free implementation. We elaborate herein on the notions of obstruction-freedom and contention management, and various possibilities for combining the two. In addition, we include description of some exemplary applications to particular concurrent software mechanisms and data structure implementations.
    • 我们教授一种强大的方法,大大简化了非阻塞机制和数据结构的设计,部分原因是在很大程度上分离了正确性和进度的问题。 在高层次上,我们的方法包括设计一个“无阻碍”的所需机制或数据结构的实施,然后将其与争用管理机制结合起来,其作用是促进无障碍实施进展的条件 放心 一般来说,争用管理机制在语义上与可以应用于其的无障碍并发共享/可共享对象实现是可分离的。 在某些情况下,争用管理机制实际上可以与无障碍的实现分开编码。 我们在这里阐述了阻挠自由和争论管理的概念,以及结合两者的各种可能性。 此外,我们将特定并发软件机制和数据结构实现的一些示例性应用程序的描述。
    • 6. 发明申请
    • Efficient Non-Blocking K-Compare-Single-Swap Operation
    • 高效的非阻塞K比较单互换操作
    • US20080077748A1
    • 2008-03-27
    • US11864624
    • 2007-09-28
    • Nir ShavitMark MoirVictor Luchangco
    • Nir ShavitMark MoirVictor Luchangco
    • G06F12/00
    • G06F12/0844G06F9/30G06F9/3004G06F9/38G06F9/466G06F9/52G06F12/00G06F12/08G06F12/0815G06F12/084G06F12/0842G06F12/0846Y10S707/99942
    • The design of nonblocking linked data structures using single-location synchronization primitives such as compare-and-swap (CAS) is a complex affair that often requires severe restrictions on the way pointers are used. One way to address this problem is to provide stronger synchronization operations, for example, ones that atomically modify one memory location while simultaneously verifying the contents of others. We provide a simple and highly efficient nonblocking implementation of such an operation: an atomic k-word-compare single-swap operation (KCSS). Our implementation is obstruction-free. As a result, it is highly efficient in the uncontended case and relies on contention management mechanisms in the contended cases. It allows linked data structure manipulation without the complexity and restrictions of other solutions. Additionally, as a building block of some implementations of our techniques, we have developed the first nonblocking software implementation of load-linked/store-conditional that does not severely restrict word size.
    • 使用单一位置同步原语(例如比较和交换(CAS))的非阻塞链接数据结构的设计是一种复杂的事情,通常需要对指针使用方式的严格限制。 解决这个问题的一个方法是提供更强大的同步操作,例如,在同时验证其他内容的同时原子地修改一个存储器位置的同步操作。 我们提供了这样一个操作的简单而高效的非阻塞实现:原子k字比较单交换操作(KCSS)。 我们的实施是无障碍的。 因此,在无争议的情况下效率高,依靠竞争管理机制。 它允许链接的数据结构操作,而不需要其他解决方案的复杂性和限制。 此外,作为我们技术的一些实现的构建块,我们开发了第一个不会严重限制字大小的无负载连接/存储条件的非阻塞软件实现。
    • 9. 发明申请
    • Ensuring progress in a system that supports execution of obstruction-free operations
    • 确保在支持执行无障碍操作的系统中取得进展
    • US20070157202A1
    • 2007-07-05
    • US11325062
    • 2006-01-03
    • Mark MoirVictor LuchangcoNir Shavit
    • Mark MoirVictor LuchangcoNir Shavit
    • G06F9/46
    • G06F9/52
    • One embodiment of the present invention provides a system that ensures that progress is made in an environment that supports execution of obstruction-free operations. During execution, when a process pi invokes an operation, the system checks a panic flag, which indicates whether a progress-ensuring mechanism is to be activated. If the panic flag is set, the progress-ensuring mechanism is activated, which causes the system to attempt to perform the operation by coordinating actions between processes to ensure that progress is made in spite of contention between the processes. On the other hand, if the panic flag is not set, the system attempts to perform the operation essentially as if the progress-ensuring mechanism were not present. In this case, if there is an indication that contention between processes is impeding progress, the system sets the panic flag, which causes the progress-ensuring mechanism to be activated so that processes will coordinate their actions to ensure that progress is made.
    • 本发明的一个实施例提供一种确保在支持执行无障碍操作的环境中进行的系统。 在执行期间,当进程p 调用操作时,系统检查紧急标志,该标志指示进程保证机制是否被激活。 如果设置了恐慌标志,则会启动进度保证机制,从而使系统尝试通过协调进程之间的动作来尝试执行操作,以确保进程尽可能在进程之间发生争用。 另一方面,如果不设置紧急状态标志,则系统试图执行操作,基本上就像进度保证机制不存在一样。 在这种情况下,如果存在进程之间的争用妨碍进展的指示,则系统设置紧急标志,这导致进程确保机制被激活,以便进程将协调其动作以确保进行进展。