了解硬盘分区

Author: 蔡宇镝 Date: 2001年 28期

?牐犇阈侣蚶吹挠才淌遣荒苤苯邮褂玫模匦攵运蟹智⒔懈袷交牟拍艽⒋媸荨?
  ?牐犛才谭智遣僮飨低嘲沧肮讨芯L傅降幕疤狻6杂谝恍┘虻サ挠τ茫才谭智⒉怀晌恢终习杂谝恍└丛拥挠τ茫筒荒懿簧钊肜斫庥才谭智频哪承┫附凇?
  ?牐犛才痰谋览>;嵊黾乇鹗遣《舅僚暗氖贝赜谝挤智幕指从氡阜莸募记桑阋欢ㄒ莆铡?
  ?牐犜谑褂玫缒允保阃崾褂眉父霾僮飨低场H绾卧谟才讨邪沧岸喔霾僮飨低常?
  ?牐犎绻阈枰私庹夥矫娴闹痘蚴且饩錾鲜鑫侍猓馄诘摹坝才谭智弊ㄌ饣岣嫠吣愦鸢福?
  ?牐犛才淌窍衷诩扑慊献畛S玫拇娲⑵髦弧N颐嵌贾溃扑慊陨衿妫且蛭哂懈咚俜治龃?理数据的能力。而这些数据都以文件的形式存储在硬盘里。不过,计算机可不像人那么聪明。在读取相应的文件时,你必须要给出相应的规则。这就是分区概念。分区从实质上说就是对硬盘的一种格式化。当我们创建分区时,就已经设置好了硬盘的各项物理参数,指定了硬盘主引导记录(即Master Boot Record,一般简称为MBR)和引导记录备份的存放位置。而对于文件系统以及其他操作系统管理硬盘所需要的信息则是通过以后的高级格式化,即Format命令来实现。
  #1    面、磁道和扇区
  ?牐犛才谭智螅岜换治妫⊿ide)、磁道(Track)和扇区(Sector)。需要注意的是,这些只是个虚拟的概念,并不是真正在硬盘上划轨道。先从面说起,硬盘一般是由一片或几片圆形薄膜叠加而成。我们所说,每个圆形薄膜都有两个“面”,这两个面都是用来存储数据的。按照面的多少,依次称为0面、1面、2面……由于每个面都专有一个读写磁头,也常用0头(head)、1头……称之。按照硬盘容量和规格的不同,硬盘面数(或头数)也不一定相同,少的只有2面,多的可达数十面。各面上磁道号相同的磁道合起来,称为一个柱面(Cylinder)(如图1)。(^28060101a^)
  ?牐犐厦嫖颐翘岬搅舜诺赖母拍睢D敲淳烤购挝诺滥兀坑捎诖排淌切模蛄慈氲氖菔桥帕性谝桓鲈仓苌系摹N颐浅普庋脑仓芪桓龃诺馈#ㄈ缤?2)如果读写磁头沿着圆形薄膜的半径方向移动一段距离,以后写入的数据又排列在另外一个磁道上。根据硬盘规格的不同,磁道数可以从几百到数千不等;一个磁道上可以容纳数KB的数据,而主机读写时往往并不需要一次读写那么多,于是,磁道又被划分成若干段,每段称为一个扇区。一个扇区一般存放512字节的数据。扇区也需要编号,同一磁道中的扇区,分别称为1扇区,2扇区……
  ?牐牸扑慊杂才痰亩列矗τ谛?率的考虑,是以扇区为基本单位的。即使计算机只需要硬盘上存储的某个字节,也必须一次把这个字节所在的扇区中的512字节全部读入内存,再使用所需的那个字节。不过,在上文中我们也提到,硬盘上面、磁道、扇区的划分表面上是看不到任何痕迹的,虽然磁头可以根据某个磁道的应有半径来对准这个磁道,但怎样才能在首尾相连的一圈扇区中找出所需要的某一扇区呢?原来,每个扇区并不仅仅由512个字节组成的,在这些由计算机存取的数据的前、后两端,都另有一些特定的数据,这些数据构成了扇区的界限标志,标志中含有扇区的编号和其他信息。计算机就凭借着这些标志来识别扇区。(^28060101b^)
  #1    硬盘的数据结构
  ?牐犜谏衔闹校颐翘噶耸菰谟才讨械拇娲⒌囊话阍怼N四芨钊氲亓私庥才蹋颐腔贡匦攵杂才痰氖萁峁褂懈黾虻サ牧私狻S才躺系氖莅凑掌洳煌奶氐愫妥饔么笾驴煞治?5部分:MBR区、DBR区、FAT区、DIR区和DATA区。我们来分别介绍一下:
  #2    1.MBR区
  ?牐燤BR(Main Boot Record 主引导记录区)位于整个硬盘的0磁道0柱面1扇区。不过,在总共512字节的主引导扇区中,MBR只占用了其中的446个字节,另外的64个字节交给了DPT(Disk Partition Table硬盘分区表)(见表),最后两个字节“55,AA”是分区的结束标志。这个整体构成了硬盘的主引导扇区。(^28060101c^)
  ?牐犞饕技锹贾邪擞才痰囊幌盗胁问鸵欢我汲绦颉F渲械挠才桃汲绦虻闹饕饔檬羌觳榉智硎欠裾凡⑶以谙低秤布瓿勺约煲院笠季哂屑せ畋曛镜姆智系牟僮飨低常⒔刂迫ń桓舳绦颉?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,分区结束的扇区号为63、分区结束的柱面号为764;“3F 00 00 00”表示首扇区的相对扇区号为63;“7E 86 BB 00”表示总扇区数为12289622。
  #2    2.DBR区
  ?牐燚BR(Dos Boot Record)是操作系统引导记录区的意思。它通常位于硬盘的0磁道1柱面1扇区,是操作系统可以直接访问的第一个扇区,它包括一个引导程序和一个被称为BPB(Bios Parameter Block)的本分区参数记录表。引导程序的主要任务是当MBR将系统控制权交给它时,判断本分区跟目录前两个文件是不是操作系统的引导文件(以DOS为例,即是Io.sys和Msdos.sys)。如果确定存在,就把它读入内存,并把控制权 交给该文件。BPB参数块记录着本分区的起始扇区、结束扇区、文件存储格式、硬盘介质描述符、根目录大小、FAT个数,分配单元的大小等重要参数。DBR是由高级格式化程序(即Format.com等程序)所产生的。
  #2    3.FAT区
  ?牐犜贒BR之后的是我们比较熟悉的FAT(File Allocation Table文件分配表)区。在解释文件分配表的概念之前,我们先来谈谈簇(Cluster)的概念。文件占用磁盘空间时,基本单位不是字节而是簇。一般情况下,软盘每簇是1个扇区,硬盘每簇的扇区数与硬盘的总容量大小有关,可能是4、8、16、32、64……
  ?牐犕桓鑫募氖莶⒉灰欢ㄍ暾卮娣旁诖排痰囊桓隽那蚰冢岱殖扇舾啥危褚惶趿醋右谎娣拧U庵执娲⒎绞匠莆募牧词酱娲ⅰS捎谟才躺媳4孀哦斡攵沃涞牧有畔ⅲ?即FAT),操作系统在读取文件时,总是能够准确地找到各段的位置并正确读出。
  ?牐犖耸迪治募牧词酱娲ⅲ才躺媳匦胱既返丶锹寄男┐匾丫晃募加茫贡匦胛扛鲆丫加玫拇刂该鞔娲⒑蠹棠谌莸南乱桓龃氐拇睾拧6砸桓鑫募淖詈笠淮兀蛞该鞅敬匚藓蠹檀亍U庑┒际怯蒄AT表来保存的,表中有很多表项,每项记录一个簇的信息。由于FAT对于文件管理的重要性,所以FAT有一个备份,即在原FAT的后面再建一个同样的FAT。初形成的FAT中所有项都标明为“未占用”,但如果磁盘有局部损坏,那么格式化程序会检测出损坏的簇,在相应的项中标为“坏簇”,以后存文件时就不会再使用这个簇了。FAT的项数与硬盘上的总簇数相当,每一项占用的字节数也要与总簇数相适应,因为其中需要存放簇号。FAT的格式有多种,最为常见的是FAT16和FAT32。
  #2    4.DIR区
  ?牐燚IR(Directory)是根目录区,紧接着第二FAT表(即备份的FAT表)之后,记录着根目录下每个文件(目录)的起始单元,文件的属性等。定位文件位置时,操作系统根据DIR中的起始单元,结合FAT表就可以知道文件在硬盘中的具体位置和大小了。
  #2    5.数据(DATA)区
  ?牐犑萸钦嬲庖迳系氖荽娲⒌牡胤剑挥贒IR区之后,占据硬盘上的大部分数据空间。