文件分配

问题描述 投票:0回答:1

考虑2个文件系统A和B,分别使用传染分配和链接分配。 100 个块的文件大小已存储在 A 中,也存储在 B 中。考虑插入新的 文件中间的块,第 50 到 51 块之间,其数据已经可用 记忆中。假设文件末尾有足够的空闲块并且 文件控制块已经在内存中。设插入一个数据所需的磁盘访问次数为 A 和 B 中文件中间的块分别为 nA 和 nB,其值是多少 nA + nB?

operating-system filesystems
1个回答
0
投票

在连续分配的情况下,我们可以直接遍历到 $50^{th}$ 元素,因为它已经给出了文件控制块(索引分配情况下的索引)已经存在。 现在,我们需要 $50$ 操作来读取其余的 $50 个元素$,还需要 $50$ 操作来写入这些 $50$ 块,并且需要 $1$ 操作来写入新块。 因此,本例中的总操作费用为 $50 + 50 + 1$

在链接分配的情况下。 我们需要遍历到第$50^{th}个元素$。现在,我们只需像链表一样更改指针(在链表中间添加元素) 因此,这里需要 $50$ 操作来读取前 $50$ 元素,并需要 $2$ 操作来更改 $50^{th}$ 块和新块的指针。 因此,本例中执行了 52 次操作。

因此,$n_a = 101$,$n_b = 52$。

例如{对齐} $$n_a+n_b = 101+52 = 153$$ nd{对齐}

© www.soinside.com 2019 - 2024. All rights reserved.