コンテンツにスキップ

線形化可能性

出典: フリー百科事典『ウィキペディア(Wikipedia)』



(一)

(二)

[1]

1

[2]

[]


1987Maurice Peter HerlihyWing


[]




history2AB
Aがロックを呼び出す Bがロックを呼び出す Aが失敗の応答を受け取る Bが成功の応答を受け取る





(一)1

(二)op2op1op1op2[1]









(2HerlihyWing[1]

2
Aがロックを呼び出す Aが失敗の応答を受け取る Bがロックを呼び出す Bが成功の応答を受け取る

ABAB
Bがロックを呼び出す Bが成功の応答を受け取る Aがロックを呼び出す Aが失敗の応答を受け取る



使

[]


2使
Aがロックを呼び出す Aが成功の応答を受け取る Bがロック解除を呼び出す Bがロック解除に成功する Aがロック解除を呼び出す Aがロック解除に成功する

ABBA
Bがロック解除を呼び出す Bがロック解除に成功する Aがロックを呼び出す Aがロックに成功する Aがロック解除を呼び出す Aがロック解除に成功する

AB

[]








使[1]

compare-and-swapcompare-and-swap使

[]

[]




使

2

1



使

1使

[]






(一)R

(二)1

(三)R



R



012

(一)0

(二)112

(三)20

(四)21

(五)21

21

(一)111

22011


[]


PiRi使





(一)Ri

(二)1

(三)Ri



(一) R1,R2...Rn 

(二)

RiRi

64232232232


[]




(一)

(二)1

(三)使

(四)


関連項目[編集]

脚注[編集]

  1. ^ a b c d Herlihy, Maurice P.; Wing, Jeannette M. (1990). “Linearizability: A Correctness Condition for Concurrent Objects”. ACM Transactions on Programming Languages and Systems 12 (3): 463–492. doi:10.1145/78969.78972. 
  2. ^ Shavit, Nir and Taubenfel,Gadi (2016). “The Computability of Relaxed Data Structures: Queues and Stacks as Examples”. Distributed Computing 29 (5): 396–407. doi:10.1007/s00446-016-0272-0. http://www.faculty.idc.ac.il/gadi/MyPapers/2015ST-RelaxedDataStructures.pdf. 

参考文献[編集]

  • Herlihy, Maurice P.; Wing, Jeannette M. (1987). Axioms for Concurrent Objects. 13. doi:10.1145/41625.41627. ISBN 978-0-89791-215-0. http://repository.cmu.edu/cgi/viewcontent.cgi?article=2597&context=compsci 
  • Herlihy, Maurice P. (1990). A Methodology for Implementing Highly Concurrent Data Structures. 25. 197–206. doi:10.1145/99164.99185. ISBN 978-0-89791-350-8 
  • Herlihy, Maurice P.; Wing, Jeannette M. (1990). “Linearizability: A Correctness Condition for Concurrent Objects”. ACM Transactions on Programming Languages and Systems 12 (3): 463–492. doi:10.1145/78969.78972. 
  • Aphyr. “Strong Consistency Models”. aphyr.com. Aphyr. 2018年4月13日閲覧。