Bootmgr

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Bootmgr
Bootmgr
bootmgr
bootmgr:启动管理器,BootMgr是Boot Manager的缩写,在微软的Windows Vista,Windows Server 2008和Windows 7操作系统中,其启动
过程与从前的以NT为内核的windows版本略有不同。

bootmgr就相当于win nt/win2000/WinXP时代的NTLDR。

电脑加电后,⾸先是启动BIOS程序,BIOS⾃检完毕后,找到硬盘上的主引导记录MBR,MBR读取DPT(分区表),从中找出活动的主分区,然后
读取活动主分区的PBR(分区引导记录,也叫pbr,究竟该叫什么,⽹络
上争论未休,我们姑且叫它pbr吧),PBR再搜寻分区内的启动管理器⽂件BOOTMGR,在BOOTMGR被找到后,控制权就交给了BOOTMGR。

BOOTMGR读取
\boot\bcd⽂件(BCD=Boot Configuration Data ,也就是“启动配置数据”,简单地说,windwows7下的bcd⽂件就相当于xp下的boot.ini⽂件),如
果存在着多个操作系统并且选择操作系统的等待时间不为0的话,这时就
会在显⽰器上显⽰操作系统的选择界⾯。

在我们选择启动WINDOWS7后,BOOTMGR就会去启动盘寻找
WINDOWS\system32\winload.exe,然后通过winload.exe加载windows7内核,从⽽启动整个windows7系统。

可以把
这个过程简单地概括为:BIOS-->MBR-->DPT-->pbr-->
Bootmgr-->bcd-->Winload.exe-->内核加载 -->整个windows7系统可以说,bootmgr就相当于win nt/win2000/WinXP时代的NTLDR。

NTLDR 是win nt/win2000/WinXP中的引导⽂件,是⼀个隐藏的,只读的系统⽂件,
位置在系统盘的根⽬录,它的主要职责是解析Boot.ini⽂件,⽤来装载操作系统。

⼀个值得注意的变化是,Windows 7启动管理器是按空格键⽽不是
按F8功能键调⽤。

F8键依然具有调取⾼级启动选项菜单的功能。

为了保
持⼀个可扩展固件接⼝系统,也为了使版本最⾼的启动管理器负责管理所
有的操作系统,使启动管理器具备向下兼容性、⽽不是向上兼容,Windows 启动管理器对已安装的所有操作系统统⼀列为⼀个可供选择的菜单,在配
置Windows Vista/Server 2008 与 Windows 2000/XP/Server 2003 的多
系统共存时,BOOTMGR 将全⾯负责计算机的启动管理⼯作,NTLDR 将沦为BOOTMGR 的替补。

举个例⼦,假设我们配置了Windows Vista、Windows XP、Windows Server 2008、Windows Server 2003 四个操作系统的共存,BOOTMGR 启动菜单并不会把 Windows XP 与Windows Server 2003 分别列在启动菜单⾥,⽽是将它们统⼀显⽰为“早期版本的Windows”。

启动配置数据(BCD)是⼀种⽤于启动时的配置数据固件独⽴数据库。

它取代了NTLDR中的boot.ini,是由微软的新Windows 启动管理器使⽤。

启动配置数据 (BCD) 存储包含启动配置参数,并在 Microsoft(R) Windows Vista? 和Microsoft(R) Windows Server? 2008 操作系统中控制操作系统的启动⽅式。

这些参数以前位于Boot.ini ⽂件中(在基于BIOS 的操作系统中)或稳定 RAM (NVRAM) 项中(在基于可扩展固件接⼝的操作系统中)。

通过在 BCD 存储中添加、删除、编辑和附加项,可以使⽤Bcdedit.exe 命令⾏⼯具来影响在预操作系统环境中运⾏的 Windows(R) 代码。

Bcdedit.exe位于 Windows Vista 分区的\Windows\System32 ⽬录中。

创建BCD 旨在为描述启动配置数据提供⼀种改进的机制。

随着新固件模型[例如,可扩展固件接⼝(EFI)] 的发展,⽤户需要⼀个可扩展且可互操作的接⼝以提取底层固件。

这⼀全新的设计为Windows Vista 中的多种新功能(例如,启动修复⼯具和多⽤户安装快捷⽅式)提供了⽀持。

微软的新⼀代操作系统Windows 7,然⽽,这个7 并不是代表Windows 7 的核⼼版本已经从Windows Vista 的NT 6 升级⾄NT 7,⽽只是代表Windows 7 是微软正式发⾏的桌⾯ Windows 第七代产品⽽已。

Windows 7 真正的核⼼版本号仅仅是 NT
6.1,Windows 7 与Windows Vista 的关系好⽐是Windows XP(NT 5.1)与Windows 2000(NT 5.0)。

时隔多年,Windows ⼜⼀次与我们玩起了⽂字游戏,以⾄于有⼈将Windows 7 戏称为“NT 6.1 = Windows ⾮常 6+1 =Windows 7”。

为了更为直观地理解Windows 7 = NT 6+1,不妨从Windows 启动管理器的层⾯看待这个问题。

与容易混淆的 Windows 正式产品名称相⽐,启动管理器⼀直是严格按照Windows 系统的核⼼版本加以区分的。

这是由于在配置多重操作系统共存时,必须由版本最⾼的启动管理器负责管理所有的操作系统,启动管理器只具备向下兼容性、不具备向上兼容性。

因此,启动管理器的版本必须
严格按照⾼低先后的顺序正确排列,⽽不能像Windows 的正式名称⼀样胡乱设置,否则便有可能⽆法正确配置多重操作系统共存。

例如,Windows 2000/XP/Server 2003 之所以都叫做NT 5.X,是因为它们的启动管理器全部都是NTLDR 与 BOOT.INI。

在配置 Windows
2000/XP/Server 2003 彼此之间的多系统共存时,每⼀个操作系统都是由NTLDR 与 BOOT.INI 统⼀管理的,⼤家是平起平坐的关系。

⽽做为 NT 6.X 的Windows Vista/Server 2008 则采⽤了 BOOTMGR 与 BCD 的新式启动管理器,在配置 Windows Vista/Server 2008 与Windows 2000/XP/Server 2003 的多系统共存时,BOOTMGR 将全⾯负责计算机的启动管理⼯
作,NTLDR 将沦为BOOTMGR 的替补。

举个例⼦,假设我们配置了Windows Vista、Windows XP、Windows Server 2008、Windows Server 2003 四个操作系统的共存,BOOTMGR 启动菜单并不会把 Windows XP 与 Windows Server 2003分别列在启动菜单⾥,⽽是将它们统⼀显⽰为“早期版本的Windows”。

只有做为NT 6.X 的 Windows Vista 与Windows Server 2008 才有资格在BOOTMGR 启动菜单中以独⽴选项的姿态出现。

我们只有选择了“早期版
本的W indows”选项,由BOOTMGR 将启动控制权移交给NTLDR 并⾃动切换为NTLDR 菜单,这时才可以继续选择需要启动Windows XP 还是Windows Server 2003。

换⾔之,NTLDR 启动菜单就像是 BOOTMGR 启动菜单的⼦菜单⼀样。

现在我们再来看⼀下 Windows 7,当我们在安装有Windows
Vista/Server 2008 的计算机中安装了 Windows 7 后,Windows 7 会将⾃⼰添加在BCD ⾥,与原有的 Windows Vista/Server 2008 实现共存,BOOTMGR 启动菜单将显⽰Windows 7、Windows Vista/Server 2008 及早期版本的Windows(如果有的话)三个选项。

换⾔之,Windows 7 采⽤的启动管理器依然是 BOOTMGR 与 BCD,它与 Windows Vista/Server 2008 是⼀个平起平坐的关系。

假如Windows 7 的核⼼版本叫做NT 7 的话,那么它应该拿出⼀个版本⽐BOOTMGR 与BCD 更⾼的新启动管理器才对,由这个新的启动管理器接管BOOTMGR 与BCD 的⼯作。

当然,⽬前在现实中是不存在这样⼀个启动管理器的,我们不妨将其假设为Loader v7。

那么,当我们安装了Windows NT 7 系统后,Loader v7 将⾃动取代 BOOTMGR 与 BCD 负责计算机的启动管理,到时候只有符合 NT 7.X 版本的Windows 系统才有资格以独⽴选项的姿态出现在 Loader v7 菜单中,Windows
Vista/Server 2008 将被统⼀显⽰为“早期版本的Windows”、Windows XP/Server 2003 则将被显⽰为“更早期版本的Windows”(当然,如果⼏年以后真的有Loader v7,到时它究竟还能否向下兼容 Windows XP/Server 2003 恐怕很难说了)。

现在,Windows 7 虽然正式名称叫做 7,但是它却并没有拿出这样⼀款更⾼级的Loader v7 启动管理器,依然只能依靠BOOTMGR 与BCD、同Windows Vista/Server 2008 平起平坐,因此Windows 7 的核⼼版本号还没有资格提升到 NT 7 的⾼度,最多只能叫做 NT 6.1 了。

虽然现在Windows 7 仅仅放出了⼀个预览版,在正式发⾏前会有什么变化还不好说,但从⽬前核⼼版本号已经确定为NT 6.1 的情况来看,笔者认为Windows 7 的启动管理器不会有什么⼤变了。

可以预见在今后的三五年内,我们的计算机都将长期使⽤ BOOTMGR 与 BCD。

就像 Windows 2000/XP/Server 2003 可以并列在⼀起成为 NT 5.X 系列⼀样、Windows Vista/Server 2008(包括将来的R2)/Windows 7 也可以并列在⼀起组成⼀个相对完整的NT 6.X 家族了。

其实,在 Windows 7 核⼼版本号确定之前,笔者个⼈还是⾮常希望Windows 7 能够设计新的启动管理器取代 BOOTMGR 与BCD,真正成为NT 7 的。

现有的BOOTMGR 与BCD 虽然已经很好⽤,但有⼀个最⼤的缺陷就是它始终还是基于纯字符界⾯的、不是⼀个⽀持⿏标操作的 GUI 界⾯,叫做Windows 未免有些名不副实。

其它操作系统可是早就实现图形⽅式的启动管理器了,这不得不说是⼀个遗憾。

试想如果开机⾃检后可以出现⼀个图
形化的启动界⾯,通过⿏标点击按钮选择操作系统以及安全模式等选项该有多好,期待 NT 7 将来可以实现。

⽬前只有使⽤ERD Commander 等第三⽅启动管理器软件才可以实现这个⽬的了
bootmgr出现以下两个问题之后的解决办法
bootmgr出现以下两个问题之后的解决办法:
1,出现“bootmgr is missing,please press ctrl+alt+del to restart”错误提⽰时的解决办法
bootmgr丢失,按Ctrl + Alt + DEL 重新启动。

错误往往在以下情况:您意外或者故意删除了⼀些重要Vista系统⽂件,或者⽂件被病毒或恶意软件损坏或摧毁,还可能您采取了不适当的BIOS模拟等Vis t a激活⽅式,让你不能访问Vista的桌⾯环境。

所以这是系统的问题,想要修复bootmgr 丢失的错误,⽽您⼜不想重新安装Windows Vista时,⼤部分⼈选择了使⽤Vista的DVD安装光盘来开机,这⼉有个永久性的根除这个错误的办法,很简单,只要按照中概述的步骤指南来操作就可以了。

⼀、插⼊Windows Vista的DVD安装光盘,⽤它来启动电脑,如果没有正常启动,请确定在BIOS⾥⾯设置下开机启动顺序,先由DVD驱动器启动电脑。

⼆、在安装Winows那个窗⼝,选择适合您的系统语⾔、时区、键盘模式,然后点击下⼀步按钮。

三、在下⼀步骤的屏幕左下⾓,点击“修复您的电脑”链接。

四、如果您有很多Windows硬盘分区的话,请先选择您要修复的那个分区,如果您只有⼀个Windows安装,那么选择就是显⽽易见的。

五、在“系统恢复选项”窗⼝,点击“启动修复”,这样,就可以防⽌Windows⽆法启动,也解决丢失bootmgr错误提⽰的问题。

我的本本也是那样,后来我发现VISTA系统就都是那样,后来我就不⽤了,我现在还⽤的是XP SP3的,这稳定
2,出现“BOOTMGR is compressed Press Ctrl+Alt+Del to restart”错误提⽰时的解决办法
⽅法⼀,最简单的⽅法是:找⼀张winpe光盘,⽤他引导进⼊winpe 系统,打开我的电脑,右击C盘,选择属性,把那个“压缩此驱动器以节约磁盘空间”的勾去掉,然后确定,会出现bootmgr是只读⽂件,是否忽略,全部忽略即可,好了,⼤功告成,重启后⼀切正常
⽅法⼆,windows7对C盘进⾏了压缩后,恶梦开始了。

重启后显⽰:“BOOTMGR is compressed Press Ctrl+Alt+Del to restart”。

我使⽤的⽅法是:
1、⽤vista启动,选择修复;
2、运⾏“Bootrec.exe /fixmbr、Bootrec /fixboot"然后重启。

然后华丽⼜出现在了⾯前,原来
成功就是这么简单。

当然在运⾏这个命令之前,⽹上的两种⽅法我都试过了,C盘也解压缩了。

⽹上通⽤的⽅法如下:1、Boot the vista dvd to get to the command line.
expand bootmgr temp
attrib bootmgr -s -r -h
del bootmgr
ren temp bootmgr
attrib bootmgr -a +s +r +h
2、Vista安装盘启动,打开命令提⽰符,转到你Vista的system32(如c:\windows\system32),之后“compact /u
c:\bootmgr“最好运⾏"compact /u /a /f /s:C:\",把c:整个分区解压缩。

相关文档
最新文档