主分区表数据及分析
在英文字典中,对主引导区的定义如下:
Master Boot Record:The Master Boot Record is located at the physical beginning of a hard disk, editable using the Disk Editor. It consists of a master bootstrap loader code (446 bytes) and four subsequent, identically structured partition records. Finally, the hexadecimal signature 55AA completes a valid Master Boot Record.
硬盘的主引导记录在硬盘的0磁头0柱面1扇区。主引导记录由三部分组成:
主引导程序;
四个分区表;
主引导记录有效标志字。
表1 主引导记录结构
说明:
分区表自偏移1BEH处开始,分区表共64个字节,表中可填入四个分区信息,每十六个字节为一个分区说明项,这16个字节含义详见表2。
必须注意:扇区号的高二位占用柱面号所在字节的最高二位,即柱面号为10位,扇区号6位。
表2 分区结构信息
重要公式:02H为X,03H为Y。柱面=(X>>6)*16^2+Y;
以我的硬盘为例:有九个可用分区,二个不可用分区;两个Primary NTFS分区,第二个为active;七个Extened 分区,第五个为NTFS其他为FAT32.
主分区表数据:位置cylinder0, head 0,sector1
主分区表分析:
Master bootstrap loader code
0000H -00D9H 33 C0 8E D0 BC 00 7C FB 50 。。。主引导记录代码,表示住分区表
01BEH -01CDH 分区1结构信息
multi(0)disk(0)rdisk(0)partition(0)
知该分区Boot Sector位于:起始磁头为0头,起始柱面为70D,起始扇区为1扇区。
01CEH -01DDH 分区2结构信息
multi(0)disk(0)rdisk(0)partition(1)
活动分区指示符为80H,表示该分区为可自举分区。
系统标志为07表示OS/2 HPFS, Windows NT NTFS, Advanced Unix系统。知该分区Boot Sector位于:起始磁头为0头,起始柱面为304D,起始扇区为1扇区。
01DEH -01EDH 分区3结构信息
Extended partition
系统标志字节为0F,说明是扩展分区Extended partition (using INT 13 extensions)。
从扩展分区说明项知下一个分区表位于:起始磁头为0头,起始柱面为435D,起始扇区为1扇区。
01EEH -01FDH 分区4结构信息
分区说明项数据均为00H没有定义。
01FEH -01FFH 55 AAH 主引导记录有效标志
扩展分区数据及分析
扩展分区一分区表数据:位置cylinder435D, head 0,sector1
扩展分区表分析
01BEH -01CDH 分区1结构信息
multi(0)disk(0)rdisk(0)partition(3)
知该分区位于:起始磁头为1头,起始柱面为435D,起始扇区为1扇区(分区表占用磁头0)。
系统标志字0BH表示 Windows 95+ FAT32
01BEH -01CDH 分区1结构信息
系统标志字节为05H,说明是扩展DOS分区。于是知下一个分区表位于:起始磁头为0头,起始柱面为777D,起始扇区为1扇区。
Partition Table Entry #3 数据均为00H没有定义。
Partition Table Entry #4 数据均为00H没有定义。
其他扩展分区同理。
附录:Fdisk的MBR参数
MBR 系 FDISK.COM(EXE) 一项未公布的开关,隐含于 MS DOS 3.30,延至 MS DOS 8.0(Windows ME)。实践中,有籍以修复主引导信息,重点在主引导程序。
FDISK /MBR 命令流程的分支有二:
读得主引导扇区检验标志(字) AA55h,操作单一,仅向主引导扇区位移 0-1BDH 写入当前系统固有的主引导程序,安全可靠。
难能可贵的是它不触动主引导信息其余模块(分区表、检验标志),以及随后的 DOS 引导信息、文件分配表、根目录,省事许多。检出检验标志非 AA55h,写主引导程序、初始化分区表及登录检验标志,在 MS DOS 7.0 - 8.0 环境中,常规以系统支持的最大容量分配给基本 DOS 分区的方式登录分区表。分区表初始化(可能幸存的分区表被清除)的后果不难想象; 目前硬盘大都设置有其它分区,即使在高版本 DOS 环境中运作,常规建立的分区表每难能符合实际需求,后续工作量也相当可观。
不过,它也不触动位于其后的 DOS 引导信息、文件分配表及根目录,高版本 FDISK /MBR 命令适用于修复仅设基本 DOS 分区的硬盘分区表及检验标志受损,或主引导信息全毁。
可见,在运行 FDISK /MBR 命令之前,需查明检验标志是否 AA55h,酌情处理,切忌盲动。
经由 DOS 软盘引导,认硬盘,检验标志必健在。
另外,在 FDSIK 主菜单中选 4. Display Partition Information,列出分区信息,进一步证实检验标志正常; 若现 No partitition defined,检验标志每变异,而分区表或许尚健在。 |