硬盘知识笔记整理

一、 面,磁道和扇区。

注:此文章是我摘抄的笔记,并不是我自己写的,但又不属于转载和翻译,故以原创发表,惭愧。

       新买来的硬盘是不能直接使用的,必须对它进行分区并进行格式化的才能储存数据。分区从实质上说就是对硬盘的一种格式化。当我们创建分区时,就已经设置好了硬盘的各项物理参数,指定了硬盘主引导记录(即 Master Boot Record,一般简称为 MBR)和引导记录备份的存放位置。

       硬盘分区后,将会被划分为面(Side)、磁道(Track)和扇区(Sector)。(这都只是虚拟的概念)硬盘一般是由一片或几片圆形薄膜叠加而成。每个圆形薄膜都有两个“面”,这两个面都是用来存储数据的。按照面的多少,依次称为 0 面、1 面、2 面……由于每个面都专有一个读写磁头,也常用 0 头(head)、1 头……称之。硬盘面数少的只有 2 面,多的可达数十面。各面上磁道号相同的磁道合起来,称为一个柱面(Cylinder)。

       由于磁盘是旋转的,则连续写入的数据是排列在一个圆周上的。我们称这样的圆周为一个磁道。根据硬盘规格的不同,磁道数可以从几百到数千不等。一个磁道上可以容纳数 KB 的数据,而主机读写时往往并不需要一次读写那么多,于是,磁道又被划分成若干段,每段称为一个扇区。一个扇区一般存放 512 字节的数据。扇区也需要编号,同一磁道中的扇区,分别称为 1扇区,2 扇区……

       计算机对硬盘的读写,处于效率的考虑,是以扇区为基本单位的。即使计算机只需要硬盘上存储的某个字节,也必须一次把这个字节所在的扇区中的 512 字节全部读入内存,再使用所需的那个字节。

二、怎样才能在首尾相连的一圈扇区中找出所需要的某一扇区呢?

       每个扇区并不仅仅由 512 个字节组成的,在这些由计算机存取的数据的前、后两端,都另有一些特定的数据,这些数据构成了扇区的界限标志,标志中含有扇区的编号和其他信息。计算机就凭借着这些标志来识别扇区。

三、硬盘上的数据按照其不同的特点和作用大致可分为 5 部分:MBR 区、DBR 区、FAT区、DIR 区和 DATA 区。

       MBR 区:MBR(Main Boot Record 主引导记录区)位于整个硬盘的 0 磁道 0 柱面1 扇区。不过,在总共 512 字节的主引导扇区中,MBR 只占用了其中的 446 个字节,另外的 64 个字节交给了 DPT(Disk Partition Table 硬盘分区表),最后两个字节“55,AA”是分区的结束标志。这个整体构成了硬盘的主引导扇区。

       主引导记录中包含了硬盘的一系列参数和一段引导程序。其中的硬盘引导程序的主要作用是检查分区表是否正确并且在系统硬件完成自检以后引导具有激活标志的分区上的操作系统,并将控制权交给启动程序。MBR 是由分区程序(如 Fdisk.exe)所产生的,它不依赖任何操作系统,而且硬盘引导程序也是可以改变的,从而实现多系统共存。

       例: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 FC”表示分区结束的磁头号为 254(FE的10进制),分区结束的扇区号为 63(BF的10进制)、分区结束的柱面号为 764(FC的10进制);(这里的分区结束扇区号和分区结束柱面号我看不懂为什么是这样,用颜色区分开来,)“3F 00 00 00”表示首扇区的相对扇区号为 63;“7E 86 BB 00”表示总扇区数为12289622。(小端存储,00 BB 86 7E的十进制是12289622)

       DBR 区:DBR(Dos Boot Record)是操作系统引导记录区的意思。它通常位于硬盘的 0 磁道 1 柱面 1 扇区,是操作系统可以直接访问的第一个扇区,它包括一个引导程序和一个被称为 BPB(Bios Parameter Block)的本分区参数记录表。引导程序的主要任务是当 MBR 将系统控制权交给它时,判断本分区跟目录前两个文件是不是操作系统的引导文件(以 DOS 为例,即是 Io.sys 和 Msdos.sys)。如果确定存在,就把它读入内存,并把控制权 交给该文件。BPB 参数块记录着本分区的起始扇区、结束扇区、文件存储格式、硬盘介质描述符、根目录大小、FAT 个数,分配单元的大小等重要参数。DBR是由高级格式化程序(即 Format.com 等程序)所产生的。

       FAT 区:在 DBR 之后的是我们比较熟悉的 FAT(File Allocation Table 文件分配表)区。在解释文件分配表的概念之前,我们先来谈谈簇(Cluster)的概念。文件占用磁盘空间时,基本单位不是字节而是簇。一般情况下,软盘每簇是 1 个扇区,硬盘每簇的扇区数与硬盘的总容量大小有关,可能是 4、8、16、32、64……同一个文件的数据并不一定完整地存放在磁盘的一个连续的区域内,而往往会分成若干段,像一条链子一样存放。这种存储方式称为文件的链式存储。由于硬盘上保存着段与段之间的连接信息(即FAT),操作系统在读取文件时,总是能够准确地找到各段的位置并正确读出。为了实现文件的链式存储,硬盘上必须准确地记录哪些簇已经被文件占用,还必须为每个已经占用的簇指明存储后继内容的下一个簇的簇号。对一个文件的最后一簇,则要指明本簇无后继簇。这些都是由 FAT 表来保存的,表中有很多表项,每项记录一个簇的信息。由于 FAT 对于文件管理的重要性,所以 FAT 有一个备份,即在原 FAT 的后面再建一个同样的 FAT。初形成的 FAT 中所有项都标明为“未占用”,但如果磁盘有局部损坏,那么格式化程序会检测出损坏的簇,在相应的项中标为“坏簇”,以后存文件时就不会再使用这个簇了。FAT 的项数与硬盘上的总簇数相当,每一项占用的字节数也要与总簇数相适应,因为其中需要存放簇号。FAT 的格式有多种,最为常见的是 FAT16 和 FAT32。

       DIR 区:DIR(Directory)是根目录区,紧接着第二 FAT 表(即备份的 FAT 表)之后,记录着根目录下每个文件(目录)的起始单元,文件的属性等。定位文件位置时,操作系统根据 DIR 中的起始单元,结合 FAT 表就可以知道文件在硬盘中的具体位置和大小了。

       数据(DATA)区:数据区是真正意义上的数据存储的地方,位于 DIR 区之后,占据硬盘上的大部分数据空间。

       以上的笔记都是一些硬盘的概念,最近在学习操作系统,需要了解一些硬盘方面的知识,于是做了些笔记,我不喜欢将操作系统的所有知识全都写在一篇文章中,这样要写的太多,看起来也烦,所以那些计算机上电自检等一系列的东西我不准备写在这里。
       这篇文章知识硬盘知识的一小部分,关于硬盘的知识还有很多很多,比如硬盘的物理结构,磁盘阵列等。知识是无穷无尽的,在追求知识的路上,我愿做一个朝圣者。路漫漫其修远兮,吾将上下而求索!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值