Tags:
create new tag
, view all tags
from LWN: "Read-copy-update (RCU) is a mutual exclusion technique which can operate without locking most of the time."

Note that this topic is used as an example on Programming Techniques, so most of the text is duplicated there.

See:

Contents

Notes

from LWN:

Read-copy-update (RCU) is a mutual exclusion technique which can operate without locking most of the time. It can yield significant performance benefits when the data to be protected is accessed via a pointer, is read frequently, changed rarely, and references to the structure are not held while a kernel thread sleeps. The core idea behind RCU is that, when the data requires updating, a pointer to a new structure containing the new data can be stored immediately. The old structure containing the outdated data can then be freed at leisure, after it is certain that no process in the system holds a reference to that structure. For details on the ideas behind RCU, see this LWN article, or (for many details) this paper. Just don't ask SCO, even though they claim to own the technique.

Incidentally, I don't endorse in any way SCO's claim of ownership for this technique: (being cryptic for the moment because I'm tired of trying to retype what I lost a few minutes ago -- will do a "checkpoint save" and take a break, then try to finish reconstruction)

  • I have a vague recollection of having seen this (or a very similar technique) being describe somewhere before.
  • I might re-invent independently -- my Nedit macros for folding (the multipass search and replace approach (not the replace \n with \f approach), are my own invention (thanks to the mother of invention) (see NmTWikiFold), and likewise the refinement to use stylesheets in AbiWord is an independent invention, even though I suspect that Word uses a variation of that approach in their recent collapsible outlining approach (since Word for Dos). I feel like I wrote this section better the first time (see note on Programming Techniques re <ctrl>w vs. <shift>w) — I'm not eager to refine to get closer to the original — this is most of the gist of what I said.

Contributors

  • () RandyKramer - 13 Jul 2003
  • If you edit this page: add your name here; move this to the next line; and if you've used a comment marker (your initials in parenthesis), include it before your WikiName.

Page Ratings

Topic revision: r1 - 2003-07-13 - RandyKramer
 
  • Learn about TWiki  
  • Download TWiki
This site is powered by the TWiki collaboration platform Powered by PerlCopyright 1999-2017 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding WikiLearn? WebBottomBar">Send feedback
See TWiki's New Look