天下网吧 >> 网吧天地 >> 网吧技术 >> 网吧软件 >> 正文

系统引导过程及硬盘分区结构论述

2009-5-25不详佚名

bsp;  DWORD Relative:在线性寻址方式下的分区相对扇区地址(对于基本分区即为绝对地址);

    DWORD Sectors:分区大小(总扇区数).

    在DOS或Windows系统下,基本分区必须以柱面为单位划分(Sectors*Heads个扇区),如对于CHS为764/256/63的硬盘,分区的最小尺寸为256*63*512/1048576=7.875MB.

    由于硬盘的第一个扇区已经被引导扇区占用,所以一般来说,硬盘的第一个磁道(0头0道)的其余62个扇区是不会被分区占用的.某些分区软件甚至将第一个柱面全部空出来. 扩展分区结构如图:
    

  硬盘分区表(DPT)
    

 

 


    逻辑驱动器
    扩展分区的信息位于以上所示的硬盘分区表(DPT)中, 而逻辑驱动器的信息则位于扩展分区的起始扇区, 即该分区的起始地址(柱面/扇区/磁道)所对应的扇区,  该扇区中的信息与硬盘主引导扇区的区别是不包含MBR,而16字节的分区信息则表示的是逻辑驱动器的起始和结束地址等.

    所以, 在磁盘仅含有一个主分区, 一个扩展分区(包含多个逻辑驱动器)的情况下,即使由于病毒或其他原因导致硬盘主引导扇区的数据丢失(包括DPT),也可以通过逻辑驱动器的数据来恢复整个硬盘.


    绝对扇区=磁头号*每道扇区数[3F]+ 柱面号*最大磁头数[一般是FF]*每道扇区数 + 扇区号  - 1

    最大磁头数=(((总扇区数 + 起始逻辑扇 - 扇区止) / 每道扇区数[3F])-磁头号止) / 柱面号止

    或 最大磁头数=(((起始逻辑扇 +1 - 扇区起) / 每道扇区数[3F])-磁头号起) / 柱面号起

    例如:  以下是一个硬盘的分区情况.


    如果主分区表损坏,  则可以通过手工查找扩展分区表中所包含的逻辑驱动器数据,  在本例中就是D盘所对应的数据,  然后将其起始扇(逻辑)减去63就是所对应的扩展分区的起始扇(逻辑),  将其起始地址(磁头/扇区/柱面)改为0柱面就是扩展分区的起始地址.  然后通过扩展分区就可以得到主分区C的信息,  然后就可以使用FDISK/MBR命令和手工填写分区表恢复整个硬盘.

    该例所对应的分区表数据:


    算法过程: (以第一个分区为例)

    EF  7F 14 对应的磁头号EFH = 239D, 柱面号7F高二位与14H=114H = 276D,   扇区号7F低六位= 3FH = 63D

    起始逻辑扇= 3F  00  00  00 = 3FH = 63D

    分区总扇区数= 11  E8  3F  00 = 3FE811H = 4188177D

    最大磁头数= ((((4188177+63)-63)/63)-239)/276=240D = 0F0H

    01  01  00对应的逻辑扇 = 1*63 + 240*0*63 + 1 - 1 =  63D

    EF  7F 14 对应的逻辑扇 = 239*63 + 240*276*63 + 63 - 1 = 4188239D

    扩展分区表数据:
                                                        00  01
    41  15  07  EF  BF  2A  8F  E8  3F  00  21  23  40  00

    注意:  逻辑起始扇区和总共分区数是左边为低位,  如该例的扩展分区的起始地址为8F E8 3F 00转换十进制时要先变为00 3F E8 8F,  总共占用分区数21 23 40 00要先变为00 40 23 21,  同理当手工填写该值时也要进行高低位转换.

    扩展逻辑盘寻找说明:

    1 在主分区的分区表中,寻找扩展分区的物理地址

    2 在扩展分区地址所指扇区尾部,查找扩展分区表(扩展卷),结构与主分区表相同

    3 扩展分区表的物理地址中,将磁头数加1,其余不变,则为第一个逻辑驱动器(如D盘)的BOOT扇区物理地址

    4 根据扩展驱动器的系统分类(FAT16/FAT32,以2048MB为界限),查看FAT表与ROOT区

    5 如果还有E、F……等盘,则继续寻找符合要求的BOOT扇区,BOOT扇区规定在每个磁头的1号扇

本文来源:不详 作者:佚名

声明
声明:本站所发表的文章、评论及图片仅代表作者本人观点,与本站立场无关。文章是出于传递更多信息之目的。若有来源标注错误或侵犯了您的合法权益,请作者持权属证明与本网联系,我们将及时更正、删除,谢谢。 Email:support@txwb.com,系统开号,技术支持,服务联系微信:_WX_1_本站所有有注明来源为天下网吧或天下网吧论坛的原创作品,各位转载时请注明来源链接!
天下网吧·网吧天下
  • 本周热门
  • 本月热门
  • 阅读排行