zoukankan      html  css  js  c++  java
  • Linux 磁盘“Block Size”研究 枯木

    原文地址:http://blogold.chinaunix.net/u1/33824/showart_408296.html

    自从开始Linux 软件平台开发,经常遇到“Block Size”。但经常发现此block size非彼block size。意义不一样,大小值也不一样。Open Source的东东有时候也挺烦的。下面是自己的总结。通常Linux的“block size”指的是1024 bytesLinux1024-byte blocks 作为buffer cache的基本单位。但linux的文件系统的block确不一样。例如ext3系统,block size4096。使用tune2fs可以查看带文件系统的磁盘分区的相关信息,包括block size

    例如:

    tune2fs -l /dev/hda1 |grep "Block size"

    Block size:               4096

    另一个工具dumpe2fs也可以。

     

    其实本来这几个概念不是很难,主要是NND他们的名字都一样,都叫“Block Size”。

    1.     硬件上的 block size, 应该是"sector size"linux的扇区大小是512byte

    2.       有文件系统的分区的block size, "block size",大小不一,可以用工具查看

    3.       没有文件系统的分区的block size,也叫“block size”,大小指的是1024 byte

    4.       Kernel buffer cache block size, 就是"block size",大部分PC1024

    5.       磁盘分区的"cylinder size",用fdisk 可以查看。

     

    我们来看看fdisk显示的不同的信息,理解一下这几个概念:

     

    Disk /dev/hda: 250.0 GB, 250059350016 bytes

    255 heads, 63 sectors/track, 30401 cylinders

    Units = cylinders of 16065 * 512 = 8225280 bytes

     

       Device Boot    Start       End    Blocks   Id  System

    /dev/hda1   *         1      1305  10482381   83  Linux

    /dev/hda2          1306      1566   2096482+  82  Linux swap

    /dev/hda3          1567     30401 231617137+  83  Linux

     

    8225280就是cylinder size。一共有30401cylinderStartEnd分别标记的是各个分区的起始cylinder 4列显示的就是以1024为单位的block(这一列最容易把人搞晕)。为什么“2096482+”有个“+”号呢?因为啊,总size1024除不尽,是个约数,表示2096482强!哈哈。搞笑吧,只有opensource的人想得出来这么表示。

    自从开始Linux 软件平台开发,经常遇到“Block Size”。但经常发现此block size非彼block size。意义不一样,大小值也不一样。Open Source的东东有时候也挺烦的。下面是自己的总结。

    通常Linux的“block size”指的是1024 bytesLinux1024-byte blocks 作为buffer cache的基本单位。但linux的文件系统的block确不一样。例如ext3系统,block size4096。使用tune2fs可以查看带文件系统的磁盘分区的相关信息,包括block size

    例如:

    tune2fs -l /dev/hda1 |grep "Block size"

    Block size:               4096

    另一个工具dumpe2fs也可以。

     

    其实本来这几个概念不是很难,主要是NND他们的名字都一样,都叫“Block Size”。

    1.     硬件上的 block size, 应该是"sector size"linux的扇区大小是512byte

    2.       有文件系统的分区的block size, "block size",大小不一,可以用工具查看

    3.       没有文件系统的分区的block size,也叫“block size”,大小指的是1024 byte

    4.       Kernel buffer cache block size, 就是"block size",大部分PC1024

    5.       磁盘分区的"cylinder size",用fdisk 可以查看。

     

    我们来看看fdisk显示的不同的信息,理解一下这几个概念:

     

    Disk /dev/hda: 250.0 GB, 250059350016 bytes

    255 heads, 63 sectors/track, 30401 cylinders

    Units = cylinders of 16065 * 512 = 8225280 bytes

     

       Device Boot    Start       End    Blocks   Id  System

    /dev/hda1   *         1      1305  10482381   83  Linux

    /dev/hda2          1306      1566   2096482+  82  Linux swap

    /dev/hda3          1567     30401 231617137+  83  Linux

     

    8225280就是cylinder size。一共有30401cylinderStartEnd分别标记的是各个分区的起始cylinder 4列显示的就是以1024为单位的block(这一列最容易把人搞晕)。为什么“2096482+”有个“+”号呢?因为啊,总size1024除不尽,是个约数,表示2096482强!哈哈。搞笑吧,只有opensource的人想得出来这么表示。

  • 相关阅读:
    DIY 作品 及 维修 不定时更新
    置顶,博客中所有源码 github
    openwrt PandoraBox PBR-M1 极路由4 HC5962 更新固件
    使用 squid 共享 虚拟专用网至局域网
    第一次参加日语能力测试 N5
    libx264 libfdk_aac 编码 解码 详解
    开发RTSP 直播软件 H264 AAC 编码 live555 ffmpeg
    MFC Camera 摄像头预览 拍照
    http2 技术整理 nginx 搭建 http2 wireshark 抓包分析 server push 服务端推送
    plist 图集 php 批量提取 PS 一个个切
  • 原文地址:https://www.cnblogs.com/kumulinux/p/2149231.html
Copyright © 2011-2022 走看看