Resources Contact Us Home
Non-blocking memory management mechanism for supporting dynamic-sized data structures

Image Number 7 for United States Patent #7194495.

Solutions to a value recycling problem that we define herein facilitate implementations of computer programs that may execute as multithreaded computations in multiprocessor computers, as well as implementations of related shared data structures. Some exploitations of the techniques described herein allow non-blocking, shared data structures to be implemented using standard dynamic allocation mechanisms (such as malloc and free). Indeed, we present several exemplary realizations of dynamic-sized, non-blocking shared data structures that are not prevented from future memory reclamation by thread failures and which depend (in some implementations) only on widely-available hardware support for synchronization. Some exploitations of the techniques described herein allow non-blocking, indeed even lock-free or wait-free, implementations of dynamic storage allocation for shared data structures. A class of general solutions to value recycling is described in the context of an illustration we call the Repeat Offender Problem (ROP), including illustrative Application Program Interfaces (APIs) defined in terms of the ROP terminology. Furthermore, specific solutions, implementations and algorithm, including a Pass-The-Buck (PTB) implementation are described.

  Recently Added Patents
Method and system for testing indirect bandgap semiconductor devices using luminescence imaging
Image processing apparatus, image processing system, and image processing method
Optical modulation element
Method and system for detecting data modification within computing device
Haworthia plant named `CAPETOWN`
Radiation imaging device
LED lighting module
  Randomly Featured Patents
Manual control apparatus
Consumer self-activated financial card
Curved belt conveyor
Rigid polyurethane foam based on polyethers of TDA
Method of automatic equalized distribution of ring loads for telephone exchange system
Life maintenance apparatus
Dual cookie security system
Method and apparatus for short term inspection or long term structural health monitoring
Method for evaluating and correcting total measurement signals
Fast reconfigurable programmable device