or
Bookmark and Share
Adapting RCU for real-time operating system usage
 
   
Document Number
US Patent 7287135
Issued Date
October 23, 2007
Link
Inventors
Map
Abstract
A system and method is provided to support immediate freeing of a designated element from memory. Following a process of designating an element for removal from a data-structure, conditional limitations are used to determine if immediate freeing of the element from memory is available. The conditional limitations include determining that the instruction originates from a uniprocessor computer system. In addition, the conditional limitations include a determination as to whether a call_rcu primitive or synchronize_kernel primitive may be omitted, or whether the computer implemented instruction is operating in an interrupt handler. If the conditional limitations are met, the designated element may be immediately freed from memory.
Tags:
Description:
Amusing 0%
Clever 0%
Complex 0%
Efficient 0%
Historic 0%
Important 0%
Innovative 0%
Interesting 0%
Practical 0%
Simple 0%
Number of Claims:
15
Comments:
no comments yet
Published
October 23, 2007
Application Number
10/953,239
Filed
September 29, 2004
US Classification
711/159  
Int'l Classification
G06F   12/00   (20060101)  
Assistant Examiner
Attorney/Law Firm
USPTO Field of Search
Related Patents
7395263 - Realtime-safe read copy update with lock-free readers - Owned by International Business Machines Corporation (Armonk, NY)

A technique for realtime-safe detection of a grace period for deferring the destruction of a shared data element until pre-existing references to the data element have been removed. A pair of counters is established for each of one or more processors. A global counter selector determines which counter of each per-processor counter pair is a current counter. When reading a shared data element at a processor, the processor's current counter is incremented. Following counter incrementation, the processor's counter pair is tested for reversal to ensure that the incremented counter is still the current counter. If a counter reversal has occurred, such that the incremented counter is no longer current, the processor's other counter is incremented. Following referencing of the shared data element, any counter that remains incremented is decremented. Following an update to the shared data element wherein a pre-update version of the element is maintained, the global counter selector is switched to establish a new current counter of each per-processor counter pair. The non-current counter of each per-processor counter pair is tested for zero. The shared data element's pre-update version is destroyed upon the non-current counter of each per-processor counter pair being zero.

Claims
Description
About| FAQs| Terms & Disclaimer| Link to Us| Contact Us