Adaptive reader-writer lock
    21.
    发明申请
    Adaptive reader-writer lock 失效
    自适应读写器锁

    公开(公告)号:US20050149634A1

    公开(公告)日:2005-07-07

    申请号:US11059921

    申请日:2005-02-17

    申请人: Paul McKenney

    发明人: Paul McKenney

    IPC分类号: G06F9/46 G06F15/16

    CPC分类号: G06F9/52

    摘要: A method and computer system for dynamically selecting an optimal synchronization mechanism for a data structure in a multiprocessor environment. The method determines a quantity of read-side and write-side acquisitions, and evaluates the data to determine an optimal mode for efficiently operating the computer system while maintaining reduced overhead. The method incorporates data received from the individual units within a central processing system, the quantity of write-side acquisitions in the system, and data which has been subject to secondary measures, such as formatives of digital filters. The data subject to secondary measures includes, but is not limited to, a quantity of read-side acquisitions, a quantity of write-side acquisitions, and a quantity of read-hold durations. Based upon the individual unit data and the system-wide data, including the secondary measures, the operating system may select the most efficient synchronization mechanism from among the mechanisms available. Accordingly, efficiency of a computer system may be enhanced with the ability to selectively choose an optimal synchronization mechanism based upon selected and calculated parameters.

    摘要翻译: 一种用于在多处理器环境中动态选择数据结构的最佳同步机制的方法和计算机系统。 该方法确定读取侧和写入侧采集的数量,并且评估数据以确定用于有效地操作计算机系统的最佳模式,同时保持减少的开销。 该方法包括从中央处理系统中的各个单元接收的数据,系统中的写入侧采集的数量以及已经进行二次测量的数据,例如数字滤波器的格式。 受二次测量的数据包括但不限于读取侧采集的数量,写入侧采集的数量以及读取持续时间的数量。 基于单个单元数据和包括次要测量的全系统数据,操作系统可以从可用的机制中选择最有效的同步机制。 因此,可以通过基于所选择和计算的参数选择最佳同步机制的能力来增强计算机系统的效率。

    Utilizing hardware transactional approach to execute code after initially utilizing software locking by employing pseudo-transactions
    22.
    发明申请
    Utilizing hardware transactional approach to execute code after initially utilizing software locking by employing pseudo-transactions 有权
    在最初利用伪交易软件锁定后,利用硬件事务处理方式执行代码

    公开(公告)号:US20050060559A1

    公开(公告)日:2005-03-17

    申请号:US10661017

    申请日:2003-09-12

    申请人: Paul McKenney

    发明人: Paul McKenney

    IPC分类号: G06F21/00 H04L9/00

    摘要: Utilizing a hardware transactional approach to execute a code section by employing pseudo-transactions, after initially utilizing software locking, is disclosed. A method is disclosed that utilizes a software approach to locking memory to execute a code section relating to memory. The software approach employs a pseudo-transaction to determine whether a hardware approach to transactional memory to execute the threshold would have been successful. Where the hardware approach to transactional memory to execute the code section satisfies a threshold based on success of at least the pseudo-transaction, the method subsequently utilizes the hardware approach to execute the code section. The hardware approach may include starting a transaction inclusive of the code section, conditionally executing the transaction, and, upon successfully completing the transaction, committing execution of the transaction to the memory to which the code section relates.

    摘要翻译: 在最初利用软件锁定之后,利用硬件事务方法来执行伪代码执行代码段。 公开了一种利用软件方法锁定存储器来执行与存储器相关的代码部分的方法。 软件方法采用伪事务来确定执行阈值的事务内存的硬件方法是否已经成功。 在执行代码段的事务存储器的硬件​​方法基于至少伪事务的成功来满足阈值的情况下,该方法随后利用硬件方法来执行代码段。 硬件方法可以包括开始包括代码段的事务,有条件地执行事务,并且在成功完成事务之后,将事务的执行提交到与代码段相关的存储器。

    Read-copy-update (RCU) operations with reduced memory barrier usage
    24.
    发明申请
    Read-copy-update (RCU) operations with reduced memory barrier usage 有权
    读取复制更新(RCU)操作,减少了内存障碍的使用

    公开(公告)号:US20070226431A1

    公开(公告)日:2007-09-27

    申请号:US11388364

    申请日:2006-03-24

    IPC分类号: G06F13/00

    摘要: Read-copy-update (RCU) is performed within real-time and other types of systems, such that memory barrier usage within RCU is reduced. A computerized system includes processors, memory, updaters, and readers. The updaters update contents of a section of the memory by using first and second sets of per-processor counters, first and second sets of per-processor need-memory-barrier bits, and a global flip-counter bit. The global flip-counter bit specifies which of the first or second set of the per-processor counters and the per-processor need-memory-barrier bits is a current set, and which is a last set. The readers read the contents of the section of the memory by using the first and second sets of per-processor counters, the first and second sets of per-processor need-memory-barrier bits, and the global flip-counter bit, in a way that significantly reduces the need for memory barriers during such read operations.

    摘要翻译: 读 - 拷贝更新(RCU)在实时和其他类型的系统中执行,使得RCU内的存储障碍使用减少。 计算机化系统包括处理器,存储器,更新器和读取器。 更新者通过使用第一和第二组每处理器计数器,第一和第二组每处理器需要存储器障碍位和全局翻转位来更新存储器的一部分的内容。 全局翻转计数器位指定每个处理器计数器的第一组或第二组中的哪一个,并且每个处理器需要存储器障碍位是当前集合,哪个是最后一组。 读者通过使用第一组和第二组每处理器计数器,第一组和第二组每个处理器需要存储器屏障位和全局翻转计数器位来读取存储器部分的内容,其中 这样在这种读取操作期间显着地减少了对存储器障碍的需要。

    Hybrid multi-threaded access to data structures using hazard pointers for reads and locks for updates
    25.
    发明申请
    Hybrid multi-threaded access to data structures using hazard pointers for reads and locks for updates 有权
    使用危险指针进行数据结构的混合多线程访问,用于更新的读取和锁定

    公开(公告)号:US20060265373A1

    公开(公告)日:2006-11-23

    申请号:US11134484

    申请日:2005-05-20

    IPC分类号: G06F17/30

    摘要: Hybrid multi-threaded access to data structures is provided in which hazard pointers are used for reads and locks are used for updates. Where a reader is attempting to read a data structure, the reader maintains a hazard pointer to the data structure before reading it, without globally acquiring a lock on the data structure. Upon the reader being finished reading the data structure, it removes the hazard pointer from the data structure. Where an updater is attempting to update the data structure, the updater globally acquires a lock on the data structure before updating it. Upon the updater being finished updating the data structure, it releases the lock from the data structure. To delete the data structure, first it is determined whether any hazard pointers point to the data structure, and where no hazard pointers do, the data structure is deleted.

    摘要翻译: 提供对数据结构的混合多线程访问,其中使用危险指针进行读取,锁用于更新。 读者尝试读取数据结构的地方,读者在读取数据结构之前会保留对数据结构的危险指针,而不会全局获取数据结构上的锁定。 读者读完数据结构后,从数据结构中删除危险指针。 在更新程序尝试更新数据结构的地方,更新程序在更新数据结构之前全局获取数据结构的锁定。 在更新程序完成更新数据结构后,它将从数据结构中释放锁。 要删除数据结构,首先确定任何危险指针是否指向数据结构,如果没有危险指针,则删除数据结构。

    Method and apparatus for updating first data value before second data value
    26.
    发明申请
    Method and apparatus for updating first data value before second data value 有权
    用于在第二数据值之前更新第一数据值的方法和设备

    公开(公告)号:US20060259520A1

    公开(公告)日:2006-11-16

    申请号:US11129803

    申请日:2005-05-16

    申请人: Paul McKenney

    发明人: Paul McKenney

    IPC分类号: G06F17/30

    摘要: A flag and a wait period are used to guarantee that readers of two data values see the updated first value before they see the updated second value, where the second value has to be updated after the first value is updated and thus is dependent on the first value. The first value is updated, and a flag associated with the first data value is set. The flag effectively prevents further updating of the first data value until it has been cleared. A length of time is waited for, such that any reading of the first data value and the second data value is guaranteed to not see the second data value as updated unless the first data value is also seen as updated. The flag is then cleared, such that further updating of the first data value can again occur. The second data value is finally updated.

    摘要翻译: 使用标志和等待时间段来保证两个数据值的读取器在它们看到更新的第二值之前看到更新的第一个值,其中第二个值必须在第一个值被更新之后被更新,并且因此依赖于第一个值 值。 第一个值被更新,并且设置与第一数据值相关联的标志。 该标志有效地防止了第一个数据值的进一步更新,直到它被清除。 等待一段时间,使得保证第一数据值和第二数据值的任何读取不会看到第二数据值被更新,除非第一数据值也被视为更新。 然后清除该标志,使得可以再次发生第一数据值的进一步更新。 第二个数据值最终被更新。

    Hard real-time response
    27.
    发明申请
    Hard real-time response 失效
    硬实时响应

    公开(公告)号:US20060150185A1

    公开(公告)日:2006-07-06

    申请号:US11017083

    申请日:2004-12-20

    IPC分类号: G06F9/46

    摘要: A general purposed operating system is modified to support hard real-time processing of hard real-time tasks. At least one processing unit in the operating system is designated as a hard real-time processing unit to process hard real-time tasks, and at least one processing unit in the operating system is designated as a non-hard real-time processing unit to process non-hard real-time tasks and designated non-deterministic processing steps. Hard real-time tasks assigned to the non-hard real-time processing unit may be transferred to the hard real-time processing unit, and tasks assigned to the hard real-time processing unit that are about to execute a non-deterministic processing step may be transferred to the non-hard real-time processing unit.

    摘要翻译: 修改了一个通用的操作系统,以支持对硬实时任务的硬实时处理。 将操作系统中的至少一个处理单元指定为硬实时处理单元来处理硬实时任务,并将操作系统中的至少一个处理单元指定为非硬实时处理单元 处理非硬实时任务和指定的非确定性处理步骤。 分配给非硬实时处理单元的硬实时任务可以被传送到硬实时处理单元,并且分配给硬实时处理单元的将要执行非确定性处理步骤的任务 可以转移到非硬实时处理单元。

    Apparatus, system, and method for automatically minimizing real-time task latency and maximizing non-real time task throughput
    28.
    发明申请
    Apparatus, system, and method for automatically minimizing real-time task latency and maximizing non-real time task throughput 有权
    用于自动最小化实时任务延迟并最大化非实时任务吞吐量的装置,系统和方法

    公开(公告)号:US20060085793A1

    公开(公告)日:2006-04-20

    申请号:US10966600

    申请日:2004-10-15

    申请人: Paul McKenney

    发明人: Paul McKenney

    IPC分类号: G06F9/46

    CPC分类号: G06F9/526

    摘要: An apparatus, system, and method are provided for automatically minimizing Real-Time (RT) task latency and maximizing Non-Real Time (NRT) task throughput. The apparatus may include a task manager, a determination module, and optionally a tracking module. The task manager may execute a NRT task configured to obtain exclusive access to a resource within a multi-processor environment. The determination module identifies a RT task within the multi-processor environment that shares exclusive access to the resource with the NRT task. Optionally, the tracking module selectively executes or bypasses a preemption point associated with the NRT task in response to the RT task becoming runnable. Alternatively, the NRT task selectively executes or bypasses a predefined preemption point in response to the RT task becoming runnable. In this manner, RT tasks on any processor of the multi-processor environment meet minimum latency thresholds and NRT tasks automatically provide maximum throughput in the multi-processor environment.

    摘要翻译: 提供了一种装置,系统和方法,用于自动最小化实时(RT)任务延迟并最大化非实时(NRT)任务吞吐量。 该装置可以包括任务管理器,确定模块和可选的跟踪模块。 任务管理器可以执行被配置为获得对多处理器环境内的资源的独占访问的NRT任务。 确定模块识别多处理器环境中的与RTT任务共享对资源的独占访问的RT任务。 可选地,跟踪模块响应于RT任务变得可运行而选择性地执行或绕过与NRT任务相关联的抢占点。 或者,NRT任务响应于RT任务变得可运行而选择性地执行或绕过预定义的抢占点。 以这种方式,多处理器环境的任何处理器上的RT任务满足最小延迟阈值,NRT任务在多处理器环境中自动提供最大吞吐量。

    Efficient sharing of memory between applications running under different operating systems on a shared hardware system
    29.
    发明申请
    Efficient sharing of memory between applications running under different operating systems on a shared hardware system 失效
    在共享硬件系统上在不同操作系统下运行的应用程序之间高效地共享内存

    公开(公告)号:US20050246505A1

    公开(公告)日:2005-11-03

    申请号:US10834699

    申请日:2004-04-29

    IPC分类号: G06F9/46 G06F12/00 G06F12/10

    摘要: A system, method and computer program product for efficient sharing of memory between first and second applications running under first and second operating systems on a shared hardware system. The hardware system runs a hypervisor that supports concurrent execution of the first and second operating systems, and further includes a region of shared memory managed on behalf of the first and second applications. Techniques are used to avoid preemption when the first application is accessing the shared memory region. In this way, the second application will not be unduly delayed when attempting to access the shared memory region due to delays stemming from the first application's access of the shared memory region. This is especially advantageous when the second application and operating system are adapted for real-time processing. Additional benefits can be obtained by taking steps to minimize memory access faults.

    摘要翻译: 一种用于在共享硬件系统上在第一和第二操作系统下运行的第一和第二应用之间高效共享存储器的系统,方法和计算机程序产品。 硬件系统运行支持并行执行第一和第二操作系统的管理程序,并且还包括代表第一和第二应用程序管理的共享存储器的区域。 当第一个应用程序正在访问共享内存区域时,技术用于避免抢占。 以这种方式,由于来自第一应用程序访问共享存储器区域的延迟,尝试访问共享存储器区域时,第二应用将不会被不适当地延迟。 当第二应用和操作系统适于实时处理时,这是特别有利的。 通过采取措施尽量减少内存访问故障可以获得额外的好处。

    Atomic renaming and moving of data files while permitting lock-free look-ups
    30.
    发明申请
    Atomic renaming and moving of data files while permitting lock-free look-ups 失效
    在允许无锁查询的同时重新命名和移动数据文件

    公开(公告)号:US20050223004A1

    公开(公告)日:2005-10-06

    申请号:US10813470

    申请日:2004-03-30

    IPC分类号: G06F7/00 G06F17/30

    CPC分类号: G06F17/30067

    摘要: Atomic renaming and moving of data files, while permitting lock-free look-ups to the data files, is disclosed. A temporary record may be created within a hash chain encompassing a record for a data file and corresponding to a location of the data file within a computer file system. The temporary record is linked within the hash chain so that the temporary record points to the same records to which the record for the data file points. The record for the data file is renamed with a new name, and/or moved to a new location within the computer file system, and the temporary record is removed from the hash chain. Before the temporary record is removed, look-ups of the data file resolve to the temporary record, the temporary record causing the look-ups to wait until the record for the data file has been renamed and/or moved and the temporary record removed.

    摘要翻译: 公开了原始重命名和移动数据文件,同时允许对数据文件进行无锁查找。 可以在包含数据文件的记录并且对应于计算机文件系统内的数据文件的位置的散列链内创建临时记录。 临时记录在散列链中链接,以便临时记录指向数据文件记录指向的相同记录。 数据文件的记录用新名称重命名,和/或移动到计算机文件系统中的新位置,临时记录从哈希链中删除。 在删除临时记录之前,数据文件的查找将解析为临时记录,导致查找的临时记录等待直到数据文件的记录已被重命名和/或移动,并删除临时记录。