winhex使用教程手册 winhex使用教程( 二 )


原来磁盘签名
修改后磁盘签名 。13 , 36是高位 。再一次删除磁盘签名 , 另外一台计算机没有给该硬盘写入磁盘签名 , 就会提示没有初始化 。
分区表的作用:用来管理硬盘的分区的 , 如果分区表被清除或者破坏 , 则硬盘的分区就会丢失 。
结束标志:在执行MBR的引导程序时 , 会验证MBR扇区最后两个字节是否为"55 AA" , 如果 是 , 正常执行 , 否则 , 报错 。
如果一块MBR结构完好并且有分区的硬盘 , 其结束标志"55aa"被破坏后 , 该硬盘的分区也将无法读取 , 硬盘会成为“没有初始化”状态 。
主磁盘分区结构分析:
结束标志前64字节中 , 以16字节为一个分区表项来描述一个分区的结构
(80)(02 03 00)(07)(A7 20 07)(80 00 00 00)(00 E0 01 00)
(80):表示C盘为活动分区(可引导的) 。即系统会从C盘活动 , 只能是00H和80H , 
(02 03 00):表示C盘的起始扇区为(0柱面 03扇区 02磁头) , 注意是反过来看 。
(07):表示C盘的文件系统为NTFS 。
(A7 20 07):表示C盘的结束扇区为(柱面:07=(00000111)2=(4+2+1)10 扇区:20=(00100000)2=(32)10 磁头:A7=(1010 0111)2=(128+32+7)10) , 注意是反过来看 。注:有1的地方相加 。
(80 00 00 00):反向(00 00 00 80)16=(128)10表示C盘前面已有128个扇区 , 这128个扇区为系统隐藏扇区.大于1字节的数值被以低字节在前的存储格式顺序保存下来 , 按照习惯的高位在前的方式表示为(00 00 00 80)
(00 E0 01 00):反向(00 01 E0 00)16=
07:表示NTFS .05:表示EXTENDED(扩展分区) , 0B:表示FAT32格式
一个字节8位表示 。
128(第一分区开始扇区数)+122880(第一分区的总扇区)=123880(第二分区的开始扇区号)
123008是第二个分区扇区开始 , 
点击扇区输入“123008” , 到第二个扇区 , 
扩展分区的结构分析
EBR中分区表中第一项描述第一个逻辑驱动器 , 第二项指向下一个逻辑驱动器的EBR 。如果不存在下一个驱动器 , 第二项就不需要使用 。
首先查看0扇区分区表项 , 第一个分区表:80表示活动区 , 07表示NTFS 。第二个分区表0表示非活动区 , 0F/05表示扩展分区.
表示下一个起始扇区位置 。
查找“209,719,296”扇区 , 查看第一分区表项是用来管理第一个逻辑驱动器的 , 开始于2048号扇区 , 这个值就不是绝对值了 , 而是个相对值 , 也就是说这值EBR1开始扇区209,719,296作为起始扇区来定位 。
第二分区表 , 分区类型为05H , 为什么在扩展分区中还有扩展分区?因为扩展分区是一种链式结构来管理的 。EBR扇区中第一个分区表项总是描述当前的逻辑驱动器 , 第二个分区表项则链接到下一个EBR扇区 , 583,012,352也是相对值 。也就是说这值EBR1开始扇区209,719,296作为起始扇区来定位 。583,012,352+209,719,296=792731648下一个逻辑驱动器开始扇区
查找”792731648“扇区 , 第一分区表2048是相对值 , 是以MBR2"792731648"作为起始扇区来定位 。第二分区表”1,163,927,552“相对值 , 是以EBR1”209,719,296“所有扇区为起始点来定位的 , 而不是EBR2 , 这一点很重要 , 一定不要搞错 。1,163,927,552+209,719,296=1373646848
查找”1373646848“扇区 , 发现只能第一个分区表中有数据 , 第二分区表中没有数据 , 这说明是主扩展分区中的最后 一个EBR扇区 , 因为最后一个 , 所有 就没有下一个扩展分区了 , 第二个分区表自然就不再使用了 。

推荐阅读