关于Reiser4文件系统使用的跳舞树数据结构的问题

关于Reiser4文件系统使用的跳舞树数据结构的问题

我在CS堆栈交换上问过这个问题。不过我也想在这里问一下,也许有Linux高手可以帮帮我!

如果有人能澄清一下 Reiser4 文件系统使用的跳舞树数据结构,我将非常感激。这是我选择的一个演示主题,但是,关于它的资源似乎很少。我唯一能找到的是:

我已经理解了跳舞树的基本思想。据我所知,它很像B+树。不过我只能猜测插入和删除操作是如何进行的,如下:

  • 插入的行为类似于 B+ 树上的插入(插入并可能拆分)

  • 删除操作会删除条目,但如果下溢(?)则不会合并,因为我们不想每次修改树时都执行优化。

我的第三个问题是:跳舞树在写入磁盘之前实际上如何执行“挤压”操作? (如Reiser4的描述中所述)

如果有人能阐明这一点,我将非常感激!我只是希望得到一些澄清,因为现在这对我来说非常困惑。

相关内容