精华内容
下载资源
问答
  • 硬盘读写原理

    2020-06-03 10:58:18
    目前,硬盘在市场上基本分为3种,分别是机械硬盘(HDD)、固态硬盘(SSD)、混合硬盘;按硬盘接口来划分,主要有SCSI 、IDE 、SATA、SAS和光纤通道五种。 任何一种硬盘的生产都要一定的标准;随着相应的标准的升级...

     目前,硬盘在市场上基本分为3种,分别是机械硬盘(HDD)、固态硬盘(SSD)、混合硬盘;按硬盘接口来划分,主要有SCSI 、IDE 、SATA、SAS和光纤通道五种。

           任何一种硬盘的生产都要一定的标准;随着相应的标准的升级,硬盘生产技术也在升级。比如:

      • SCSI标准已经经历了SCSI-1 、SCSI-2、SCSI-3;其中 Ultral-160就是基于SCSI-3标准的。
      • IDE 遵循的是ATA标准
      • SATA,是ATA标准的升级版本
      • IDE是并口设备,而SATA是串口,SATA的发展目的是替换IDE

           我们知道信息存储在硬盘里,把它拆开也看不见里面有任何东西,只有些盘片。假设,你用显微镜把盘片放大,会看见盘片表面凹凸不平,凸起的地方被磁化,凹的地方是没有被磁化;凸起的地方代表数字1(磁化为1),凹的地方代表数字0。因此硬盘可以以二进制来存储表示文字、图片等信息。

     

    1、硬盘的组成

            硬盘大家一定不会陌生,我们可以把它比喻成是我们电脑储存数据和信息的大仓库。一般说来,无论哪种硬盘,都是由盘片、磁头、盘片主轴、控制电机、磁头控制器、数据转换器、接口、缓存等几个部份组成。

            所有的盘片都固定在一个旋转轴上,这个轴即盘片主轴。而所有盘片之间是绝对平行的,在每个盘片的存储面上都有一个磁头,磁头与盘片之间的距离比头发 丝的直径还小。所有的磁头连在一个磁头控制器上,由磁头控制器负责各个磁头的运动。磁头可沿盘片的半径方向动作,(实际是斜切向运动),每个磁头同一时刻也必须是同轴的,即从正上方向下看,所有磁头任何时候都是重叠的(不过目前已经有多磁头独立技术,可不受此限制)。而盘片以每分钟数千转到上万转的速度在高速旋转,这样磁头就能对盘片上的指定位置进行数据的读写操作。

            由于硬盘是高精密设备,尘埃是其大敌,所以必须完全密封。

     

    2、硬盘的工作原理

           硬盘在逻辑上被划分为磁道、柱面以及扇区.

           硬盘的每个盘片的每个面都有一个读写磁头,磁盘盘面区域的划分如图所示。

     

           磁头靠近主轴接触的表面,即线速度最小的地方,是一个特殊的区域,它不存放任何数据,称为启停区或着陆区(LandingZone),启停区外就是数据区。在最外圈,离主轴最远的地方是“0”磁道,硬盘数据的存放就是从最外圈开始的。那么,磁头是如何找到“0”磁道的位置的 呢?在硬盘中还有一个叫“0”磁道检测器的构件,它是用来完成硬盘的初始定位。“0”磁道是如此的重要,以致很多硬盘仅仅因为“0”磁道损坏就报废,这是 非常可惜的。
    早期的硬盘在每次关机之前需要运行一个被称为Parking的程序,其作用是让磁头回到启停区。现代硬盘在设计上已摒弃了这个虽不复杂却很让人不愉快的小缺陷。硬盘不工作时,磁头停留在启停区,当需要从硬盘读写数据时,磁盘开始旋转。旋转速度达到额定的高速时,磁头就会因盘片旋转产生的气流而抬起, 这时磁头才向盘片存放数据的区域移动。
            盘片旋转产生的气流相当强,足以使磁头托起,并与盘面保持一个微小的距离。这个距离越小,磁头读写数据的灵敏度就越高,当然对硬盘各部件的要求也越 高。早期设计的磁盘驱动器使磁头保持在盘面上方几微米处飞行。稍后一些设计使磁头在盘面上的飞行高度降到约0.1μm~0.5μm,现在的水平已经达到 0.005μm~0.01μm,这只是人类头发直径的千分之一。
             气流既能使磁头脱离开盘面,又能使它保持在离盘面足够近的地方,非常紧密地跟随着磁盘表面呈起伏运动,使磁头飞行处于严格受控状态。磁头必须飞行在盘面上方,而不是接触盘面,这种位置可避免擦伤磁性涂层,而更重要的是不让磁性涂层损伤磁头。
            但是,磁头也不能离盘面太远,否则,就不能使盘面达到足够强的磁化,难以读出盘上的磁化翻转(磁极转换形式,是磁盘上实际记录数据的方式)。

            硬盘驱动器磁头的飞行悬浮高度低、速度快,一旦有小的尘埃进入硬盘密封腔内,或者一旦磁头与盘体发生碰撞,就可能造成数据丢失,形成坏块,甚至造成 磁头和盘体的损坏。所以,硬盘系统的密封一定要可靠,在非专业条件下绝对不能开启硬盘密封腔,否则,灰尘进入后会加速硬盘的损坏。另外,硬盘驱动器磁头的寻道伺服电机多采用音圈式旋转或直线运动步进电机,在伺服跟踪的调节下精确地跟踪盘片的磁道,所以,硬盘工作时不要有冲击碰撞,搬动时要小心轻放。
    这种硬盘就是采用温彻斯特(Winchester)技术制造的硬盘,所以也被称为温盘,目前绝大多数硬盘都采用此技术。

     

    3、盘面、磁道、柱面和扇区

           硬盘的读写是和扇区有着紧密关系的。在说扇区和读写原理之前先说一下和扇区相关的”盘面”、“磁道”、和“柱面”。

    1. 盘面

            硬盘的盘片一般用铝合金材料做基片,高速硬盘也可能用玻璃做基片。硬盘的每一个盘片都有两个盘面(Side),即上、下盘面,一般每个盘面都会利用,都可以存储数据,成为有效盘片,也有极个别的硬盘盘面数为单数。每一个这样的有效盘面都有一个盘面号,按顺序从上至下从“0”开始依次编号。在硬盘系统中,盘面号又叫磁头号,因为每一个有效盘面都有一个对应的读写磁头。硬盘的盘片组在2~14片不等,通常有2~3个盘片,故盘面号(磁头号)为0~3或 0~5。

    2. 磁道

            磁盘在格式化时被划分成许多同心圆,这些同心圆轨迹叫做磁道(Track)。磁道从外向内从0开始顺序编号。硬盘的每一个盘面有300~1 024个磁道,新式大容量硬盘每面的磁道数更多。信息以脉冲串的形式记录在这些轨迹中,这些同心圆不是连续记录数据,而是被划分成一段段的圆弧,这些圆弧的角速度一样。由于径向长度不一样,所以,线速度也不一样,外圈的线速度较内圈的线速度大,即同样的转速下,外圈在同样时间段里,划过的圆弧长度要比内圈 划过的圆弧长度大。每段圆弧叫做一个扇区,扇区从“1”开始编号,每个扇区中的数据作为一个单元同时读出或写入。一个标准的3.5寸硬盘盘面通常有几百到几千条磁道。磁道是“看”不见的,只是盘面上以特殊形式磁化了的一些磁化区,在磁盘格式化时就已规划完毕。

    3. 柱面

            所有盘面上的同一磁道构成一个圆柱,通常称做柱面(Cylinder),每个圆柱上的磁头由上而下从“0”开始编号。数据的读/写按柱面进行,即磁 头读/写数据时首先在同一柱面内从“0”磁头开始进行操作,依次向下在同一柱面的不同盘面即磁头上进行操作,只在同一柱面所有的磁头全部读/写完毕后磁头 才转移到下一柱面(同心圆的再往里的柱面),因为选取磁头只需通过电子切换即可,而选取柱面则必须通过机械切换。电子切换相当快,比在机械上磁头向邻近磁道移动快得多,所以,数据的读/写按柱面进行,而不按盘面进行。也就是说,一个磁道写满数据后,就在同一柱面的下一个盘面来写,一个柱面写满后,才移到下一个扇区开始写数据。读数据也按照这种方式进行,这样就提高了硬盘的读/写效率。
            一块硬盘驱动器的圆柱数(或每个盘面的磁道数)既取决于每条磁道的宽窄(同样,也与磁头的大小有关),也取决于定位机构所决定的磁道间步距的大小。

    4.扇区

            操作系统以扇区(Sector)形式将信息存储在硬盘上,每个扇区包括512个字节的数据和一些其他信息。一个扇区有两个主要部分:存储数据地点的标识符和存储数据的数据段。


            扇区的第一个主要部分是标识符。标识符,就是扇区头标,包括组成扇区三维地址的三个数字:

            盘面号:扇区所在的磁头(或盘面)

            柱面号:磁道,确定磁头的径向方向。

            扇区号:在磁道上的位置。也叫块号。确定了数据在盘片圆圈上的位置。

            头标中还包括一个字段,其中有显示扇区是否能可靠存储数据,或者是否已发现某个故障因而不宜使用的标记。有些硬盘控制器在扇区头标中还记录有指示字,可在原扇区出错时指引磁盘转到替换扇区或磁道。最后,扇区头标以循环冗余校验(CRC)值作为结束,以供控制器检验扇区头标的读出情况,确保准确无误。
    扇区的第二个主要部分是存储数据的数据段,可分为数据和保护数据的纠错码(ECC)。在初始准备期间,计算机用512个虚拟信息字节(实际数据的存放地)和与这些虚拟信息字节相应的ECC数字填入这个部分。

    5. 访盘请求完成过程 :

            确定磁盘地址(柱面号,磁头号,扇区号),内存地址(源/目):

            当需要从磁盘读取数据时,系统会将数据逻辑地址传给磁盘,磁盘的控制电路按照寻址逻辑将逻辑地址翻译成物理地址,即确定要读的数据在哪个磁道,哪个扇区。

            为了读取这个扇区的数据,需要将磁头放到这个扇区上方,为了实现这一点:

                    1)首先必须找到柱面,即磁头需要移动对准相应磁道,这个过程叫做寻道,所耗费时间叫做寻道时间,

                    2)然后目标扇区旋转到磁头下,即磁盘旋转将目标扇区旋转到磁头下。这个过程耗费的时间叫做旋转时间。

            即一次访盘请求(读/写)完成过程由三个动作组成:
                    1)寻道(时间):磁头移动定位到指定磁道
                    2)旋转延迟(时间):等待指定扇区从磁头下旋转经过
                    3)数据传输(时间):数据在磁盘与内存之间的实际传输

            因此在磁盘上读取扇区数据(一块数据)所需时间:

                    Ti/o=tseek +tla + n *twm

            其中:

                    tseek 为寻道时间

                    tla为旋转时间

                    twm 为传输时间

     

    4、磁盘的读写原理

            系统将文件存储到磁盘上时,按柱面、磁头、扇区的方式进行,即最先是第1磁道的第一磁头下(也就是第1盘面的第一磁道)的所有扇区,然后,是同一柱面的下一磁头,……,一个柱面存储满后就推进到下一个柱面,直到把文件内容全部写入磁盘。

            (文件的记录在同一盘组上存放是,应先集中放在一个柱面上,然后再顺序存放在相邻的柱面上,对应同一柱面,则应该按盘面的次序顺序存放。)

            (从上到下,然后从外到内。数据的读/写按柱面进行,而不按盘面进行,先)
            系统也以相同的顺序读出数据。读出数据时通过告诉磁盘控制器要读出扇区所在的柱面号、磁头号和扇区号(物理地址的三个组成部分)进行。磁盘控制器则 直接使磁头部件步进到相应的柱面,选通相应的磁头,等待要求的扇区移动到磁头下。在扇区到来时,磁盘控制器读出每个扇区的头标,把这些头标中的地址信息与期待检出的磁头和柱面号做比较(即寻道),然后,寻找要求的扇区号。待磁盘控制器找到该扇区头标时,根据其任务是写扇区还是读扇区,来决定是转换写电路, 还是读出数据和尾部记录。找到扇区后,磁盘控制器必须在继续寻找下一个扇区之前对该扇区的信息进行后处理。如果是读数据,控制器计算此数据的ECC码,然 后,把ECC码与已记录的ECC码相比较。如果是写数据,控制器计算出此数据的ECC码,与数据一起存储。在控制器对此扇区中的数据进行必要处理期间,磁 盘继续旋转。

     

    5、局部性原理与磁盘预读

      由于存储介质的特性,磁盘本身存取就比主存慢很多,再加上机械运动耗费,磁盘的存取速度往往是主存的几百分分之一,因此为了提高效率,要尽量减少磁盘I/O。为了达到这个目的,磁盘往往不是严格按需读取,而是每次都会预读,即使只需要一个字节,磁盘也会从这个位置开始,顺序向后读取一定长度的数据放入内存。这样做的理论依据是计算机科学中著名的局部性原理:

      当一个数据被用到时,其附近的数据也通常会马上被使用。

      程序运行期间所需要的数据通常比较集中。

      由于磁盘顺序读取的效率很高(不需要寻道时间,只需很少的旋转时间),因此对于具有局部性的程序来说,预读可以提高I/O效率。

      预读的长度一般为页(page)的整倍数。页是计算机管理存储器的逻辑块,硬件及操作系统往往将主存和磁盘存储区分割为连续的大小相等的块,每个存储块称为一页(在许多操作系统中,页得大小通常为4k),主存和磁盘以页为单位交换数据。当程序要读取的数据不在主存中时,会触发一个缺页异常,此时系统会向磁盘发出读盘信号,磁盘会找到数据的起始位置并向后连续读取一页或几页载入内存中,然后异常返回,程序继续运行。

     

    6、磁盘碎片的产生

            俗话说一图胜千言,先用一张ACSII码图来解释为什么会产生磁盘碎片。

            上面的ASCII图表示磁盘文件系统,由于目前上面没有任何数据文件,所以我把他表示成0。
            在图的最上侧和左侧各有a-z 26个字母,这是用来定位每个数据字节的具体位置,如第1行1列是aa,26行26列是zz。
            我们创建一个新文件,理所当然的,我们的文件系统就产生了变化,现在是

            如图所示:”内容表”(TOC)占据了前四行,在TOC里存贮着每件文件在系统里所在的位置。
            在上图,TOC包括了一个名字叫hello.txt的文件,其具体内容是”Hello, world”,在系统里的位置是ae到le。
            接下来再新建一个文件


            如图,我们新建的文件bye.txt紧贴着第一个文件hello.txt。
            其实这是最理想的系统结构,如果你将你的文件都按照上图所表示的那样一个挨着一个,紧紧的贴放在一起的话,那么读取他们将会非常的容易和迅速,这是因为在硬盘里动得最慢的(相对来说)就是传动手臂,少位移一些,读取文件数据的时间就会快一些。
            然而恰恰这就是问题的所在。现在我想在”Hello, World”后加上些感叹号来表达我强烈的感情,现在的问题是:在这样的系统上,文件所在的行就没有地方让我放这些感叹号了,因为bye.txt占据了剩下的位置。

            现在有俩个方法可以选择,但是没有一个是完美的

                    1.我们从原位置删除文件,重新建个文件重新写上”Hello, World!!”. –这就无意中延长了文件系统的读和写的时间。
                    2.打碎文件,就是在别的空的地方写上感叹号,也就是”身首异处”–这个点子不错,速度很快,而且方便,但是,这就同时意味着大大的减慢了读取下一个新文件的时间。


            如果你对上面的文字没概念,上图

            这里所说的方法二就像是我们的windows系统的存储方式,每个文件都是紧挨着的,但如果其中某个文件要更改的话,那么就意味着接下来的数据将会被放在磁盘其他的空余的地方。
            如果这个文件被删除了,那么就会在系统中留下空格,久而久之,我们的文件系统就会变得支离破碎,碎片就是这么产生的。

            试着简单点,讲给mm听的硬盘读写原理简化版

            硬盘的结构就不多说了,我们平常电脑的数据都是存在磁道上的,大致上和光盘差不多.读取都是靠磁头来进行.

            我们都知道,我们的数据资料都是以信息的方式存储在盘面的扇区的磁道上,硬盘读取是由摇臂控制磁头从盘面的外侧向内侧进行读写的.所以外侧的数据读取速度会比内侧的数据快很多.

            其实我们的文件大多数的时候都是破碎的,在文件没有破碎的时候,摇臂只需要寻找1次磁道并由磁头进行读取,只需要1次就可以成功读取;但是如果文件破碎成 11处,那么摇臂要来回寻找11次磁道磁头进行11次读取才能完整的读取这个文件,读取时间相对没有破碎的时候就变得冗长.

            因此,磁盘碎片往往也是拖慢系统的重要因素之一,Vista之家团队也计划在Vista优化大师后续版本内加入磁盘碎片整理功能,敬请期待。

     

    7、硬盘容量及分区大小的计算

            在linux系统,要计算硬盘容量及分区大小,我们先通过fdsik -l查看硬盘信息:

       Disk /dev/hda: 80.0 GB, 80026361856 bytes
      255 heads, 63 sectors/track, 9729 cylinders
      Units = cylinders of 16065 * 512 = 8225280 bytes
       Device Boot Start End Blocks Id System
      /dev/hda1 * 1 765 6144831 7 HPFS/NTFS
      /dev/hda2 766 2805 16386300 c W95 FAT32 (LBA)
      /dev/hda3 2806 9729 55617030 5 Extended
      /dev/hda5 2806 3825 8193118+ 83 linux
      /dev/hda6 3826 5100 10241406 83 linux
      /dev/hda7 5101 5198 787153+ 82 linux swap / Solaris
      /dev/hda8 5199 6657 11719386 83 linux
      /dev/hda9 6658 7751 8787523+ 83 linux
      /dev/hda10 7752 9729 15888253+ 83 linux

    其中
        heads 是磁盘面;
        sectors 是扇区;
        cylinders 是柱面;
        每个扇区大小是 512byte,也就是0.5K;

      通过上面的例子,我们发现此硬盘有 255个磁盘面,有63个扇区,有9729个柱面;所以整个硬盘体积换算公式应该是:
      磁面个数 * 扇区个数 * 每个扇区的大小512 * 柱面个数 = 硬盘体积 (单位bytes)
      所以在本例中磁盘的大小应该计算如下:
    255 x 63 x 512 x 9729 = 80023749120 bytes
      提示:由于硬盘生产商和操作系统换算不太一样,硬盘厂家以10进位的办法来换算,而操作系统是以2进位制来换算,所以在换算成M或者G 时,不同的算法结果却不一样;所以我们的硬盘有时标出的是80G,在操作系统下看却少几M;
      上面例子中,硬盘厂家算法 和 操作系统算数比较:
      硬盘厂家: 80023749120 bytes = 80023749.120 K = 80023.749120 M (向大单位换算,每次除以1000)
      操作系统: 80023749120 bytes = 78148192.5 K = 76316.594238281 M (向大单位换算,每次除以1024)
      我们在查看分区大小的时候,可以用生产厂家提供的算法来简单推算分区的大小;把小数点向前移动六位就是以G表示的大小;比如 hda1 的大小约为 6.144831G ;

    展开全文
  • 机械硬盘原理

    2018-08-01 13:51:00
    机械硬盘存储原理:磁头臂是可以旋转的,磁头可借助磁头臂沿盘片的半径方向运动,加上盘片每分钟几千转的高速旋转,磁头就可以定位在盘片的指定位置上进行数据的读写操作。信息通过离磁性表面很近的磁头,由电磁流来...

    机械硬盘存储原理:磁头臂是可以旋转的,磁头可借助磁头臂沿盘片的半径方向运动,加上盘片每分钟几千转的高速旋转,磁头就可以定位在盘片的指定位置上进行数据的读写操作。信息通过离磁性表面很近的磁头,由电磁流来改变极性方式被电磁流写到磁盘上,信息可以通过相反的方式读取。也就是磁铁同性排斥,异性相吸,若规定磁盘N极记录为0,S极记录为1,磁头为N,此时根据吸引或排斥,便可获得一串010101,再以8位为一字节,通过ASCII表翻译,便实现了信息的读取。写入则是相反的过程,最后通过电磁流改变磁片极性,写入数据。

     

    转载于:https://www.cnblogs.com/yogurtwu/p/9396287.html

    展开全文
  • 机械硬盘原理介绍

    2021-03-25 19:23:48
    硬盘读写数据的过程 SMR叠瓦式硬盘 其他硬盘知识 硬盘发展历史 硬盘结构及工作原理 硬盘结构 经过封装后的硬盘,对我们一般呈现出如下的样子: 硬盘主要由盘体、控制电路板和接口部件组成。 盘体就是一个密封,...

    硬盘结构及工作原理

    目录:
    硬盘结构
    概念:盘面、柱面、磁道、扇区、簇
    盘面
    磁道
    扇区
    柱面

    硬盘读写数据的过程
    SMR叠瓦式硬盘
    其他硬盘知识

    硬盘发展历史

    在这里插入图片描述
    在这里插入图片描述

    硬盘结构及工作原理

    硬盘结构

    经过封装后的硬盘,对我们一般呈现出如下的样子:
    在这里插入图片描述

    硬盘主要由盘体、控制电路板和接口部件组成。 盘体就是一个密封,封装了多个盘片的腔体;控制电路包含硬盘BIOS,主控芯片和硬盘缓存等单元;接口部件包含电源、数据接口主从跳线等。
    在这里插入图片描述

    电源插座连接电源,为硬盘工作提供电力保证。数据接口是硬盘与主板、内存之间进行数据交换的通道,使用一根40针40线(早期)或40针80线(当前)的IDE接口电缆进行连接。新增加的40线是信号屏蔽线,用于屏蔽高速高频数据传输过程中的串扰。中间的主、从盘跳线插座,用以设置主、从硬盘,即设置硬盘驱动器的访问顺序。其设置方法一般标注在盘体外的标签上,也有一些标注在接口处,早期的硬盘还可能印在电路板上。

    此外,在硬盘表面有一个透气孔,它的作用是使硬盘内部气压与外部大气压保持一致。由于盘体是密封的,所以,这个透气孔不直接和内部相通,而是经由一个高效过滤器和盘体相通,用以保证盘体内部的洁净无尘,使用中注意不要将它盖住。

    硬盘的盘片一般采用合金材料,多数为铝合金(IBM曾经开发过玻璃材质的盘片,好像现在有些厂家也生产玻璃材质的盘片,但不多见),盘面上涂着磁性材料,厚度一般在0.5mm左右,直径主要有1.8in(1in=25.4mm)、2.5in、3.5in和5.25in 4种,其中2.5in和3.5in盘片应用最广。盘片的转速与盘片大小有关,考虑到惯性及盘片的稳定性,盘片越大转速越低。

    有的硬盘只装一张盘片,有的硬盘则有多张盘片。这些盘片安装在主轴电机的转轴上,在主轴电机的带动下高速旋转。每张盘片的容量称为单碟容量,而硬盘的容量就是所有盘片容量的总和。早期硬盘由于单碟容量低,所以,盘片较多,有的甚至多达10余片,现代硬盘的盘片一般只有少数几片。一块硬盘内的所有盘片都是完全一样的,不然控制部分就太复杂了。一个牌子的一个系列一般都用同一种盘片,使用不同数量的盘片,就出现了一个系列不同容量的硬盘产品。
    盘片上的记录密度很大,而且盘片工作时会高速旋转,为保证其工作的稳定,数据保存的长久,所以硬片都是密封在硬盘内部。不可自行拆卸硬盘,在普通环境下空气中的灰尘、指纹、头发丝等细小杂质都会对硬盘造成永久损害。一个被大卸八块的硬盘如下:
    在这里插入图片描述

    硬盘驱动器采用高精度、轻型磁头驱动/定位系统。这种系统能使磁头在盘面上快速移动,可在极短的时间内精确地定位在由计算机指令指定的磁道上。目前,磁道密度已高达5 400Tpi(每英寸磁道数)或更高;人们还在研究各种新方法,如在盘上挤压(或刻蚀)图形、凹槽和斑点等作为定位和跟踪标记,以提高到和光盘相等的道密度,从而在保持磁盘机高速度、高位密度和高可靠性的优势下,大幅度提高存储容量。

    硬盘驱动器内的电机都是无刷电机,在高速轴承支持下机械磨损很小,可以长时间连续工作。高速旋转的盘体产生明显的陀螺效应,所以,在硬盘工作时不宜搬动,否则,将增加轴承的工作负荷。为了高速存储和读取信息,硬盘驱动器的磁头质量小,惯性也小,所以,硬盘驱动器的寻道速度明显快于软驱和光驱。

    硬盘驱动器磁头与磁头臂及伺服定位系统是一个整体。伺服定位系统由磁头臂后的线圈和固定在底板上的电磁控制系统组成。由于定位系统限制,磁头臂只能在盘片的内外磁道之间移动。因此,不管开机还是关机,磁头总在盘片上;所不同的是,关机时磁头停留在盘片启停区,开机时磁头“飞行”在磁盘片上方。

    概念:盘面、柱面、磁道、扇区、簇

    盘面
    硬盘一般会有一个或多个盘片,每个盘片可以有两个面(Side),即第1个盘片的正面称为0面,反面称为1面;第2个盘片的正面称为2面,反面称为3面…依次类推。每个盘面对应一个磁头(head)用于读写数据。第一个盘面的正面的磁头称为0磁头,背面称为1磁头;第二个盘片正面的磁头称为2磁头,背面称为3磁头,以此类推。盘面数和磁头数是相等的。
    一张单面的盘片需要一个磁头,双面的盘片则需要两个磁头。硬盘采用高精度、轻型磁头驱动和定位系统。这种系统能使磁头在盘面上快速移动,读写硬盘时,磁头依靠磁盘的高速旋转引起的空气动力效应悬浮在盘面上,与盘面的距离不到1微米(约为头发直径的百分之一),可以在极短的时间内精确定位到计算机指令指定的磁道上。
    早期由于定位系统限制,磁头传动臂只能在盘片的内外磁道之间移动。因此,不管开机还是关机,磁头总在盘片上。所不同的是,关机时磁头停留在盘片启停区,开机时磁头“飞行”在磁盘片上方。

    磁道
    每个盘片的每个盘面被划分成多个狭窄的同心圆环,数据就是存储在这样的同心圆环上,我们将这样的圆环称为磁道(Track),每个盘面可以划分多个磁道。关机时磁头停留在硬盘的着陆区(Landing Zone),这个着陆区以前是位于离盘心最近的区域,不存放任何数据。在后期的硬盘工艺中有些硬盘生产厂商将这个区域被移动到了盘片的外面,如下所示:
    在这里插入图片描述
    在每个盘面的最外圈,离盘心最远的地方是“0”磁道,向盘心方向依次增长为1磁道,2磁道,等等。硬盘数据的存放就是从最外圈开始。

    扇区
    把每个磁道划分成若干弧段,每段称为一个扇区(Sector)。扇区是硬盘上存储的物理单位,每个扇区可存储128×2N次方(N=0,1,2,3)字节的数据。从DOS时代起,每扇区是128×22=512字节,现在已经成了业界不成文的规定,也没有哪个硬盘厂商试图去改变这种约定。也就是说即使计算机只需要硬盘上存储的某个字节,也须一次把这个字节所在的扇区中的全部512字节读入内存,再选择所需的那个字节。扇区的编号是从1开始,而不是0。另外,硬盘在划分扇区时,在硬盘磁道中,扇区号是按照某个间隔跳跃着编排。比如,2号扇区并不是1号扇区后的按顺序的第一个而是第八个,3号扇区又是2号扇区后的按顺序的第八个,依此类推,这个“八”称为交叉因子。

    这个交叉因子的来历有必要详述一下,我们知道,数据读取经常需要按顺序读取一系列相邻的扇区(逻辑数据相邻)。如对磁道扇区按物理顺序进行编号,很有可能出现当磁头读取完第一个扇区后,由于盘片转速过快来不及读取下一个扇区,(要知道物理相邻扇区位置距离是极小的),必须等待转完一圈,这极大浪费了时间。所以就用交叉来解决这个问题。增加了交叉因子后的扇区编号一般是下面这个样子:

    柱面
    柱面其实是我们抽象出来的一个逻辑概念,前面说过,离盘心最远的磁道为0磁道,依此往里为1磁道,2磁道,3磁道…,不同面上相同磁道编号则组成了一个圆柱面,即所称的柱面(Cylinder)。这里要注意,硬盘数据的读写是按柱面进行,即磁头读写数据时首先在同一柱面内从0磁头开始进行操作,依次向下在同一柱面的不同盘面(即磁头上)进行操作,只有在同一柱面所有的磁头全部读写完毕后磁头才转移到下一柱面,因为选取磁头只需通过电子切换即可,而选取柱面则必须通过机械切换。电子切换比从在机械上磁头向邻近磁道移动快得多。因此,数据的读写按柱面进行,而不按盘面进行。 读写数据都是按照这种方式进行,尽可能提高了硬盘读写效率。


    将物理相邻的若干个扇区称为了一个簇。操作系统读写磁盘的基本单位是扇区,而文件系统的基本单位是簇(Cluster)。在Windows下,随便找个几字节的文件,在其上面点击鼠标右键选择属性,看看实际大小与占用空间两项内容,如大小:15 字节 (15 字节), 占用空间:4.00 KB (4,096 字节)。这里的占用空间就是你机器分区的簇大小,因为再小的文件都会占用空间,逻辑基本单位是4K,所以都会占用4K。 簇一般有这几类大小 4K,8K,16K,32K,64K等。簇越大存储性能越好,但空间浪费严重。簇越小性能相对越低,但空间利用率高。NTFS格式的文件系统簇的大小为4K。
    在这里插入图片描述

    硬盘读写数据的过程

    现代硬盘寻道都是采用CHS(Cylinder Head Sector)的方式,硬盘读取数据时,读写磁头沿径向移动,移到要读取的扇区所在磁道的上方,这段时间称为寻道时间(seek time)。因读写磁头的起始位置与目标位置之间的距离不同,寻道时间也不同。目前硬盘一般为2到30毫秒,平均约为9毫秒。磁头到达指定磁道后,然后通过盘片的旋转,使得要读取的扇区转到读写磁头的下方,这段时间称为旋转延迟时间(rotational latencytime)。

    一个7200(转/每分钟)的硬盘,每旋转一周所需时间为60×1000÷7200=8.33毫秒,则平均旋转延迟时间为8.33÷2=4.17毫秒(平均情况下,需要旋转半圈)。平均寻道时间和平均选装延迟称为平均存取时间。

    所以,最后看一下硬盘的容量计算公式: 硬盘容量=盘面数×柱面数×扇区数×512字节

    SMR叠瓦式硬盘
    磁道间的距离缩短,写入时影响了相邻磁道,不该被提取的磁道也被提取。
    产品:希捷酷鱼2TDM008,256MB缓存
    叠瓦式硬盘最佳应用场景:1低成本在线归档;2对象存储(读取为主);3大数据的长期保存;4云平台在线归档


    硬盘的其他知识

           无尘工作
           盘片、磁头永不接触
           内外圈线速度不一致,磁盘用的越多速度越慢
           缓存不是越大越好,命中率才是关键,叠瓦式硬盘配备了大缓存
           寻道时间越短越好,IOPS企业级关注
    
    展开全文
  • 固态硬盘读写速度快的原理是什么? 我们先来回顾一下普通的机械硬盘是如何工作的。机械硬盘的读写过程需要磁头在其他机械零件的精密配合下进行寻道找到磁盘上数据存储的位置。也就是说机械硬盘的读写过程依靠的是...

    针对有关固态硬盘的这些疑虑,我们接下来一一阐述。

    固态硬盘读写速度快的原理是什么?

    我们先来回顾一下普通的机械硬盘是如何工作的。机械硬盘的读写过程需要磁头在其他机械零件的精密配合下进行寻道找到磁盘上数据存储的位置。也就是说机械硬盘的读写过程依靠的是物理机械的运作。而固态硬盘的读写过程,是在主控的指挥下,通过电学信号的传输完成对闪存芯片(如下图是NAND闪存的基本单元)的读写操作。所以,固态硬盘的读写过程依靠的是电学信号。电学信号比物理机械的运作快多了,这就是固态硬盘硬盘读写快的本质原因。

    我们这里再说一组数据,现在固态硬盘读取数据的时间一般都在0.1ms以下,而机械硬盘读取数据的时间一般在10ms以上。数据一出,差距立判。

    是不是颗粒越多读写性能和寿命越好?

    的确是这样,固态硬盘容量越大,内部的颗粒就越多,读写性能越好,寿命就越长。不过,容量越大,对读取速度的影响不是很大,对写入速度影响比较大,比如下图是某款固态硬盘的不同容量的对比数据:

    那是为什么呢?要解答这个疑问,我们需要了解一下固态硬盘中主控和NAND闪存之间的工作模式。如下图是固态硬盘结构示意图,我们可以看到,固态硬盘主控和NAND闪存之间的沟通需要有一个“桥梁”,这个“桥梁”的专业术语叫做通道(Channel)。每个通道内也会有多个NAND闪存颗粒并行,如下图中是4个通道,每个通道放8个NAND颗粒,也就是总共有32颗NAND芯片。

    每个通道中的NAND芯片不可能同时进行写入操作,那怎么办呢?好办,就这样做:由于NAND写入过程有一段延迟,让不同的NAND芯片行成一个操作梯度(如下图),这里专业名词叫做Interleave。好处就是充分降低写入延迟,提升写入速度。

    执行Interleave操作的NAND颗粒越多,对固态硬盘的性能提升效果越明显,如下图测试数据。假设每页写入时间是100us, 4颗NAND闪存芯片的写入速度是1颗NAND闪存芯片的4倍。

    固态硬盘和U盘中闪存的区别?

    虽然固态硬盘和U盘中实现数据存储的介质都是NAND闪存,为啥不一样呢?其实,本质上是一样的,都是NAND闪存。但是二者之间最大的区别就是质量问题。固态硬盘中采用的NAND闪存一般都是高质量的NAND等级。而U盘中采用的NAND闪存很多都是固态硬盘中NAND闪存筛选之后的颗粒。也就说,U盘中的NAND闪存通常要比固态硬盘中的NAND闪存低一个级别,甚至更低。

    结语

    本文我们针对题目中的三个疑问作出了阐述,你有收获吗?如果有的话,劳烦点个赞,留个言哦~

    精彩推荐:

    更多精彩内容,敬请关注头条号/悟空问答【存储随笔】获取更多活动内容。

    同时,也可以关注公众号: 存储随笔,Memory-logger. 


    展开全文
  • 硬盘读写物理构造及原理 http://www.itpub.net/thread-1707917-1-1.html转载 简介 硬盘作为现在计算机内部最后的机械存储部件,速度相比较内...
  • 硬盘有机械硬盘(HDD)和固态硬盘(SSD)之分。机械硬盘即是传统普通硬盘,主要由:盘片,磁头,盘片转轴及控制电机,磁头控制器,数据转换器,接口,缓存等几个部分组成。 磁头可沿盘片的半径方向运动,加上盘片每分钟...
  • 根据硬盘的读写方式和存储方式不同,当前主流的硬盘可以分为固态硬盘(SSD硬盘)、机械硬盘(HDD 硬盘)两种。由于固态硬盘存在价格昂贵、容量较小和一旦损坏难以修复等特点,当前市场主要流行的依然是机械硬盘。...
  • 硬盘原理

    2018-11-15 17:06:00
     硬盘作为现在计算机内部最后的机械存储部件,速度相比较内存和Cache而言会慢好几个数量级。但所幸的是,硬盘的成本是远远低于内存的。因此硬盘作为永久存储器是比较合适的,所幸的是为了克服硬盘慢速带来的问题,...
  • 硬盘工作原理

    2019-04-28 23:07:00
    硬盘工作原理 机械手臂 机械手臂就是用来读写数据的。 磁道 用来存储数据 扇区 一个扇区,规定了一个扇区就是512KB的数据;电脑分C盘和D盘减少io操作,减少寻找数据的时间,C盘的数据不会再D盘寻找 平均寻道...
  • 浅谈硬盘工作原理

    千次阅读 2016-12-13 22:33:49
    固态硬盘具有传统机械硬盘不具备的快速读写(目前主流固态硬盘读写速度大概400M/s,而机械硬盘大概120M/s)、质量轻、能耗低(存储介质是芯片,而不是盘片,运行起来没有噪音)以及体积小等特点,
  • (1) 机械硬盘原理 机械硬盘,英文名Hard Disk Drive,是电脑上使用坚硬的旋转盘片为基础的非挥发性存储设备,它在平整的磁性表面存储和检索数字数据,信息通过离磁性表面很近的磁头,由电磁流来改变极性方式被...
  • 主轴让磁盘盘片转动,然后传动手臂可伸展让读取头在盘片上进行读写操作。每个盘片有两面,都可记录信息,所以一张盘片对应着两个磁头。 磁盘物理结构如下图: 硬盘的外部物理结构 一般硬盘正面贴有产品标签,...
  • 磁盘硬件被系统虚拟化块pageLMR水平式记录磁盘PMR垂直式记录磁盘SMR瓦楞式堆叠磁盘避免购买到叠瓦式机械硬盘 问题 想自己组建一个nas,但是看到一直有人说pmr垂直式硬盘与smr叠瓦式硬盘,还有人一直鄙视叠瓦式硬盘,...
  • 机械硬盘和固态硬盘有什么区别

    千次阅读 2013-10-17 09:10:54
    机械硬盘 就是我们现在大多都在使用的,构造原理是硬盘里面是由1张或几张可读写数据的储存盘体,盘体上有只读写枪,有点象老式光碟机,硬盘里面还有一保马达带动储存盘转动,从而能读取到不同部分的数据。...
  • 机械硬盘的通过磁头读写数据,由于角速度恒定,磁头越靠近外圈,扫描的扇区阅读,读写速度越快. 3个磁盘分区方案: 假设: 磁盘半径r=10 内层半径r1=2.5 中层半径r2=5 外层半径r3=7.5 内层面积:s1 = πr2xr2 - ...
  • 固态硬盘和机械硬盘混用最优化设置机械硬盘不够快了! 机械硬盘不够快了! 这是固态的时代,在09年的时候,固态由于价格原因导致不能普及。19年,固态就已经1G一元,甚至还更低。但是由于原理和技术和生产的原因,高...
  • 在出现固态硬盘之前,所有的电脑都是使用的机械硬盘。它的原理类似于光盘,主要结构是一个高速旋转的盘片 和在盘片上来回读写数据的 磁头。而固态硬盘则是以 电子存储 的方式来存储数据的,主要由主控芯片、闪存芯片...
  • [组成原理] 硬盘

    2019-12-29 14:42:13
    机械硬盘3. SSD1) 写入、擦除2) 预留空间 1. 硬盘性能指标 1) IOPS 每秒读写次数,在大多数场景下,随机读写的IOPS是核心指标 2) DTR 数据传输率,也就是吞吐率。 2. 机械硬盘 机械硬盘由盘面和磁头、悬臂组成...
  • 机械硬盘 机械手臂 用来读写数据 磁道 存储数据 扇区 一个扇区,规定了容量为512kb。电脑分C盘与D盘为了减少IO操作,减少数据寻找的时间,C盘的文件不会在D盘里寻找。 平均寻道时间 工业限制,平均寻道时间为5ms ...
  • 硬盘按照工作原理主要分为固态硬盘和机械硬盘两种,接下来我就以两种硬盘的优劣以及各自的特点来进行介绍。 机械硬盘 机械硬盘即是传统普通硬盘,主要由:盘片,磁头,盘片转轴及控制电机,磁头控制器,数据转换器,...
  • 系统硬件知识之硬盘

    2021-05-06 17:59:23
    机械硬盘工作原理机械硬盘(Hard Disk Drive,缩写:HDD):是电脑上使用坚硬的旋转盘片为基础的非易失性存储器(指当电流关掉后,所存储的资料不会消失的资料存储设备。),它在平整的磁性表面存储和检索数字数据...
  • 硬盘分类详解

    万次阅读 多人点赞 2018-08-03 18:38:51
    机械硬盘(HDD)、固态硬盘(SSD)以及混合硬盘(SSHD) 1、机械硬盘(HDD) 机械硬盘(HDD)是传统硬盘,为电脑主要的存储媒介之一。由一个或者多个铝制或者玻璃制成的磁性碟片,磁头,转轴,控制电机,磁头控制器...
  • 硬盘分类介绍

    2020-06-08 16:35:51
    机械硬盘(HDD)、固态硬盘(SSD)以及混合硬盘(SSHD) 1.1 机械硬盘(HDD) 机械硬盘(HDD)是传统硬盘,为电脑主要的存储媒介之一。由一个或者多个铝制或者玻璃制成的磁性碟片,磁头,转轴,控制电机,磁头控制器...

空空如也

空空如也

1 2 3 4 5
收藏数 81
精华内容 32
关键字:

机械硬盘读写原理