一篇对硬盘讲解很透彻的文章.doc

上传人:hw****26 文档编号:3554990 上传时间:2019-06-04 格式:DOC 页数:5 大小:85.50KB
下载 相关 举报
一篇对硬盘讲解很透彻的文章.doc_第1页
第1页 / 共5页
一篇对硬盘讲解很透彻的文章.doc_第2页
第2页 / 共5页
一篇对硬盘讲解很透彻的文章.doc_第3页
第3页 / 共5页
一篇对硬盘讲解很透彻的文章.doc_第4页
第4页 / 共5页
一篇对硬盘讲解很透彻的文章.doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

1、一篇对硬盘讲解很透彻的文章 硬盘是现在计算机上最常用的存储器。我们都知道,计算机之所以神奇,是因为它具有高速分析处理数据的能力。而这些数据都被以文件的形式存储在硬盘里。不过,计算机可不像人那么聪明。在读取相应的文件时,你必须要给出它相应的规则。这就是分区概念的形成。 分区从实质上说就是对硬盘的一种格式化。当我们创建分区时,就已经设置好了硬盘的各项物理参数,指定了硬盘主引导记录(即 MasterBootRecord,一般简称为 MBR)和引导记录备份的存放位置。而对于文件系统以及其他操作系统管理硬盘所需要的信息则是通过之后的高级格式化,即Format 命令来实现。硬件分区后,将会被划分为面、磁道

2、和扇区。需要注意的是,这些只是个虚拟的概念,并不是真正在硬盘上划道子_。先从面说起,硬盘一般是由一片或几片圆形薄膜叠加而成。我们所说,每个圆形薄膜都有两个“面“(Side),这两个面都是用来存储数据的。按照面的多少,依次称为0 面、1 面、2 面由于每个面都专有一个读写磁头,也常用 0 头(head)、1 头称之。按照硬盘容量和规格的不同,硬盘面数(或头数)也不一定相同,少的只有 2 面,多的可达数十面。各面上磁道号相同的磁道合起来,称为一个柱面(cylinder)(见图 1)。 图 1上面我们提到了磁道的概念。那么究竟何为磁道呢?大家都知道,读写硬盘时,磁头依靠磁盘的高速旋转引起的空气动力效

3、应悬浮在盘面上,与盘面的距离不到 1 微米(约为头发直径的百分之一)。由于磁盘是旋转的,则连续写入的数据是排列在一个圆周上的。我们称这样的圆周为一个磁道(Track)。(见图 2)如果读写磁头沿着圆形薄膜的半径方向移动一段距离,以后写入的数据又排列在另外一个磁道上。 图 2 根据硬盘规格的不同,磁道数可以从几百到数千不等;一个磁道上可以容纳数 KB 的数据,而主机读写时往往并不需要一次读写那么多,于是,磁道又被划分成若干段,每段称为一个扇区(Sector)。一个扇区一般存放 512 字节的数据。扇区也需要编号,同一磁道中的扇区,分别称为 1 扇区,2 扇区。这里需要注意的是,硬盘在划分扇区时,

4、和一般的软盘有一定的区别。软盘的一个磁道中,扇区号依次编排,即 2 号与 1 号相邻,3 号与 2 号相邻,以此类推。而在硬盘的一个磁道中,扇区号是按照某个间隔跳跃着编排的。我们举一个例子来说明:在某个硬盘上,以实际存储位置而论,2 号扇区并不是 1 号扇区后的第一个,而是第 5 个,3 号扇区又是 2 号扇区后的第 5 个,以此类推。这个“5“就是我们说的交叉因子。(见图 3)当然,这个交叉因子的设定并不是绝对的,每个种类的硬盘为根据自身的情况加以变化。选择适当的交叉因子,可使硬盘驱动器读写扇区的速度与硬盘的旋转速度相匹配,提高存储数据的速度。 图 3 计算机对硬盘的读写,处于效率的考虑,是

5、以扇区为基本单位的。即使计算机只需要硬盘上存储的某个字节,也必须一次把这个字节所在的扇区中的 512 字节全部读入内存,再使用所需的那个字节。不过,在上文中我们也提到,硬盘上面、磁道、扇区的划分表面上是看不到任何痕迹的,虽然磁头可以根据某个磁道的应有半径来对准这个磁道,但怎样才能在首尾相连的一圈扇区中找出所需要的某一扇区呢?原来,每个扇区并不仅仅是由 512 个字节组成的,在这些由计算机存取的数据的前、后两端,都另有一些特定的数据,这些数据构成了扇区的界限标志,标志中含有扇区的编号和其他信息。计算机就凭借着这些标志来识别扇区(见图 4)。 在上文中,我们谈了数据在硬盘中的存储的一般原理。为了能

6、更深入的了解硬盘,我们还必须对硬盘的数据结构有个简单的了解。硬盘上的数据按照其不同的特点和作用大致可分为 5 部分:MBR 区、DBR 区、FAT 区、DIR 区和 DATA 区。我们来分别介绍一下:(1)MBR 区MBR(Main Boot Record),按其字面上的理解即为主引导记录区,位于整个硬盘的 0 磁道 0 柱面 1 扇区。不过,在总共 512 字节的主引导扇区中,MBR 只占用了其中的 446 个字节(偏移 0-偏移 1BDH),另外的 64 个字节(偏移 1BEH-偏移 1FDH)交给了 DPT(Disk Partition Table硬盘分区表)(见下表),最后两个字节“5

7、5,AA“(偏移 1FEH- 偏移 1FFH)是分区的结束标志。这个整体构成了硬盘的主引导扇区。大致的结构如图 5: 图 5主引导记录中包含了硬盘的一系列参数和一段引导程序。其中的硬盘引导程序的主要作用是检查分区表是否正确并且在系统硬件完成自检以后引导具有激活标志的分区上的操作系统,并将控制权交给启动程序。MBR 是由分区程序(如 F)所产生的,它不依赖任何操作系统,而且硬盘引导程序也是可以改变的,从而实现多系统共存。偏移 长度 所表达的意义0 字节分区状态:如 0非活动分区80 活动分区1 字节 该分区起始头(HEAD)2 字 该分区起始扇区和起始柱面4 字节该分区类型:如 82 Linux

8、 Native 分区83 Linux Swap 分区5 字节 该分区终止头(HEAD)6 字 该分区终止扇区和终止柱面8 双字 该分区起始绝对分区C 双字 该分区扇区数下面,我们以一个实例让大家更直观地来了解主引导记录:例:80 01 01 00 0B FE BF FC 3F 00 00 00 7E 86 BB 00在这里我们可以看到,最前面的“80“是一个分区的激活标志,表示系统可引导;“01 01 00“表示分区开始的磁头号为 01,开始的扇区号为 01,开始的柱面号为 00;“0B“表示分区的系统类型是 FAT32,其他比较常用的有 04(FAT16)、07(NTFS);“FE BF F

9、C“表示分区结束的磁头号为 254,分区结束的扇区号为 63、分区结束的柱面号为 764;“3F 00 00 00“表示首扇区的相对扇区号为 63;“7E 86 BB 00“表示总扇区数为 12289622。(2)DBR 区DBR(Dos Boot Record)是操作系统引导记录区的意思。它通常位于硬盘的 0 磁道 1 柱面 1 扇区,是操作系统可以直接访问的第一个扇区,它包括一个引导程序和一个被称为 BPB(Bios Parameter Block)的本分区参数记录表。引导程序的主要任务是当 MBR 将系统控制权交给它时,判断本分区跟目录前两个文件是不是操作系统的引导文件(以 DOS 为例

10、,即是 Io.sys 和Msdos.sys)。如果确定存在,就把其读入内存,并把控制权 交给该文件。BPB 参数块记录着本分区的起始扇区、结束扇区、文件存储格式、硬盘介质描述符、根目录大小、FAT 个数,分配单元的大小等重要参数。(3)FAT 区在 DBR 之后的是我们比较熟悉的 FAT(File Allocation Table 文件分配表)区。在解释文件分配表的概念之前,我们先来谈谈簇(cluster)的概念。文件占用磁盘空间时,基本单位不是字节而是簇。簇的大小与磁盘的规格有关,一般情况下,软盘每簇是 1 个扇区,硬盘每簇的扇区数与硬盘的总容量大小有关,可能是 4、8、16、32、64通过

11、上文我们已经知道,同一个文件的数据并不一定完整地存放在磁盘的一个连续的区域内,而往往会分成若干段,像一条链子一样存放。这种存储方式称为文件的链式存储。(见图 6)硬盘上的文件常常要进行创建、删除、增长、缩短等操作。这样操作做的越多,盘上的文件就可能被分得越零碎(每段至少是 1 簇)。但是,由于硬盘上保存着段与段之间的连接信息(即FAT),操作系统在读取文件时,总是能够准确地找到各段的位置并正确读出。不过,这种以簇为单位的存储法也是有其缺陷的。这主要表现在对空间的利用上。每个文件的最后一簇都有可能有未被完全利用的空间(称为尾簇空间)。一般来说,当文件个数比较多时,平均每个文件要浪费半个簇的空间。

12、图 6好了,我们言归正传,为了实现文件的链式存储,硬盘上必须准确地记录哪些簇已经被文件占用,还必须为每个已经占用的簇指明存储后继内容的下一个簇的簇号,对一个文件的最后一簇,则要指明本簇无后继簇。这些都是由 FAT 表来保存的,表中有很多表项,每项记录一个簇的信息。由于 FAT 对于文件管理的重要性,所以 FAT 有一个备份,即在原 FAT 的后面再建一个同样的FAT。初形成的 FAT 中所有项都标明为“未占用“,但如果磁盘有局部损坏,那么格式化程序会检测出损坏的簇,在相应的项中标为“坏簇“,以后存文件时就不会再使用这个簇了。FAT 的项数与硬盘上的总簇数相当,每一项占用的字节数也要与总簇数相适

13、应,因为其中需要存放簇号。FAT 的格式有多种,最为常见和为读者所熟悉的是 FAT16 和 FAT32,其中 FAT16 是指文件分配表使用 16 位数字,由于 16 位分配表最多能管理 65536(即 2 的 16 次方)个簇,也就是所规定的一个硬盘分区。由于每个簇的存储空间最大只有 32KB,所以在使用 FAT16 管理硬盘时,每个分区的最大存储容量只有(6553632 KB)即 2048MB,也就是我们常说的 2G。现在的硬盘容量是越来越大,由于FAT16 对硬盘分区的容量限制,所以当硬盘容量超过 2G 之后,用户只能将硬盘划分成多个 2G的分区后才能正常使用,为此微软公司从 Windo

14、ws 95 OSR2 版本开始使用 FAT32 标准,即使用32 位的文件分配表来管理硬盘文件,这样系统就能为文件分配多达 4294967296(即 2 的 32 次方)个簇,所以在簇同样为 32KB 时每个分区容量最大可达 65G 以上。此外使用 FAT32 管理硬盘时,每个逻辑盘中的簇长度也比使用 FAT16 标准管理的同等容量逻辑盘小很多。由于文件存储在硬盘上占用的磁盘空间以簇为最小单位,所以某一文件即使只有几十个字节也必须占用整个簇,因此逻辑盘的簇单位容量越小越能合理利用存储空间。所以 FAT32 更适于大硬盘。(4)DIR 区DIR(Directory)是根目录区,紧接着第二 FAT 表(即备份的 FAT 表)之后,记录着根目录下每个文件(目录)的起始单元,文件的属性等。定位文件位置时,操作系统根据 DIR 中的起始单元,结合 FAT 表就可以知道文件在硬盘中的具体位置和大小了。(5)数据(DATA)区数据区是真正意义上的数据存储的地方,位于 DIR 区之后,占据硬盘上的大部分数据空间。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育教学资料库 > 精品笔记

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。