以下是我stat在 Linux 中对文件发出命令时得到的结果:
yasar@yasar-laptop ~/myscripts/sysprog $ LC_ALL=C stat error.c
File: 'error.c'
Size: 184 Blocks: 8 IO Block: 4096 regular file
Device: 804h/2052d Inode: 103650221 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 1000/ yasar) Gid: ( 100/ users)
Access: 2012-04-23 17:10:28.117455882 +0300
Modify: 2012-04-21 22:18:59.967686183 +0300
Change: 2012-04-21 22:19:00.001019336 +0300
Birth: -
Run Code Online (Sandbox Code Playgroud)
正如你所看到的,文件系统的块大小是 4kb,文件分配了 8 个块,但它的大小只有 184 字节。为什么一个文件需要 8 个块,而只有 1 个块就足够了?
如您所见,IO 块又名文件系统块是 4kB
这意味着文件分配八个 512 字节块
(让我想知道如果我们拥有物理块大小为 4kB 的现代磁盘会发生什么)
你会看到 fdisk 和 Windows 分区工具最近从磁盘开头偏移分区兆字节的原因......以防万一它错误检测介质块大小(NAND 写入大小等),它至少在某种程度上是最佳的,即不写入 4kB块跨越 2x 128kB NAND 芯片左右。
| 归档时间: |
|
| 查看次数: |
2659 次 |
| 最近记录: |