磁盘块是什么?它的大小?

来源:互联网 发布:php扩展开发教程 语法 编辑:程序博客网 时间:2024/04/30 14:33

    最近在用tcp/ip协议传输文件的时候,发现大多把文件分成4096大小的包或者是它的整数倍,也就是设置buffsize为4096,作用是可以减少System CPU time。这里进行一下解释。

    首先解释一下什么是“磁盘块”。要明确以下:

    1、我们知道操作系统与磁盘之间交流的最小单位就是磁盘块,它是一个虚拟的概念。是对于操作系统(软件)来说有意义的概念。

    2、磁盘进行读写的最小单位是扇区,而扇区是真实存在的。是硬件部分,是一块真实存在的物理区域。

    由于我们经常接触的是软件部分,而不是硬件部分,所以提的多的是磁盘块。而不是扇区。

   3、磁盘块的大小:块=扇区×2^n。因为磁盘进行读写的基本单位是扇区,而操作系统与磁盘之间是块,所以系统想进行读写,最节省的方式就是扇区的整数倍。

    如何查看自己电脑的磁盘块大小呢?一般都为4096

    我们可以通过tune2fs命令进行查看。tune2fs调整和查看ext2/ext3文件系统的文件系统参数。具体命令可以运行:

tune2fs help查询。具体步骤如下:

    1、终端内输入df查看档案系统最大空间和使用情况

   

    2、tune2fs -l /dev/sda2|grep Block

   

可以看到磁盘块大小为4096

原创粉丝点击