Filesystems 文件系统上下文中的原子性是什么?

Filesystems 文件系统上下文中的原子性是什么?,filesystems,terminology,atomicity,gfs,Filesystems,Terminology,Atomicity,Gfs,根据它,当一个处理器同时读写总线时…排除其他处理器访问它 在数据库中,这意味着一组操作要么全部发生,要么不发生,根据 在并发编程中,这意味着一组操作会在系统看到的瞬间发生 然而,我需要知道在文件系统的上下文中原子性指的是什么,特别是Google文件系统 似乎是一个被过度使用的词,人们使用的是不列颠哥伦比亚省。听起来很酷。但是关于文件系统有没有更学术的定义呢 原子似乎是指不分解某物,即原子……在一般情况下。我一直听到谷歌文件系统使用原子读和原子写这两个术语 我的猜测意味着它完全发生或根本不发生,并

根据它,当一个处理器同时读写总线时…排除其他处理器访问它

在数据库中,这意味着一组操作要么全部发生,要么不发生,根据

在并发编程中,这意味着一组操作会在系统看到的瞬间发生

然而,我需要知道在文件系统的上下文中原子性指的是什么,特别是Google文件系统

似乎是一个被过度使用的词,人们使用的是不列颠哥伦比亚省。听起来很酷。但是关于文件系统有没有更学术的定义呢

原子似乎是指不分解某物,即原子……在一般情况下。我一直听到谷歌文件系统使用原子读和原子写这两个术语

我的猜测意味着它完全发生或根本不发生,并且是一步一步地发生的。指时间(瞬间出现)和组成(所有部分都完成)的统一


这听起来正确吗?

没错。这是一个基本属性,即使某些操作可能由一组较小的步骤组成,但在某些步骤(但不是全部步骤)已经发生的状态下,您永远无法观察到它。

来自Brewer猜想和一致、可用、,分区容忍Web服务由Seth Gilbert和Nancy Lynch编写:

原子一致性或线性一致性是大多数人所期望的条件 3在这种一致性保证下,必须 存在所有操作的总顺序,以便每个操作看起来 好像它是在一瞬间完成的。这相当于o 要求分布式共享内存的请求就像它们 在单个节点上执行,一次一个地响应操作 时间原子读/写共享内存的一个重要特性是 写入操作完成后开始的任何读取操作 必须返回该值,或稍后写入操作的结果


你的定义似乎很合理。麻省理工学院有一篇关于计算机软件和硬件的原子性的演讲。我对你的定义有一个小小的不满,那就是你让它看起来好像某个“原子”在一个步骤中发生了。这是对的,也是错的

正如您将在演讲中看到的,原子性的定义如下:

Recoverable + Isolated = Atomic
A sequence of composite steps but whose invoker cannot discover is composite.
这里的主要思想是,某些“原子”可以在离散的步骤中分离(在实现中),但调用方永远不会知道这一点。例如,即使原子写入也有多个步骤。

有关原子性的一般信息,请参阅