linux - 为什么 inode 有两个不同的字段用于大小和 block 计数?

标签 linux operating-system filesystems inode

在 Linux 的 inode 中有两个独立的字段,即大小和 block 。为什么我们必须有两个字段。如果我们只有 block 数,这还不够吗?

我尝试创建一个文本文件,并向其中添加字符。大小在变化,但 block 数几乎保持不变。 (使用“统计文件名”命令)

因此,我可以假设“大小”字段用于确保操作系统不会读取存储在不属于该文件的 block 中的不相关数据吗?

最佳答案

是的,size 字段用于只读取属于文件的字节。

实际上,一个文件在磁盘上占用的 block 可能多于 size/block_size + 1

关于linux - 为什么 inode 有两个不同的字段用于大小和 block 计数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17136557/

相关文章:

构建过程后尝试在 Jenkins 中运行可执行 jar 时出现 Java Headless 异常

linux - 如何使用 X 窗口为 Linux 操作系统界面创建 GUI?

c++ - 如何使用实验性 C++ 2017 库将文件名扩展存储到 map 中

linux - Linux 中是否可以禁用特定文件的文件系统缓存?

C: _access_s() 找不到文件夹

python - 如何阻止URL被注释掉(C)

php - 如何在AWS上将PHP脚本作为后台服务运行?

c++ - 如何用代字号替换主目录? Linux

linux - [Golang][Linux] - 如何获取当前用户打开的所有文件

c - 当线程 fork 时会发生什么?