- 3
- 0
- 约9.75万字
- 约 21页
- 2016-11-28 发布于河南
- 举报
解读 bootsect.dos 文件
解读 bootsect.dos 文件
解读 bootsect.dos 文件
bootsect.dos是在装有WIN98的机器上安装双操作系统(WIN2000或WINXP)时,由安装程序生成,
实际上是WIN98引导程序的前半部分,后半部分在分区的第三扇区.(在我电脑磁盘中是这样的)
以下是我对bootsect.dos文件的分析,由于本人水平有限,难免有不当之处,望大家不吝指出!
联系方式:
E-mail:yth9@163.com
网易博客用户名:yth9
;
;磁盘参数
;
7C00 EB 58 2b JMP 7C5A
7C02 90 空操作 1b 空操作
7C03 4D 53 57 49 4E 34 2E 31 8b 卷的OEM名称(MSWIN4.1)
;BPB中每个字段的字节偏移、长度和含义
7C0B 00 02 2B 每个扇区多少字节(512)
7C0D 10 1B 每个簇有多少个扇区(16)
7C0E 26 00 2B 保留扇区数目,指的是第一个FAT表开始之前的扇区数,包括DBR本身(38)
7C10 02 1B 这个卷有多少个FAT表(2)
7C11 00 00 2B 这个卷有多少个根入口点 一般取512,FAT32时置零(表示根目录项数无限制)
7C13 00 00 2B 这个卷一共有多少扇区,对大于65535个扇区的卷,这个字段为0
7C15 F8 1B 这个卷的介质类型 对固定硬盘取F8
7C16 00 00 2B 每个FAT表占多少个扇区 用于FAT16等,FAT32时置零
7C18 3F 00 2B 每个磁道有多少个扇区(63)
7C1A FF 00 2B 有多少个磁头(255)
7C1C 3F 00 00 00 4B 有多少个隐藏扇区 即分区起始扇区之前的绝对物理扇区数(63)
7C20 90 24 01 01 4B 一个卷超过65535个扇区,会使用这个字段来说明总扇区数(1685,2112)
7C24 1d 20 00 00 4b 每个文件分配表的扇区(FAT32)。扩展基本输入输出系统参数块从这里开始。 (541)
7C28 00 00 2B 最左端二进制位为零则所有FAT表是同步的,为1则有损坏的FAT表。低4位表示在用的FAT表编号,从零开始计。
7C2A 00 00 2B 文件系统格式版本号。
7C2C 02 00 00 00 4B 根目录起始簇之簇号 (2)
7C30 01 00 2B 存放文件系统格式信息的扇区号
7C32 06 00 2B 引导扇区备份所在的扇区号
7C34 12B 保留字段
;BPB自偏移40H开始适用FAT32格式的字段释义
7C40 80 1B 驱动器编号 软盘为00H,硬盘为80H
7C41 00 1B 当前磁头 用于中断13呼叫
7C42 29 1B 磁盘扩展引导区标签,windows要求这个标签为0X28或者0X29
7C43 01 0D 48 15 4B 磁盘卷ID(357043457)
7C47-7C51 11B 磁盘卷标(NO NAME )
7C52-7C59 8B 磁盘上的文件系统类型
;
7C5A-7DFD 420B 引导程序
7CFE-7DFF 2B DBR结束签名 55AA
;
7C5A FA CLI 中断标志清零
7C5B 33C9 XOR CX,CX
7C5D 8CD1 MOV SS,CX
7C5F BCF87B MOV SP,7BF8
7C62 BEC1 MOV ES,CX
7C64 BD7800 MOV BP,0078 ;get address of disk table
7C67 C57600 LDS SI,[BP+00]
7C6A 1E PUSH DS
7C6B 56 PUSH SI
7C6C 16 PUSH SS
7C6D 55 PUSH BP
7C6E BF2205 MOV DI,0522
7C71 897E00 MOV [BP+00],DI
7C74 894E02 MOV [BP+02],CX
7C77 B10B MOV CL,0B
7C79 FC CLD
7C7A F3A4 REPZ MOVSB ;把si开始的11个字节复制到di开始的内存中
7C7C 8ED9 MOV DS,CX
7C7E BD007C MOV BP,7C00
原创力文档

文档评论(0)