fbpx
维基百科

Read-modify-write

读-修改-写(read-modify-write)是计算机科学中的一个原子操作(atomic operation,类似的还有test-and-set, fetch-and-add, compare-and-swap等),操作过程是读一个内存位置(或IO端口),修改其值,再写回原位置。[1][2]

必须要先读操作的一个原因是,系统架构往往只允许字(word)级的读写,必须先读出那些不做修改的位元,保持不变再写回。写成C语言语句类似于:

*pRegister |= SOME_BIT; 

Read-modify-write指令用于IO端口时,可能会产生出乎意料的结果,如无法给一个比特置位。这往往是因为写操作并不影响到读操作的源寄存器。[3]

RAID也使用这一术语描述原子操作的read-modify-write序列。[4] Such RAID levels include RAID 4, RAID 5 and RAID 6.

参见 编辑

  • 可线性化英语Linearizability
  • Read-erase-modify-write英语Read-erase-modify-write

参考文献 编辑

  1. ^ "Writing Lock-Free Code: A Corrected Queue". Dr. Dobb's Journal. (页面存档备份,存于互联网档案馆) by Herb Sutter: "Compare-and-swap (CAS) is ... widely available ... However, some systems instead provide the equivalently powerful load-linked/store-conditional (LL/SC) instead."
  2. ^ Herlihy, Maurice. Wait-free synchronization (PDF). ACM Transactions on Programming Languages and Systems. January 1991, 13 (1): 124–149 [2007-05-20]. doi:10.1145/114005.102808. (原始内容 (PDF)于2011-06-05). 
  3. ^ Massmind: "The read–modify–write problem". techref.massmind.org. [2017-11-22]. (原始内容于2017-12-01). 
  4. ^ Basic RAID Organizations. umass.edu. [2013-10-04]. (原始内容于2013-10-24). 

read, modify, write, 修改, read, modify, write, 是计算机科学中的一个原子操作, atomic, operation, 类似的还有test, fetch, compare, swap等, 操作过程是读一个内存位置, 或io端口, 修改其值, 再写回原位置, 必须要先读操作的一个原因是, 系统架构往往只允许字, word, 级的读写, 必须先读出那些不做修改的位元, 保持不变再写回, 写成c语言语句类似于, pregister, some, 指令用于io端口时, 可能会产生出. 读 修改 写 read modify write 是计算机科学中的一个原子操作 atomic operation 类似的还有test and set fetch and add compare and swap等 操作过程是读一个内存位置 或IO端口 修改其值 再写回原位置 1 2 必须要先读操作的一个原因是 系统架构往往只允许字 word 级的读写 必须先读出那些不做修改的位元 保持不变再写回 写成C语言语句类似于 pRegister SOME BIT Read modify write指令用于IO端口时 可能会产生出乎意料的结果 如无法给一个比特置位 这往往是因为写操作并不影响到读操作的源寄存器 3 RAID也使用这一术语描述原子操作的read modify write序列 4 Such RAID levels include RAID 4 RAID 5 and RAID 6 参见 编辑可线性化 英语 Linearizability Read erase modify write 英语 Read erase modify write 参考文献 编辑 Writing Lock Free Code A Corrected Queue Dr Dobb s Journal 页面存档备份 存于互联网档案馆 by Herb Sutter Compare and swap CAS is widely available However some systems instead provide the equivalently powerful load linked store conditional LL SC instead Herlihy Maurice Wait free synchronization PDF ACM Transactions on Programming Languages and Systems January 1991 13 1 124 149 2007 05 20 doi 10 1145 114005 102808 原始内容存档 PDF 于2011 06 05 Massmind The read modify write problem techref massmind org 2017 11 22 原始内容存档于2017 12 01 Basic RAID Organizations umass edu 2013 10 04 原始内容存档于2013 10 24 取自 https zh wikipedia org w index php title Read modify write amp oldid 79168011, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。