说到数据恢复,我们就不能不提到硬盘的数据结构、文件的存储原理,甚至操作系统的启动流程,这些是你在恢复硬盘数据时不得不利用的基本知识。
硬盘数据结构
新购买来一块硬盘需要将它分区、格式化,然后才能安装操作系统方可以使用。以WinArrayx/Me系列来说,我们一般要将硬盘分成主引导扇区(MBR)、操作系统引导扇区(DBR)、FAT(文件分配表)、DIR(目录区)和Data(数据区)等五部分(其中只有主引导扇区是唯一的,其它的随你的分区数的增加而增加)。
主引导扇区(MBR):
主引导扇区位于整个硬盘的0磁道0柱面1扇区,包括硬盘主引导记录MBR(Main Boot Record)和分区DPT(
Disk Partition Table)。其中主引导记录的作用就是检查分区表是否正确以及确定哪个分区为引导分区,
并在程序结束时把该分区的启动程序(也就是操作系统引导扇区)调入内存加以执行。至于分区表,很多人
都知道,以80H或00H为开始标志,以55AAH为结束标志,共64字节,位于本扇区的末端。值得一提的是,MBR是由分区程序(例如DOS的Fdisk.exe)产生。
操作系统引导扇区
DBR(Dos Boot Record)即操作系统引导扇区,通常位于硬盘的1磁道0柱面1扇区(这是对于DOS来说的,对于那些以多重引导方式启动的系统则位于相应的主分区/扩展分区的第一个扇区),是操作系统可直接访问的第一个扇区,它也包括一个引导程序和一个被称为BPB(BIOS Parameter Block)的本分区参数记录表。其实每个逻辑分区都有一个DBR,其参数视分区的大小、操作系统的类别而有所不同。引导程序的主要任务是判断本分区根目录前两个文件是否为操作系统的引导文件(例如MSDOS或者起源于MSDOS的WinArrayx/Me的IO.SYS和MSDOS.SYS)。如是,就把第一个文件读入内存,并把控制权交予该文件。BPB参数块记录着本分区的起始扇区、结束扇区、文件存储格式、硬盘介质描述符、根目录大小、FAT个数、分配单元(Allocation Unit,以前也称之为簇)的大小等重要参数。DBR由高级格式化程序产生(例如DOS的Format.com)。
文件分配表
FAT(File Allocation Table)即文件分配表,是DOS/WinArrayx系统的文件寻址系统,为了数据安全起见,FAT一般做两个,第二FAT为第一FAT的备份,FAT区紧接在DBR之后,其大小由本分区的大小及文件分配单元的大小决定。关于FAT的格式历来有很多选择,Microsoft的DOS及Windows采用我们所熟悉的FAT12、FAT16和FAT32格式,但除此以外并非没有其它格式的FAT,像Windows NT、OS/2、UNIX/Linux、Novell等都有自己的文件管理方式。
目录区
DIR是Directory即根目录区的简写,DIR紧接在第二FAT表之后,只有FAT还不能定位文件在磁盘中的位置,FAT还必须和DIR配合才能准确定位文件的位置。DIR记录着每个文件(目录)的起始单元(这是重要的)、文件的属性等。定位文件位置时,操作系统根据DIR中的起始单元,结合FAT表就可以知道文件在磁盘的具体位置及大小了。在DIR区之后,才是真正意义上的数据存储区,即DATA区。
数据区
DATA虽然占据了硬盘的绝大部分空间,但没有了前面的各部分,它对于我们来说,也只能是一些枯燥的二进制代码,没有任何意义。在这里有一点要说明的是,我们通常所说的格式化程序(指高级格式化,例如DOS下的Format程序),并没有把DATA区的数据清除,只是重写了FAT表而已,至于分区硬盘,也只是修改了MBR和DBR,绝大部分的DATA区的数据并没有被改变
硬盘分区方式
我们平时说到的分区概念,不外乎三种:主分区、扩展分区和逻辑分区。
主分区是一个比较单纯的分区,通常位于硬盘的前面一块区域中,构成逻辑C磁盘。在主分区中,不允许再建立其它逻辑磁盘。
扩展分区的概念则比较复杂,也是造成分区和逻辑磁盘混淆的主要原因。由于硬盘仅仅为分区表保留了64个字节的存储空间,而每个分区的参数占据16个字节,故主引导扇区中总计可以存储4个分区的数据。操作系统只允许存储4个分区的数据,如果说逻辑磁盘就是分区,则系统多只允许4个逻辑磁盘。对于具体的应用,4个逻辑磁盘往往不能满足实际需求。为了建立更多的逻辑磁盘供操作系统使用,系统引入了扩展分区的概念。
所谓扩展分区,严格地讲它不是一个实际意义的分区,它仅仅是一个指向下一个分区的指针,这种指针结构将形成一个单向链表。这样在主引导扇区中除了主分区外,仅需要存储一个被称为扩展分区的分区数据,通过这个扩展分区的数据可以找到下一个分区(实际上也就是下一个逻辑磁盘)的起始位置,以此起始位置类推可以找到所有的分区。无论系统中建立多少个逻辑磁盘,在主引导扇区中通过一个扩展分区的参数就可以逐个找到每一个逻辑磁盘。具体操作可以参见http://www.cellma.com.cn的田工程师
需要特别注意的是,由于主分区之后的各个分区是通过一种单向链表的结构来实现链接的,因此,若单向链表发生问题,将导致逻辑磁盘的丢失。
数据存储原理
既然要进行数据的恢复,当然数据的存储原理我们不能不提,在这之中,我们还要介绍一下数据的删除和硬盘的格式化相关问题……
文件的读取
操作系统从目录区中读取文件信息(包括文件名、后缀名、文件大小、修改日期和文件在数据区保存的第一个簇的簇号),我们这里假设第一个簇号是0023。
操作系统从0023簇读取相应的数据,然后再找到FAT的0023单元,如果内容是文件结束标志(FF),则表示文件结束,否则内容保存数据的下一个簇的簇号,这样重复下去直到遇到文件结束标志。
文件的写入
当我们要保存文件时,操作系统首先在DIR区中找到空区写入文件名、大小和创建时间等相应信息,然后在Data区找到闲置空间将文件保存,并将Data区的第一个簇写入DIR区,其余的动作和上边的读取动作差不多。
文件的删除
看了前面的文件的读取和写入,你可能没有往下边继续看的信心了,不过放心,WinArrayx的文件删除工作却是很简单的,简单到只在目录区做了一点小改动――将目录区的文件的第一个字符改成了E5就表示将改文件删除了。
分区和格式化的一点小说明
和文件的删除类似,利用Fdisk删除再建立分区和利用Format格式化逻辑磁盘(假设你格式化的时候并没有使用/U这个无条件格式化参数)都没有将数据从DATA区直接删除,前者只是改变了分区表,后者只是修改了FAT表,因此被误删除的分区和误格式化的硬盘完全有可能恢复。
怪老头数据恢复中心是湖南长沙专业数据恢复提供商.数据安全守护者。数据恢复,硬盘数据恢复, 移动硬盘数恢复,U盘数据、固态硬盘数据恢复,服务器数据恢复,手机数据恢复,数据库,开盘数据恢复等。企业拥有专业工程师团队,先进的设备,成功为上万客户找回丢失数据,解决上千疑难杂症,积累了大量成功案例,专业专注,值得信赖!
相关新闻
- 长沙开盘数据恢复中心:数据恢复成功率高吗?哪些故障能做数据恢复?
- 长沙数据库数据恢复中心:数据库数据恢复知识硬盘数据恢复我们应该要避免哪些操作?
- 长沙优盘数据修复中心:硬盘数据恢复这些必要的操作你都了解吗?
- 电脑硬盘数据恢复过程是怎么样的?
- 长沙数据库中勒索病毒恢复中心:硬盘数据恢复的这几种方法,你了解吗?
- 存储数据恢复知识:手机数据恢复包括哪些?
- 服务器数据恢复知识:固态硬盘受损,数据恢复的一个实战过程
- 电脑数据恢复知识:硬盘恢复的方法有哪些?移动硬盘数据如何修复
- 长沙U盘数据恢复中心:提取出去的数据如何进行恢复?
- 移动硬盘数据恢复知识:硬盘文件分配表是什么?数据丢失有哪些原因?
- 一文教你找回误删文件,值得收藏 怪老头数据恢复
- 为什么开机后偶尔找不到硬盘? 硬盘数据恢复 怪老头数据恢复
- 硬盘烧毁后数据的挽救 硬盘数据恢复 怪老头数据恢复中心
- 硬盘分区丢失后应如何处理? 硬盘数据恢复 怪老头数据恢复
- 移动硬盘没有安全退出的后果 移动硬盘数据恢复 怪老头数据恢复
- 让你的硬盘减少产生坏道的九点使用建议 硬盘数据恢复 怪老头数据恢复
- 硬盘不能被识别的常见情况 数据恢复 怪老头硬盘数据恢复
- 各种文件数据恢复的特点 文件数据恢复 怪老头数据恢复
- 用数据时候也需要注意的问题 文件数据恢复 怪老头数据恢复
- 关于Windows分区的一些知识 数据修复 怪老头数据恢复