提问人:mSatyam 提问时间:11/11/2023 最后编辑:mSatyam 更新时间:11/16/2023 访问量:26
将 1 个块写入文件系统相当于磁盘上的 IO 操作数
Writing 1 block to File System equates to how many IO operations on the disk
问:
关于文件系统块大小和磁盘块大小以及文件系统上的读/写操作如何转换为磁盘上的读/写操作,出现了一些疑问。
假设我有一个块大小为 512 字节的磁盘。在磁盘之上,我创建了一个块大小为 4096 字节的文件系统。
Q1:现在,如果我将 1 个文件系统块写入 4096 字节的文件系统,那么文件系统是否会在磁盘上写入 8 乘以 512 字节,因为磁盘块大小为 512 字节,即在这种情况下,1 个块写入文件系统转换为 8 个磁盘 IO 操作?
Q2:如果我们在磁盘上有 4096 字节的连续可用空间,那么它可能是磁盘上的单个 IO 操作,或者 IO 操作将始终等于我们最终想要写入的磁盘块数量,即无论我们在磁盘上是否有连续的块可用,如果我们想在 512 块大小上写入 4096 字节,我们将执行 8 个 IO 操作磁盘?
问题 3:如果问题 Q1 的答案是肯定的,那么这是否意味着增加文件系统块大小本身不会减少磁盘上的 I/O 操作数量。
问题 4:当文件系统块大小更大时,读/写性能如何提高?或者更大的文件系统块大小只会在某种程度上帮助文件系统,因为它必须为文件维护更少的地址,因为如果我们在文件系统中使用较大的块大小,文件将适合较小的块,使用更大的文件系统块还有什么好处。显然,如果问题 1 的答案是否定的,那么它肯定会提高性能。
尽量说得更具体一点,如果文件系统块大小为 4096 字节,磁盘扇区大小为 512 字节,那么使用直接内存访问和 SATA 接口一次可以写入磁盘多少字节。
答: 暂无答案
评论