根据webopedia,当处理器读取和写入总线时......不包括其他处理器访问它。
在数据库中,根据wikipedia
,这意味着一组操作全部发生或者没有发生。在并发编程中,这意味着系统wikipedia
看到一组操作即时发生但是,我需要知道文件系统环境中的原子性,特别是Google文件系统。
似乎是人们使用b.c的一个过度使用的词。这听起来很酷..但是在文件系统方面有更多的学术定义吗?
在一般情况下,似乎原子是指不破坏某些东西,即原子......我一直听到用于Google文件系统的原子读取和原子写入一词。
我的猜测意味着它完全发生或根本不发生在一个“步骤”中。参考时间的统一(即时出现)和构图(所有部分都已完成)。
这听起来不错吗?
答案 0 :(得分:2)
没错。这是基本属性,即使某些操作可能包含较少的一组步骤,但您仍然无法在某些但不是所有步骤都发生的状态下观察它。
答案 1 :(得分:1)
你的定义似乎很合理。关于计算机软件和硬件的原子性,麻省理工学院有一个很好的谈话here。我对你的定义抱有一个小抱怨,就是你看起来好像某个步骤中出现了“原子”。这是对与错。
正如您在演讲中所看到的,原子性由以下定义:
Recoverable + Isolated = Atomic
A sequence of composite steps but whose invoker cannot discover is composite.
这里的主要思想是“原子”可以在不连续的步骤中分离(在实现中),但是调用者永远不会知道这一点。例如,即使是原子写也有多个步骤。
答案 2 :(得分:0)
来自 Brewer的猜想以及Seth Gilbert和Nancy Lynch撰写的一致,可用,分区容忍Web服务的可行性 :
原子或线性化的一致性是大多数人所期望的条件 今天的网络服务.3在这种一致性保证下,必须有 存在所有操作的总订单,使每个操作看起来 仿佛它是在一瞬间完成的。这相当于o 要求分布式共享内存的请求就像它们一样 正在一个节点上执行,响应a处的操作 时间。原子读/写共享内存的一个重要特性是 在写操作完成后开始的任何读操作 必须返回该值,或后续写操作的结果。