为什么Unix块的大小随着更大的内存大小而增加?

我正在分析具有的二进制数据

  • 当事件数量增加时,增加Unix块大小(一个来自stat > Blocks),如下图所示
  • 但事件之间的字节距离保持不变
  • 我注意到文件其他字段的一些变化,这可能解释了Unix块大小的增加
  • 在这里输入图像描述

    unix块大小是一种动态衡量。 我感兴趣的是为什么在某些系统中增加更大的内存单元。 我有一个想法,它应该是不变的。 我使用不同的环境来提供stat输出:

  • Debian Linux 8.1的默认stat
  • OSX 10.8.5与Xcode 6及其默认stat
  • Greybeard的评论可能会回答块的行为:

    stat(1)命令曾经是stat(2)系统调用的瘦CLI,用于传输文件inode的相关部分。 很早的时候,stat(2)返回的C结构体的st_blksize成员的含义已更改为用于高效文件系统I / O的“首选”块大小,这对于具有混合块大小或非块定向的文件系统分配。

    如何分别测量(1)和(2)的情况下的块大小?

    为什么Unix块的大小会随着更大的内存大小而增加?


    “统计块”不是块大小。 它是文件所包含的块的数量。 很显然,块的数量与大小成正比。 块的大小对于大多数文件系统(如果不是全部的话)是恒定的。

    链接地址: http://www.djcxy.com/p/28391.html

    上一篇: Why does Unix block size increase with bigger memory size?

    下一篇: ghc armv7 binary + cabal? illegal instruction