• 【Linux】磁盘基础知识


    扇区与块/簇

    如图所示,描述介绍了扇区、磁道等概念:

    ATrack   磁盘磁道(粉红色部分)

    BGeometrical sector  几何学中的扇形(紫色部分)

    CTrack sector   磁盘扇区(玫红色部分)

    DCluster  /簇(绿色部分)

    说完扇区,就不得不提一些其他相关概念,因为它们相辅相成,不能孤立开来,这里也简单介绍一下,不详细展开.

    盘片(platter)

    硬盘中一般会有多个盘片组成,这个如果拆解过磁盘的人都会知道,银白色的盘片像镜子一样,曾有同事将其当镜子用。大多数盘片的材质是铝合金,上面覆盖一些磁性涂层。IBM曾经生产过玻璃材质的盘片,不过早已退出了历史舞台。每个盘片包含两个面,每个盘面都对应地有一个读/写磁头。受到硬盘整体体积和生产成本的限制,盘片数量都受到限制,一般都在5片以内。盘片的编号自下向上从0开始,如最下边的盘片有0面和1面,再上一个盘片就编号为2面和3面。

     

    柱面(cylinder)

    硬盘通常由重叠的一组盘片构成,每个盘面都被划分为数目相等的磁道,并从外缘的0开始编号,具有相同编号的磁道形成一个圆柱,称之为磁盘的柱面。磁盘的柱面数与一个盘面上的磁道数是相等的。由于每个盘面都有自己的磁头,因此,盘面数等于总的磁头数。

     

    所有盘面上的同一磁道构成一个圆柱,称作柱面。数据的读/写按柱面从外向内进行,而不是按盘面进行。定位时,首先确定柱面,再确定盘面,然后确定扇区。之后所有磁头一起定位到指定柱面,再旋转盘面使指定扇区位于磁头之下。写数据时,当前柱面的当前磁道写满后,开始在当前柱面的下一个磁道写入,只有当前柱面全部写满后,才将磁头移动到下一个柱面。在对硬盘分区时,各个分区也是以柱面为单位划分的,即从什么柱面到什么柱面;不存在一个柱面同属于多个分区

     

    了解完上面概念,你再看一下下面两张图【来自维基百科】,基本上就能有个形象的认知了。

     

     

    关于扇区的一些疑问

     

    回过头来,我们仔细捋一捋图(1)这张图片,基本上就能把扇区的概念理解得七七八八了,那么还有几个问题,这个是我学习过程的一些疑问和自我解答(这里仅仅指传统硬盘,不涉及SSD磁盘):

     

    1:扇区的大小是固定的吗? 同一块磁盘上的扇区大小是否可以不一致。

    扇区(Sector)大小是固定的,默认情况下,每个扇区(Sector)为512字节,2009年后,硬盘厂商开始发布4KB字节扇区的硬盘了,4KB扇区硬盘已经在消费级市场广泛应用。但是同一块硬盘上的扇区大小一定是一致的。不可能存在多种不同大小的扇区。

    至于为什么之前的扇区大小为512字节呢?这是1956年由industry trade organization, International Disk Drive Equipment和Materials Association三家机构确定的行业标准。有时代和技术的限制,因为磁盘技术发展初期,存储容量非常小。512字节的扇区也够用,但是随着时代的发展,512字节大小的扇区(Sector)明显太小了,由于每个扇区(Sector)还要存放很多其他信息,因此增大sector size可以降低扇区(Sector)的数量,从而提高实际存储量,同时降低了差错校验等很多CPU计算量。但遗憾的是由于这个标准太根深蒂固,要想改变一些底层代码或架构势必非常困难,所以现在4KB扇区硬盘暂时还没有全部普及。

     

     参考资料

    1. 存储基础知识:扇区与块簇

  • 相关阅读:
    Python自然语言处理读书笔记第7章
    [转]基于SNS的文本数据挖掘
    使用python多线程实现一个简单spider
    基于内存共享的并行排序算法慢谈(中)
    [转]为什么我反对纯算法面试题
    从客户端检测到有潜在危险的Request.Form值
    repeater 回发或回调参数无效
    Nginx安装、平滑升级与虚拟机配置
    log4j.properties的配置示例
    jquery一般方法介绍
  • 原文地址:https://www.cnblogs.com/sunbines/p/15651021.html
Copyright © 2020-2023  润新知