先附上蜗蜗科技前辈对于这俩名词的理解:http://www.wowotech.net/armv8a_arch/atomicity.html
我把这个博客看完了,armv8手册上也有相关解释,我不想看,可读性太差。
这里说一下个人理解:
1、single copy的意思是core连续多次对同一地址发起load或者store操作,原子性保证的单位是byte,那么就是说这个byte的数据要么是load的整个老数据,要么会被全部写成新的数据,不可能是byte内老数据和新数据混合,但是作者没有阐述清楚,对于word?仅仅只是byte上保持这个atomic,那么还有可能load和store对一个word,数据是不是会成为混合的呢?这个还等待我去探索
2、multi-copy说的是多个core对同一个byte进行操作,无论load或者store,每一次运行的结果可能都不同,但是对所有的core看到的顺序都是一样的。当然了,不管是哪个core发出的load或者store在执行的时候,又是single-copy的。