linux/Documentation/zh_CN/volatile-considered-harmful.txt
<<
>>
Prefs
   1Chinese translated version of Documentation/volatile-considered-harmful.txt
   2
   3If you have any comment or update to the content, please contact the
   4original document maintainer directly.  However, if you have a problem
   5communicating in English you can also ask the Chinese maintainer for
   6help.  Contact the Chinese maintainer if this translation is outdated
   7or if there is a problem with the translation.
   8
   9Maintainer: Jonathan Corbet <corbet@lwn.net>
  10Chinese maintainer: Bryan Wu <bryan.wu@analog.com>
  11---------------------------------------------------------------------
  12Documentation/volatile-considered-harmful.txt \xE7\x9A\x84\xE4\xB8\xAD\xE6\x96\x87\xE7\xBF\xBB\xE8\xAF\x91
  13
  14\xE5\xA6\x82\xE6\x9E\x9C\xE6\x83\xB3\xE8\xAF\x84\xE8\xAE\xBA\xE6\x88\x96\xE6\x9B\xB4\xE6\x96\xB0\xE6\x9C\xAC\xE6\x96\x87\xE7\x9A\x84\xE5\x86\x85\xE5\xAE\xB9\xEF\xBC\x8C\xE8\xAF\xB7\xE7\x9B\xB4\xE6\x8E\xA5\xE8\x81\x94\xE7\xB3\xBB\xE5\x8E\x9F\xE6\x96\x87\xE6\xA1\xA3\xE7\x9A\x84\xE7\xBB\xB4\xE6\x8A\xA4\xE8\x80\x85\xE3\x80\x82\xE5\xA6\x82\xE6\x9E\x9C\xE4\xBD\xA0\xE4\xBD\xBF\xE7\x94\xA8\xE8\x8B\xB1\xE6\x96\x87
  15\xE4\xBA\xA4\xE6\xB5\x81\xE6\x9C\x89\xE5\x9B\xB0\xE9\x9A\xBE\xE7\x9A\x84\xE8\xAF\x9D\xEF\xBC\x8C\xE4\xB9\x9F\xE5\x8F\xAF\xE4\xBB\xA5\xE5\x90\x91\xE4\xB8\xAD\xE6\x96\x87\xE7\x89\x88\xE7\xBB\xB4\xE6\x8A\xA4\xE8\x80\x85\xE6\xB1\x82\xE5\x8A\xA9\xE3\x80\x82\xE5\xA6\x82\xE6\x9E\x9C\xE6\x9C\xAC\xE7\xBF\xBB\xE8\xAF\x91\xE6\x9B\xB4\xE6\x96\xB0\xE4\xB8\x8D\xE5\x8F\x8A\xE6\x97\xB6\xE6\x88\x96\xE8\x80\x85\xE7\xBF\xBB
  16\xE8\xAF\x91\xE5\xAD\x98\xE5\x9C\xA8\xE9\x97\xAE\xE9\xA2\x98\xEF\xBC\x8C\xE8\xAF\xB7\xE8\x81\x94\xE7\xB3\xBB\xE4\xB8\xAD\xE6\x96\x87\xE7\x89\x88\xE7\xBB\xB4\xE6\x8A\xA4\xE8\x80\x85\xE3\x80\x82
  17
  18\xE8\x8B\xB1\xE6\x96\x87\xE7\x89\x88\xE7\xBB\xB4\xE6\x8A\xA4\xE8\x80\x85\xEF\xBC\x9A Jonathan Corbet <corbet@lwn.net>
  19\xE4\xB8\xAD\xE6\x96\x87\xE7\x89\x88\xE7\xBB\xB4\xE6\x8A\xA4\xE8\x80\x85\xEF\xBC\x9A \xE4\xBC\x8D\xE9\xB9\x8F  Bryan Wu <bryan.wu@analog.com>
  20\xE4\xB8\xAD\xE6\x96\x87\xE7\x89\x88\xE7\xBF\xBB\xE8\xAF\x91\xE8\x80\x85\xEF\xBC\x9A \xE4\xBC\x8D\xE9\xB9\x8F  Bryan Wu <bryan.wu@analog.com>
  21\xE4\xB8\xAD\xE6\x96\x87\xE7\x89\x88\xE6\xA0\xA1\xE8\xAF\x91\xE8\x80\x85\xEF\xBC\x9A \xE5\xBC\xA0\xE6\xB1\x89\xE8\xBE\x89  Eugene Teo <eugeneteo@kernel.sg>
  22               \xE6\x9D\xA8\xE7\x91\x9E  Dave Young <hidave.darkstar@gmail.com>
  23\xE4\xBB\xA5\xE4\xB8\x8B\xE4\xB8\xBA\xE6\xAD\xA3\xE6\x96\x87
  24---------------------------------------------------------------------
  25
  26\xE4\xB8\xBA\xE4\xBB\x80\xE4\xB9\x88\xE4\xB8\x8D\xE5\xBA\x94\xE8\xAF\xA5\xE4\xBD\xBF\xE7\x94\xA8\xE2\x80\x9Cvolatile\xE2\x80\x9D\xE7\xB1\xBB\xE5\x9E\x8B
  27------------------------------
  28
  29C\xE7\xA8\x8B\xE5\xBA\x8F\xE5\x91\x98\xE9\x80\x9A\xE5\xB8\xB8\xE8\xAE\xA4\xE4\xB8\xBAvolatile\xE8\xA1\xA8\xE7\xA4\xBA\xE6\x9F\x90\xE4\xB8\xAA\xE5\x8F\x98\xE9\x87\x8F\xE5\x8F\xAF\xE4\xBB\xA5\xE5\x9C\xA8\xE5\xBD\x93\xE5\x89\x8D\xE6\x89\xA7\xE8\xA1\x8C\xE7\x9A\x84\xE7\xBA\xBF\xE7\xA8\x8B\xE4\xB9\x8B\xE5\xA4\x96\xE8\xA2\xAB\xE6\x94\xB9\xE5\x8F\x98\xEF\xBC\x9B\xE5\x9B\xA0\xE6\xAD\xA4\xEF\xBC\x8C\xE5\x9C\xA8\xE5\x86\x85\xE6\xA0\xB8
  30\xE4\xB8\xAD\xE7\x94\xA8\xE5\x88\xB0\xE5\x85\xB1\xE4\xBA\xAB\xE6\x95\xB0\xE6\x8D\xAE\xE7\xBB\x93\xE6\x9E\x84\xE6\x97\xB6\xEF\xBC\x8C\xE5\xB8\xB8\xE5\xB8\xB8\xE4\xBC\x9A\xE6\x9C\x89C\xE7\xA8\x8B\xE5\xBA\x8F\xE5\x91\x98\xE5\x96\x9C\xE6\xAC\xA2\xE4\xBD\xBF\xE7\x94\xA8volatile\xE8\xBF\x99\xE7\xB1\xBB\xE5\x8F\x98\xE9\x87\x8F\xE3\x80\x82\xE6\x8D\xA2\xE5\x8F\xA5\xE8\xAF\x9D\xE8\xAF\xB4\xEF\xBC\x8C\xE4\xBB\x96\xE4\xBB\xAC\xE7\xBB\x8F
  31\xE5\xB8\xB8\xE4\xBC\x9A\xE6\x8A\x8Avolatile\xE7\xB1\xBB\xE5\x9E\x8B\xE7\x9C\x8B\xE6\x88\x90\xE6\x9F\x90\xE7\xA7\x8D\xE7\xAE\x80\xE6\x98\x93\xE7\x9A\x84\xE5\x8E\x9F\xE5\xAD\x90\xE5\x8F\x98\xE9\x87\x8F\xEF\xBC\x8C\xE5\xBD\x93\xE7\x84\xB6\xE5\xAE\x83\xE4\xBB\xAC\xE4\xB8\x8D\xE6\x98\xAF\xE3\x80\x82\xE5\x9C\xA8\xE5\x86\x85\xE6\xA0\xB8\xE4\xB8\xAD\xE4\xBD\xBF\xE7\x94\xA8volatile\xE5\x87\xA0
  32\xE4\xB9\x8E\xE6\x80\xBB\xE6\x98\xAF\xE9\x94\x99\xE8\xAF\xAF\xE7\x9A\x84\xEF\xBC\x9B\xE6\x9C\xAC\xE6\x96\x87\xE6\xA1\xA3\xE5\xB0\x86\xE8\xA7\xA3\xE9\x87\x8A\xE4\xB8\xBA\xE4\xBB\x80\xE4\xB9\x88\xE8\xBF\x99\xE6\xA0\xB7\xE3\x80\x82
  33
  34\xE7\x90\x86\xE8\xA7\xA3volatile\xE7\x9A\x84\xE5\x85\xB3\xE9\x94\xAE\xE6\x98\xAF\xE7\x9F\xA5\xE9\x81\x93\xE5\xAE\x83\xE7\x9A\x84\xE7\x9B\xAE\xE7\x9A\x84\xE6\x98\xAF\xE7\x94\xA8\xE6\x9D\xA5\xE6\xB6\x88\xE9\x99\xA4\xE4\xBC\x98\xE5\x8C\x96\xEF\xBC\x8C\xE5\xAE\x9E\xE9\x99\x85\xE4\xB8\x8A\xE5\xBE\x88\xE5\xB0\x91\xE6\x9C\x89\xE4\xBA\xBA\xE7\x9C\x9F\xE6\xAD\xA3\xE9\x9C\x80\xE8\xA6\x81\xE8\xBF\x99\xE6\xA0\xB7\xE7\x9A\x84\xE5\xBA\x94
  35\xE7\x94\xA8\xE3\x80\x82\xE5\x9C\xA8\xE5\x86\x85\xE6\xA0\xB8\xE4\xB8\xAD\xEF\xBC\x8C\xE7\xA8\x8B\xE5\xBA\x8F\xE5\x91\x98\xE5\xBF\x85\xE9\xA1\xBB\xE9\x98\xB2\xE6\xAD\xA2\xE6\x84\x8F\xE5\xA4\x96\xE7\x9A\x84\xE5\xB9\xB6\xE5\x8F\x91\xE8\xAE\xBF\xE9\x97\xAE\xE7\xA0\xB4\xE5\x9D\x8F\xE5\x85\xB1\xE4\xBA\xAB\xE7\x9A\x84\xE6\x95\xB0\xE6\x8D\xAE\xE7\xBB\x93\xE6\x9E\x84\xEF\xBC\x8C\xE8\xBF\x99\xE5\x85\xB6\xE5\xAE\x9E\xE6\x98\xAF\xE4\xB8\x80\xE4\xB8\xAA\xE5\xAE\x8C\xE5\x85\xA8
  36\xE4\xB8\x8D\xE5\x90\x8C\xE7\x9A\x84\xE4\xBB\xBB\xE5\x8A\xA1\xE3\x80\x82\xE7\x94\xA8\xE6\x9D\xA5\xE9\x98\xB2\xE6\xAD\xA2\xE6\x84\x8F\xE5\xA4\x96\xE5\xB9\xB6\xE5\x8F\x91\xE8\xAE\xBF\xE9\x97\xAE\xE7\x9A\x84\xE4\xBF\x9D\xE6\x8A\xA4\xE6\x8E\xAA\xE6\x96\xBD\xEF\xBC\x8C\xE5\x8F\xAF\xE4\xBB\xA5\xE6\x9B\xB4\xE5\x8A\xA0\xE9\xAB\x98\xE6\x95\x88\xE7\x9A\x84\xE9\x81\xBF\xE5\x85\x8D\xE5\xA4\xA7\xE5\xA4\x9A\xE6\x95\xB0\xE4\xBC\x98\xE5\x8C\x96\xE7\x9B\xB8\xE5\x85\xB3\xE7\x9A\x84
  37\xE9\x97\xAE\xE9\xA2\x98\xE3\x80\x82
  38
  39\xE5\x83\x8Fvolatile\xE4\xB8\x80\xE6\xA0\xB7\xEF\xBC\x8C\xE5\x86\x85\xE6\xA0\xB8\xE6\x8F\x90\xE4\xBE\x9B\xE4\xBA\x86\xE5\xBE\x88\xE5\xA4\x9A\xE5\x8E\x9F\xE8\xAF\xAD\xE6\x9D\xA5\xE4\xBF\x9D\xE8\xAF\x81\xE5\xB9\xB6\xE5\x8F\x91\xE8\xAE\xBF\xE9\x97\xAE\xE6\x97\xB6\xE7\x9A\x84\xE6\x95\xB0\xE6\x8D\xAE\xE5\xAE\x89\xE5\x85\xA8\xEF\xBC\x88\xE8\x87\xAA\xE6\x97\x8B\xE9\x94\x81, \xE4\xBA\x92\xE6\x96\xA5\xE9\x87\x8F,\xE5\x86\x85
  40\xE5\xAD\x98\xE5\xB1\x8F\xE9\x9A\x9C\xE7\xAD\x89\xE7\xAD\x89\xEF\xBC\x89\xEF\xBC\x8C\xE5\x90\x8C\xE6\xA0\xB7\xE5\x8F\xAF\xE4\xBB\xA5\xE9\x98\xB2\xE6\xAD\xA2\xE6\x84\x8F\xE5\xA4\x96\xE7\x9A\x84\xE4\xBC\x98\xE5\x8C\x96\xE3\x80\x82\xE5\xA6\x82\xE6\x9E\x9C\xE5\x8F\xAF\xE4\xBB\xA5\xE6\xAD\xA3\xE7\xA1\xAE\xE4\xBD\xBF\xE7\x94\xA8\xE8\xBF\x99\xE4\xBA\x9B\xE5\x86\x85\xE6\xA0\xB8\xE5\x8E\x9F\xE8\xAF\xAD\xEF\xBC\x8C\xE9\x82\xA3\xE4\xB9\x88\xE5\xB0\xB1\xE6\xB2\xA1\xE6\x9C\x89
  41\xE5\xBF\x85\xE8\xA6\x81\xE5\x86\x8D\xE4\xBD\xBF\xE7\x94\xA8volatile\xE3\x80\x82\xE5\xA6\x82\xE6\x9E\x9C\xE4\xBB\x8D\xE7\x84\xB6\xE5\xBF\x85\xE9\xA1\xBB\xE4\xBD\xBF\xE7\x94\xA8volatile\xEF\xBC\x8C\xE9\x82\xA3\xE4\xB9\x88\xE5\x87\xA0\xE4\xB9\x8E\xE5\x8F\xAF\xE4\xBB\xA5\xE8\x82\xAF\xE5\xAE\x9A\xE5\x9C\xA8\xE4\xBB\xA3\xE7\xA0\x81\xE7\x9A\x84\xE6\x9F\x90\xE5\xA4\x84\xE6\x9C\x89\xE4\xB8\x80
  42\xE4\xB8\xAAbug\xE3\x80\x82\xE5\x9C\xA8\xE6\xAD\xA3\xE7\xA1\xAE\xE8\xAE\xBE\xE8\xAE\xA1\xE7\x9A\x84\xE5\x86\x85\xE6\xA0\xB8\xE4\xBB\xA3\xE7\xA0\x81\xE4\xB8\xAD\xEF\xBC\x8Cvolatile\xE8\x83\xBD\xE5\xB8\xA6\xE6\x9D\xA5\xE7\x9A\x84\xE4\xBB\x85\xE4\xBB\x85\xE6\x98\xAF\xE4\xBD\xBF\xE4\xBA\x8B\xE6\x83\x85\xE5\x8F\x98\xE6\x85\xA2\xE3\x80\x82
  43
  44\xE6\x80\x9D\xE8\x80\x83\xE4\xB8\x80\xE4\xB8\x8B\xE8\xBF\x99\xE6\xAE\xB5\xE5\x85\xB8\xE5\x9E\x8B\xE7\x9A\x84\xE5\x86\x85\xE6\xA0\xB8\xE4\xBB\xA3\xE7\xA0\x81\xEF\xBC\x9A
  45
  46    spin_lock(&the_lock);
  47    do_something_on(&shared_data);
  48    do_something_else_with(&shared_data);
  49    spin_unlock(&the_lock);
  50
  51\xE5\xA6\x82\xE6\x9E\x9C\xE6\x89\x80\xE6\x9C\x89\xE7\x9A\x84\xE4\xBB\xA3\xE7\xA0\x81\xE9\x83\xBD\xE9\x81\xB5\xE5\xBE\xAA\xE5\x8A\xA0\xE9\x94\x81\xE8\xA7\x84\xE5\x88\x99\xEF\xBC\x8C\xE5\xBD\x93\xE6\x8C\x81\xE6\x9C\x89the_lock\xE7\x9A\x84\xE6\x97\xB6\xE5\x80\x99\xEF\xBC\x8C\xE4\xB8\x8D\xE5\x8F\xAF\xE8\x83\xBD\xE6\x84\x8F\xE5\xA4\x96\xE7\x9A\x84\xE6\x94\xB9\xE5\x8F\x98shared_data\xE7\x9A\x84
  52\xE5\x80\xBC\xE3\x80\x82\xE4\xBB\xBB\xE4\xBD\x95\xE5\x8F\xAF\xE8\x83\xBD\xE8\xAE\xBF\xE9\x97\xAE\xE8\xAF\xA5\xE6\x95\xB0\xE6\x8D\xAE\xE7\x9A\x84\xE5\x85\xB6\xE4\xBB\x96\xE4\xBB\xA3\xE7\xA0\x81\xE9\x83\xBD\xE4\xBC\x9A\xE5\x9C\xA8\xE8\xBF\x99\xE4\xB8\xAA\xE9\x94\x81\xE4\xB8\x8A\xE7\xAD\x89\xE5\xBE\x85\xE3\x80\x82\xE8\x87\xAA\xE6\x97\x8B\xE9\x94\x81\xE5\x8E\x9F\xE8\xAF\xAD\xE8\xB7\x9F\xE5\x86\x85\xE5\xAD\x98\xE5\xB1\x8F\xE9\x9A\x9C\xE4\xB8\x80\xE6\xA0\xB7\xE2\x80\x94\xE2\x80\x94 \xE5\xAE\x83
  53\xE4\xBB\xAC\xE6\x98\xBE\xE5\xBC\x8F\xE7\x9A\x84\xE7\x94\xA8\xE6\x9D\xA5\xE4\xB9\xA6\xE5\x86\x99\xE6\x88\x90\xE8\xBF\x99\xE6\xA0\xB7 \xE2\x80\x94\xE2\x80\x94 \xE6\x84\x8F\xE5\x91\xB3\xE7\x9D\x80\xE6\x95\xB0\xE6\x8D\xAE\xE8\xAE\xBF\xE9\x97\xAE\xE4\xB8\x8D\xE4\xBC\x9A\xE8\xB7\xA8\xE8\xB6\x8A\xE5\xAE\x83\xE4\xBB\xAC\xE8\x80\x8C\xE8\xA2\xAB\xE4\xBC\x98\xE5\x8C\x96\xE3\x80\x82\xE6\x89\x80\xE4\xBB\xA5\xE6\x9C\xAC\xE6\x9D\xA5\xE7\xBC\x96\xE8\xAF\x91\xE5\x99\xA8\xE8\xAE\xA4\xE4\xB8\xBA
  54\xE5\xAE\x83\xE7\x9F\xA5\xE9\x81\x93\xE5\x9C\xA8shared_data\xE9\x87\x8C\xE9\x9D\xA2\xE5\xB0\x86\xE6\x9C\x89\xE4\xBB\x80\xE4\xB9\x88\xEF\xBC\x8C\xE4\xBD\x86\xE6\x98\xAF\xE5\x9B\xA0\xE4\xB8\xBAspin_lock()\xE8\xB0\x83\xE7\x94\xA8\xE8\xB7\x9F\xE5\x86\x85\xE5\xAD\x98\xE5\xB1\x8F\xE9\x9A\x9C\xE4\xB8\x80\xE6\xA0\xB7\xEF\xBC\x8C\xE4\xBC\x9A\xE5\xBC\xBA\xE5\x88\xB6\xE7\xBC\x96
  55\xE8\xAF\x91\xE5\x99\xA8\xE5\xBF\x98\xE8\xAE\xB0\xE5\xAE\x83\xE6\x89\x80\xE7\x9F\xA5\xE9\x81\x93\xE7\x9A\x84\xE4\xB8\x80\xE5\x88\x87\xE3\x80\x82\xE9\x82\xA3\xE4\xB9\x88\xE5\x9C\xA8\xE8\xAE\xBF\xE9\x97\xAE\xE8\xBF\x99\xE4\xBA\x9B\xE6\x95\xB0\xE6\x8D\xAE\xE6\x97\xB6\xE4\xB8\x8D\xE4\xBC\x9A\xE6\x9C\x89\xE4\xBC\x98\xE5\x8C\x96\xE7\x9A\x84\xE9\x97\xAE\xE9\xA2\x98\xE3\x80\x82
  56
  57\xE5\xA6\x82\xE6\x9E\x9Cshared_data\xE8\xA2\xAB\xE5\xA3\xB0\xE5\x90\x8D\xE4\xB8\xBAvolatile\xEF\xBC\x8C\xE9\x94\x81\xE6\x93\x8D\xE4\xBD\x9C\xE5\xB0\x86\xE4\xBB\x8D\xE7\x84\xB6\xE6\x98\xAF\xE5\xBF\x85\xE9\xA1\xBB\xE7\x9A\x84\xE3\x80\x82\xE5\xB0\xB1\xE7\xAE\x97\xE6\x88\x91\xE4\xBB\xAC\xE7\x9F\xA5\xE9\x81\x93\xE6\xB2\xA1\xE6\x9C\x89\xE5\x85\xB6\xE4\xBB\x96\xE4\xBA\xBA\xE6\xAD\xA3\xE5\x9C\xA8
  58\xE4\xBD\xBF\xE7\x94\xA8\xE5\xAE\x83\xEF\xBC\x8C\xE7\xBC\x96\xE8\xAF\x91\xE5\x99\xA8\xE4\xB9\x9F\xE5\xB0\x86\xE8\xA2\xAB\xE9\x98\xBB\xE6\xAD\xA2\xE4\xBC\x98\xE5\x8C\x96\xE5\xAF\xB9\xE4\xB8\xB4\xE7\x95\x8C\xE5\x8C\xBA\xE5\x86\x85shared_data\xE7\x9A\x84\xE8\xAE\xBF\xE9\x97\xAE\xE3\x80\x82\xE5\x9C\xA8\xE9\x94\x81\xE6\x9C\x89\xE6\x95\x88\xE7\x9A\x84\xE5\x90\x8C\xE6\x97\xB6\xEF\xBC\x8C
  59shared_data\xE4\xB8\x8D\xE6\x98\xAFvolatile\xE7\x9A\x84\xE3\x80\x82\xE5\x9C\xA8\xE5\xA4\x84\xE7\x90\x86\xE5\x85\xB1\xE4\xBA\xAB\xE6\x95\xB0\xE6\x8D\xAE\xE7\x9A\x84\xE6\x97\xB6\xE5\x80\x99\xEF\xBC\x8C\xE9\x80\x82\xE5\xBD\x93\xE7\x9A\x84\xE9\x94\x81\xE6\x93\x8D\xE4\xBD\x9C\xE5\x8F\xAF\xE4\xBB\xA5\xE4\xB8\x8D\xE5\x86\x8D\xE9\x9C\x80\xE8\xA6\x81
  60volatile \xE2\x80\x94\xE2\x80\x94 \xE5\xB9\xB6\xE4\xB8\x94\xE6\x98\xAF\xE6\x9C\x89\xE6\xBD\x9C\xE5\x9C\xA8\xE5\x8D\xB1\xE5\xAE\xB3\xE7\x9A\x84\xE3\x80\x82
  61
  62volatile\xE7\x9A\x84\xE5\xAD\x98\xE5\x82\xA8\xE7\xB1\xBB\xE5\x9E\x8B\xE6\x9C\x80\xE5\x88\x9D\xE6\x98\xAF\xE4\xB8\xBA\xE9\x82\xA3\xE4\xBA\x9B\xE5\x86\x85\xE5\xAD\x98\xE6\x98\xA0\xE5\xB0\x84\xE7\x9A\x84I/O\xE5\xAF\x84\xE5\xAD\x98\xE5\x99\xA8\xE8\x80\x8C\xE5\xAE\x9A\xE4\xB9\x89\xE3\x80\x82\xE5\x9C\xA8\xE5\x86\x85\xE6\xA0\xB8\xE9\x87\x8C\xEF\xBC\x8C\xE5\xAF\x84\xE5\xAD\x98\xE5\x99\xA8\xE8\xAE\xBF\xE9\x97\xAE\xE4\xB9\x9F\xE5\xBA\x94
  63\xE8\xAF\xA5\xE8\xA2\xAB\xE9\x94\x81\xE4\xBF\x9D\xE6\x8A\xA4\xEF\xBC\x8C\xE4\xBD\x86\xE6\x98\xAF\xE4\xBA\xBA\xE4\xBB\xAC\xE4\xB9\x9F\xE4\xB8\x8D\xE5\xB8\x8C\xE6\x9C\x9B\xE7\xBC\x96\xE8\xAF\x91\xE5\x99\xA8\xE2\x80\x9C\xE4\xBC\x98\xE5\x8C\x96\xE2\x80\x9D\xE4\xB8\xB4\xE7\x95\x8C\xE5\x8C\xBA\xE5\x86\x85\xE7\x9A\x84\xE5\xAF\x84\xE5\xAD\x98\xE5\x99\xA8\xE8\xAE\xBF\xE9\x97\xAE\xE3\x80\x82\xE5\x86\x85\xE6\xA0\xB8\xE9\x87\x8CI/O\xE7\x9A\x84\xE5\x86\x85\xE5\xAD\x98\xE8\xAE\xBF\xE9\x97\xAE
  64\xE6\x98\xAF\xE9\x80\x9A\xE8\xBF\x87\xE8\xAE\xBF\xE9\x97\xAE\xE5\x87\xBD\xE6\x95\xB0\xE5\xAE\x8C\xE6\x88\x90\xE7\x9A\x84\xEF\xBC\x9B\xE4\xB8\x8D\xE8\xB5\x9E\xE6\x88\x90\xE9\x80\x9A\xE8\xBF\x87\xE6\x8C\x87\xE9\x92\x88\xE5\xAF\xB9I/O\xE5\x86\x85\xE5\xAD\x98\xE7\x9A\x84\xE7\x9B\xB4\xE6\x8E\xA5\xE8\xAE\xBF\xE9\x97\xAE\xEF\xBC\x8C\xE5\xB9\xB6\xE4\xB8\x94\xE4\xB8\x8D\xE6\x98\xAF\xE5\x9C\xA8\xE6\x89\x80\xE6\x9C\x89\xE4\xBD\x93\xE7\xB3\xBB\xE6\x9E\xB6\xE6\x9E\x84\xE4\xB8\x8A
  65\xE9\x83\xBD\xE8\x83\xBD\xE5\xB7\xA5\xE4\xBD\x9C\xE3\x80\x82\xE9\x82\xA3\xE4\xBA\x9B\xE8\xAE\xBF\xE9\x97\xAE\xE5\x87\xBD\xE6\x95\xB0\xE6\xAD\xA3\xE6\x98\xAF\xE4\xB8\xBA\xE4\xBA\x86\xE9\x98\xB2\xE6\xAD\xA2\xE6\x84\x8F\xE5\xA4\x96\xE4\xBC\x98\xE5\x8C\x96\xE8\x80\x8C\xE5\x86\x99\xE7\x9A\x84\xEF\xBC\x8C\xE5\x9B\xA0\xE6\xAD\xA4\xEF\xBC\x8C\xE5\x86\x8D\xE8\xAF\xB4\xE4\xB8\x80\xE6\xAC\xA1\xEF\xBC\x8Cvolatile\xE7\xB1\xBB\xE5\x9E\x8B\xE4\xB8\x8D
  66\xE6\x98\xAF\xE5\xBF\x85\xE9\x9C\x80\xE7\x9A\x84\xE3\x80\x82
  67
  68\xE5\x8F\xA6\xE4\xB8\x80\xE7\xA7\x8D\xE5\xBC\x95\xE8\xB5\xB7\xE7\x94\xA8\xE6\x88\xB7\xE5\x8F\xAF\xE8\x83\xBD\xE4\xBD\xBF\xE7\x94\xA8volatile\xE7\x9A\x84\xE6\x83\x85\xE5\x86\xB5\xE6\x98\xAF\xE5\xBD\x93\xE5\xA4\x84\xE7\x90\x86\xE5\x99\xA8\xE6\xAD\xA3\xE5\xBF\x99\xE7\x9D\x80\xE7\xAD\x89\xE5\xBE\x85\xE4\xB8\x80\xE4\xB8\xAA\xE5\x8F\x98\xE9\x87\x8F\xE7\x9A\x84\xE5\x80\xBC\xE3\x80\x82\xE6\xAD\xA3\xE7\xA1\xAE\xE6\x89\xA7\xE8\xA1\x8C\xE4\xB8\x80
  69\xE4\xB8\xAA\xE5\xBF\x99\xE7\xAD\x89\xE5\xBE\x85\xE7\x9A\x84\xE6\x96\xB9\xE6\xB3\x95\xE6\x98\xAF\xEF\xBC\x9A
  70
  71    while (my_variable != what_i_want)
  72        cpu_relax();
  73
  74cpu_relax()\xE8\xB0\x83\xE7\x94\xA8\xE4\xBC\x9A\xE9\x99\x8D\xE4\xBD\x8ECPU\xE7\x9A\x84\xE8\x83\xBD\xE9\x87\x8F\xE6\xB6\x88\xE8\x80\x97\xE6\x88\x96\xE8\x80\x85\xE8\xAE\xA9\xE4\xBD\x8D\xE4\xBA\x8E\xE8\xB6\x85\xE7\xBA\xBF\xE7\xA8\x8B\xE5\x8F\x8C\xE5\xA4\x84\xE7\x90\x86\xE5\x99\xA8\xEF\xBC\x9B\xE5\xAE\x83\xE4\xB9\x9F\xE4\xBD\x9C\xE4\xB8\xBA\xE5\x86\x85\xE5\xAD\x98\xE5\xB1\x8F\xE9\x9A\x9C\xE4\xB8\x80\xE6\xA0\xB7\xE5\x87\xBA
  75\xE7\x8E\xB0\xEF\xBC\x8C\xE6\x89\x80\xE4\xBB\xA5\xEF\xBC\x8C\xE5\x86\x8D\xE4\xB8\x80\xE6\xAC\xA1\xEF\xBC\x8Cvolatile\xE4\xB8\x8D\xE6\x98\xAF\xE5\xBF\x85\xE9\x9C\x80\xE7\x9A\x84\xE3\x80\x82\xE5\xBD\x93\xE7\x84\xB6\xEF\xBC\x8C\xE5\xBF\x99\xE7\xAD\x89\xE5\xBE\x85\xE4\xB8\x80\xE5\xBC\x80\xE5\xA7\x8B\xE5\xB0\xB1\xE6\x98\xAF\xE4\xB8\x80\xE7\xA7\x8D\xE5\x8F\x8D\xE5\xB8\xB8\xE8\xA7\x84\xE7\x9A\x84\xE5\x81\x9A\xE6\xB3\x95\xE3\x80\x82
  76
  77\xE5\x9C\xA8\xE5\x86\x85\xE6\xA0\xB8\xE4\xB8\xAD\xEF\xBC\x8C\xE4\xB8\x80\xE4\xBA\x9B\xE7\xA8\x80\xE5\xB0\x91\xE7\x9A\x84\xE6\x83\x85\xE5\x86\xB5\xE4\xB8\x8Bvolatile\xE4\xBB\x8D\xE7\x84\xB6\xE6\x98\xAF\xE6\x9C\x89\xE6\x84\x8F\xE4\xB9\x89\xE7\x9A\x84\xEF\xBC\x9A
  78
  79  - \xE5\x9C\xA8\xE4\xB8\x80\xE4\xBA\x9B\xE4\xBD\x93\xE7\xB3\xBB\xE6\x9E\xB6\xE6\x9E\x84\xE7\x9A\x84\xE7\xB3\xBB\xE7\xBB\x9F\xE4\xB8\x8A\xEF\xBC\x8C\xE5\x85\x81\xE8\xAE\xB8\xE7\x9B\xB4\xE6\x8E\xA5\xE7\x9A\x84I/0\xE5\x86\x85\xE5\xAD\x98\xE8\xAE\xBF\xE9\x97\xAE\xEF\xBC\x8C\xE9\x82\xA3\xE4\xB9\x88\xE5\x89\x8D\xE9\x9D\xA2\xE6\x8F\x90\xE5\x88\xB0\xE7\x9A\x84\xE8\xAE\xBF\xE9\x97\xAE\xE5\x87\xBD\xE6\x95\xB0\xE5\x8F\xAF\xE4\xBB\xA5\xE4\xBD\xBF\xE7\x94\xA8
  80    volatile\xE3\x80\x82\xE5\x9F\xBA\xE6\x9C\xAC\xE4\xB8\x8A\xEF\xBC\x8C\xE6\xAF\x8F\xE4\xB8\x80\xE4\xB8\xAA\xE8\xAE\xBF\xE9\x97\xAE\xE5\x87\xBD\xE6\x95\xB0\xE8\xB0\x83\xE7\x94\xA8\xE5\xAE\x83\xE8\x87\xAA\xE5\xB7\xB1\xE9\x83\xBD\xE6\x98\xAF\xE4\xB8\x80\xE4\xB8\xAA\xE5\xB0\x8F\xE7\x9A\x84\xE4\xB8\xB4\xE7\x95\x8C\xE5\x8C\xBA\xE5\x9F\x9F\xE5\xB9\xB6\xE4\xB8\x94\xE4\xBF\x9D\xE8\xAF\x81\xE4\xBA\x86\xE6\x8C\x89\xE7\x85\xA7
  81    \xE7\xA8\x8B\xE5\xBA\x8F\xE5\x91\x98\xE6\x9C\x9F\xE6\x9C\x9B\xE7\x9A\x84\xE9\x82\xA3\xE6\xA0\xB7\xE5\x8F\x91\xE7\x94\x9F\xE8\xAE\xBF\xE9\x97\xAE\xE6\x93\x8D\xE4\xBD\x9C\xE3\x80\x82
  82
  83  - \xE6\x9F\x90\xE4\xBA\x9B\xE4\xBC\x9A\xE6\x94\xB9\xE5\x8F\x98\xE5\x86\x85\xE5\xAD\x98\xE7\x9A\x84\xE5\x86\x85\xE8\x81\x94\xE6\xB1\x87\xE7\xBC\x96\xE4\xBB\xA3\xE7\xA0\x81\xE8\x99\xBD\xE7\x84\xB6\xE6\xB2\xA1\xE6\x9C\x89\xE4\xBB\x80\xE4\xB9\x88\xE5\x85\xB6\xE4\xBB\x96\xE6\x98\x8E\xE6\x98\xBE\xE7\x9A\x84\xE9\x99\x84\xE4\xBD\x9C\xE7\x94\xA8\xEF\xBC\x8C\xE4\xBD\x86\xE6\x98\xAF\xE6\x9C\x89\xE8\xA2\xABGCC\xE5\x88\xA0\xE9\x99\xA4\xE7\x9A\x84\xE5\x8F\xAF
  84    \xE8\x83\xBD\xE6\x80\xA7\xE3\x80\x82\xE5\x9C\xA8\xE6\xB1\x87\xE7\xBC\x96\xE5\xA3\xB0\xE6\x98\x8E\xE4\xB8\xAD\xE5\x8A\xA0\xE4\xB8\x8Avolatile\xE5\x85\xB3\xE9\x94\xAE\xE5\xAD\x97\xE5\x8F\xAF\xE4\xBB\xA5\xE9\x98\xB2\xE6\xAD\xA2\xE8\xBF\x99\xE7\xA7\x8D\xE5\x88\xA0\xE9\x99\xA4\xE6\x93\x8D\xE4\xBD\x9C\xE3\x80\x82
  85
  86  - Jiffies\xE5\x8F\x98\xE9\x87\x8F\xE6\x98\xAF\xE4\xB8\x80\xE7\xA7\x8D\xE7\x89\xB9\xE6\xAE\x8A\xE6\x83\x85\xE5\x86\xB5\xEF\xBC\x8C\xE8\x99\xBD\xE7\x84\xB6\xE6\xAF\x8F\xE6\xAC\xA1\xE5\xBC\x95\xE7\x94\xA8\xE5\xAE\x83\xE7\x9A\x84\xE6\x97\xB6\xE5\x80\x99\xE9\x83\xBD\xE5\x8F\xAF\xE4\xBB\xA5\xE6\x9C\x89\xE4\xB8\x8D\xE5\x90\x8C\xE7\x9A\x84\xE5\x80\xBC\xEF\xBC\x8C\xE4\xBD\x86\xE8\xAF\xBBjiffies
  87    \xE5\x8F\x98\xE9\x87\x8F\xE6\x97\xB6\xE4\xB8\x8D\xE9\x9C\x80\xE8\xA6\x81\xE4\xBB\xBB\xE4\xBD\x95\xE7\x89\xB9\xE6\xAE\x8A\xE7\x9A\x84\xE5\x8A\xA0\xE9\x94\x81\xE4\xBF\x9D\xE6\x8A\xA4\xE3\x80\x82\xE6\x89\x80\xE4\xBB\xA5jiffies\xE5\x8F\x98\xE9\x87\x8F\xE5\x8F\xAF\xE4\xBB\xA5\xE4\xBD\xBF\xE7\x94\xA8volatile\xEF\xBC\x8C\xE4\xBD\x86\xE6\x98\xAF\xE4\xB8\x8D\xE8\xB5\x9E\xE6\x88\x90
  88    \xE5\x85\xB6\xE4\xBB\x96\xE8\xB7\x9Fjiffies\xE7\x9B\xB8\xE5\x90\x8C\xE7\xB1\xBB\xE5\x9E\x8B\xE5\x8F\x98\xE9\x87\x8F\xE4\xBD\xBF\xE7\x94\xA8volatile\xE3\x80\x82Jiffies\xE8\xA2\xAB\xE8\xAE\xA4\xE4\xB8\xBA\xE6\x98\xAF\xE4\xB8\x80\xE7\xA7\x8D\xE2\x80\x9C\xE6\x84\x9A\xE8\xA0\xA2\xE7\x9A\x84\xE9\x81\x97\xE7\x95\x99\xE7\x89\xA9"
  89    \xEF\xBC\x88Linus\xE7\x9A\x84\xE8\xAF\x9D\xEF\xBC\x89\xE5\x9B\xA0\xE4\xB8\xBA\xE8\xA7\xA3\xE5\x86\xB3\xE8\xBF\x99\xE4\xB8\xAA\xE9\x97\xAE\xE9\xA2\x98\xE6\xAF\x94\xE4\xBF\x9D\xE6\x8C\x81\xE7\x8E\xB0\xE7\x8A\xB6\xE8\xA6\x81\xE9\xBA\xBB\xE7\x83\xA6\xE7\x9A\x84\xE5\xA4\x9A\xE3\x80\x82
  90
  91  - \xE7\x94\xB1\xE4\xBA\x8E\xE6\x9F\x90\xE4\xBA\x9BI/0\xE8\xAE\xBE\xE5\xA4\x87\xE5\x8F\xAF\xE8\x83\xBD\xE4\xBC\x9A\xE4\xBF\xAE\xE6\x94\xB9\xE8\xBF\x9E\xE7\xBB\xAD\xE4\xB8\x80\xE8\x87\xB4\xE7\x9A\x84\xE5\x86\x85\xE5\xAD\x98,\xE6\x89\x80\xE4\xBB\xA5\xE6\x9C\x89\xE6\x97\xB6,\xE6\x8C\x87\xE5\x90\x91\xE8\xBF\x9E\xE7\xBB\xAD\xE4\xB8\x80\xE8\x87\xB4\xE5\x86\x85\xE5\xAD\x98\xE7\x9A\x84\xE6\x95\xB0\xE6\x8D\xAE\xE7\xBB\x93\xE6\x9E\x84
  92    \xE7\x9A\x84\xE6\x8C\x87\xE9\x92\x88\xE9\x9C\x80\xE8\xA6\x81\xE6\xAD\xA3\xE7\xA1\xAE\xE7\x9A\x84\xE4\xBD\xBF\xE7\x94\xA8volatile\xE3\x80\x82\xE7\xBD\x91\xE7\xBB\x9C\xE9\x80\x82\xE9\x85\x8D\xE5\x99\xA8\xE4\xBD\xBF\xE7\x94\xA8\xE7\x9A\x84\xE7\x8E\xAF\xE7\x8A\xB6\xE7\xBC\x93\xE5\xAD\x98\xE5\x8C\xBA\xE6\xAD\xA3\xE6\x98\xAF\xE8\xBF\x99\xE7\xB1\xBB\xE6\x83\x85\xE5\xBD\xA2\xE7\x9A\x84\xE4\xB8\x80\xE4\xB8\xAA\xE4\xBE\x8B
  93    \xE5\xAD\x90\xEF\xBC\x8C\xE5\x85\xB6\xE4\xB8\xAD\xE9\x80\x82\xE9\x85\x8D\xE5\x99\xA8\xE7\x94\xA8\xE6\x94\xB9\xE5\x8F\x98\xE6\x8C\x87\xE9\x92\x88\xE6\x9D\xA5\xE8\xA1\xA8\xE7\xA4\xBA\xE5\x93\xAA\xE4\xBA\x9B\xE6\x8F\x8F\xE8\xBF\xB0\xE7\xAC\xA6\xE5\xB7\xB2\xE7\xBB\x8F\xE5\xA4\x84\xE7\x90\x86\xE8\xBF\x87\xE4\xBA\x86\xE3\x80\x82
  94
  95\xE5\xAF\xB9\xE4\xBA\x8E\xE5\xA4\xA7\xE5\xA4\x9A\xE4\xBB\xA3\xE7\xA0\x81\xEF\xBC\x8C\xE4\xB8\x8A\xE8\xBF\xB0\xE5\x87\xA0\xE7\xA7\x8D\xE5\x8F\xAF\xE4\xBB\xA5\xE4\xBD\xBF\xE7\x94\xA8volatile\xE7\x9A\x84\xE6\x83\x85\xE5\x86\xB5\xE9\x83\xBD\xE4\xB8\x8D\xE9\x80\x82\xE7\x94\xA8\xE3\x80\x82\xE6\x89\x80\xE4\xBB\xA5\xEF\xBC\x8C\xE4\xBD\xBF\xE7\x94\xA8volatile\xE6\x98\xAF\xE4\xB8\x80\xE7\xA7\x8D
  96bug\xE5\xB9\xB6\xE4\xB8\x94\xE9\x9C\x80\xE8\xA6\x81\xE5\xAF\xB9\xE8\xBF\x99\xE6\xA0\xB7\xE7\x9A\x84\xE4\xBB\xA3\xE7\xA0\x81\xE9\xA2\x9D\xE5\xA4\x96\xE4\xBB\x94\xE7\xBB\x86\xE6\xA3\x80\xE6\x9F\xA5\xE3\x80\x82\xE9\x82\xA3\xE4\xBA\x9B\xE8\xAF\x95\xE5\x9B\xBE\xE4\xBD\xBF\xE7\x94\xA8volatile\xE7\x9A\x84\xE5\xBC\x80\xE5\x8F\x91\xE4\xBA\xBA\xE5\x91\x98\xE9\x9C\x80\xE8\xA6\x81\xE9\x80\x80\xE4\xB8\x80\xE6\xAD\xA5\xE6\x83\xB3\xE6\x83\xB3
  97\xE4\xBB\x96\xE4\xBB\xAC\xE7\x9C\x9F\xE6\xAD\xA3\xE6\x83\xB3\xE5\xAE\x9E\xE7\x8E\xB0\xE7\x9A\x84\xE6\x98\xAF\xE4\xBB\x80\xE4\xB9\x88\xE3\x80\x82
  98
  99\xE9\x9D\x9E\xE5\xB8\xB8\xE6\xAC\xA2\xE8\xBF\x8E\xE5\x88\xA0\xE9\x99\xA4volatile\xE5\x8F\x98\xE9\x87\x8F\xE7\x9A\x84\xE8\xA1\xA5\xE4\xB8\x81 \xEF\xBC\x8D \xE5\x8F\xAA\xE8\xA6\x81\xE8\xAF\x81\xE6\x98\x8E\xE8\xBF\x99\xE4\xBA\x9B\xE8\xA1\xA5\xE4\xB8\x81\xE5\xAE\x8C\xE6\x95\xB4\xE7\x9A\x84\xE8\x80\x83\xE8\x99\x91\xE4\xBA\x86\xE5\xB9\xB6\xE5\x8F\x91\xE9\x97\xAE\xE9\xA2\x98\xE3\x80\x82
 100
 101\xE6\xB3\xA8\xE9\x87\x8A
 102----
 103
 104[1] http://lwn.net/Articles/233481/
 105[2] http://lwn.net/Articles/233482/
 106
 107\xE8\x87\xB4\xE8\xB0\xA2
 108----
 109
 110\xE6\x9C\x80\xE5\x88\x9D\xE7\x94\xB1Randy Dunlap\xE6\x8E\xA8\xE5\x8A\xA8\xE5\xB9\xB6\xE4\xBD\x9C\xE5\x88\x9D\xE6\xAD\xA5\xE7\xA0\x94\xE7\xA9\xB6
 111\xE7\x94\xB1Jonathan Corbet\xE6\x92\xB0\xE5\x86\x99
 112\xE5\x8F\x82\xE8\x80\x83Satyam Sharma\xEF\xBC\x8CJohannes Stezenbach\xEF\xBC\x8CJesper Juhl\xEF\xBC\x8CHeikki Orsila\xEF\xBC\x8C
 113H. Peter Anvin\xEF\xBC\x8CPhilipp Hahn\xE5\x92\x8CStefan Richter\xE7\x9A\x84\xE6\x84\x8F\xE8\xA7\x81\xE6\x94\xB9\xE5\x96\x84\xE4\xBA\x86\xE6\x9C\xAC\xE6\xA1\xA3\xE3\x80\x82
 114
lxr.linux.no kindly hosted by Redpill Linpro AS, provider of Linux consulting and operations services since 1995.