精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>电脑技术>>○ DOS>>系统资料>>硬盘主引导记录流程(WIN)

主题:硬盘主引导记录流程(WIN)
发信人: jink2000()
整理人: sle(2000-05-31 16:51:11), 站内信件
若有不妥之处,请不吝赐教。:-)

[1]将自身0:7C1B开始1E5个字节传送到0:061B处,然后转移至0:061B继续执行.

[2]判断激活分区的引导标志,若小于0进入[3],等于0继续查找,找了四次都为0进
入ROM-BASIC,大于0显示出错信息"分区表无效"并进入死循环.
[3]继续查找判断引导标志,若其余表项都等于0进入[4],若其余表项有不等于0显
示出错信息"分区表无效"并进入死循环.
[4]判断激活分区的分区标志
 [4.1]激活分区的分区标志为0E
   使用INT 13的41号扩展功能调用
    [4.1.1]成功,则使用INT 13的42号扩展功能调用读激活分区的第一个扇区至
0:7C00
           若读盘出错,磁盘系统复位并重新读盘,读一定次数后若不成功,显示
出错信息"加载操作系统时出错"并进入死循环.
           若读盘成功,比较此扇区最后两字节是否为55AA?
            是,进入[5]
            否,再试一次,若最后两字节是55AA,进入[5],否则显示出错信息"Mi
ssing operating system"并进入死循环.
    [4.1.2]失败,则将激活分区的系统标志置为06,然后同[4.3]

 [4.2]激活分区的分区标志为0C,0B
   使用INT 13的2号功能调用读激活分区的第一个扇区至0:7C00.
     若读盘出错,磁盘系统复位并重新读盘,读一定次数后若不成功,显示出错信
息"加载操作系统时出错"并进入死循环.
     若读盘成功,比较此扇区最后两字节是否为55AA?
       是,进入[5]
       否,进行第二次读盘,读此分区的起始+6扇区至0:7C00,若最后两字节是55
AA,进入[5],否则显示出错信息"Missing operating system"并进入死循环.

 [4.3]激活分区的分区标志为其它
   使用INT 13的2号功能调用读激活分区的第一个扇区至0:7C00.
     若读盘出错,磁盘系统复位并重新读盘,读一定次数后若不成功,显示出错信
息"加载操作系统时出错"并进入死循环.
     若读盘成功,比较此扇区最后两字节是否为55AA?
       是,进入[5]
       否,再试一次,若最后两字节是55AA,进入[5],否则显示出错信息"Missing
 operating system"并进入死循环.
[5]转移至0:7C00继续执行

--
※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 61.130.3.228]

[关闭][返回]