windows xp和windows 7双系统启动原理

了解一下windows xp和windows 7的启动原理有何不同,双系统又是如何启动的:

在windows 7+xp双系统中,windows 7使用bootmgr接管系统启动模式。电脑自检完成后,开始查找活动主分区(一般情况是C:)并加载它。

接着会继续读取活动分区下的启动配置文件(即C:\BOOT\BCD)和c:\boot.ini,根据BCD和Boot.ini存储的启动信息列出 启动菜单(也就是双系统启动菜单)。对于双系统用户通常列出“Microsoft Windows 7”和“旧版本的Windows”。

如果选择前者,Bootmgr将控制权交给windows 7系统目录下的Winload.exe (在\windows\systems下)然后开始启动windows 7。选择后者,Bootmgr将控制权交给NTLDR,接着开始读取c:\boot.ini并列出其中配置的启动菜单。

启动故障就主要出现在Bootmgr(如该文件丢失)、BCD(启动信息配置错误)、Winload.exe(该文件丢失导致Windows 7无法启动)、Ntldr(该文件丢失导致XP无法启动)这些文件上。

================另一篇介绍=============================

硬盘从00 00位置开始的512字节的MultiBootRecord(MBR,中文意为:主引导区记录)到FF FF.记录4个主分区信息. 在总共512字节的主引导扇区中,MBR的boot code占用其中的前446个字节,随后的64个字节为DPT(Disk Partition Table,硬盘分区表)。自检后,DPT把系统控制权交给硬盘第一个分区的PBR(Partition Boot Record),XP的PBR会去找这个分区的ntldr、ntdetect.com之后是boot.ini,选择启动的系统后load注册表,交控制权 给ntoskrnl,然后加载驱动,系统配置等等.

Windows 7的引导过程有所不同. 首先PBR不同。Windows 7的PBR不再找ntldr,而是找bootmgr,这个文件也是保存在硬盘第一个分区的根目录下.之后,bootmgr去找同 路径下的\boot\BCD. BCD这个文件实际是一个注册表文件,里面的数据保存了系统的引导信息,如果是多系统引导,会提供引导的界面内容. 如果是单Windows 7系统,控制权会交给winload.exe,之后再去找ntoskrnl.exe.

由此我们可以知道,在安装系统的过程中,安装程序一定会去更新PBR,以便使系统能够进入正确的引导过程.如果在装好Windows 7的机器上安装了 XP,PBR会被修改为适用于XP的,从而导致系统无法进入Windows 7的引导过程,无法进入Windows 7.

总结:1、首先要确定PBR是xp的还是Windows 7的。
2、如果PBR是xp的,活动分区必须要有:ntldr、ntdetect.com和boot.ini才可完成启动。
3、如果PBR是Windows 7的,活动分区必须要有:bootmgr和boot\bcd才可完成启动。
4、修改PBR的方法:
在命令提示符中输入:bootsect /nt60 sys
(nt60是添加启动控制台,即修改PBR为Windows 7的;若要删除启动控制台,命令为:bootsect /nt52 sys,即修改PBR为xp的。)
备注:bootsect.exe在Windows 7安装光盘的boot文件夹下


引用通告: 查看所有引用 | 我要引用此文章
Tags: WINDOWS xp和windows 7双系统启动原理
收藏到网摘:
评论: 0 | 引用: 0 | 查看次数: -
发表评论
昵 称:
密 码: 游客发言不需要密码.
内 容:
验证码: 验证码
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.