Vista与Windows XP双引导启动ntoskrnl.exe错误分析
症状
安装了 Windows Vista 并使之与 Microsoft Windows XP 一起形成双引导配置后,如果尝试使用 Windows XP 启动计算机,则将收到类似于以下内容的错误消息:
因以下文件的损坏或者丢失,Windows 无法启动:
C:Windowssystem32ntoskrnl.exe。请重新安装以上文件的拷贝。
原因
如果将 Windows Vista 安装在以前未分配的磁盘空间内并且该空间位于安装 Windows XP 的分区的前面,便会遇到此问题。
在此情况下,Windows Vista 安装程序会在未分配的磁盘空间内创建一个新的"分区。由于在安装 Windows XP 的分区前面创建了一个新的分区,因此 Windows XP 安装点的 Boot.ini 条目将指向无效的分区。
请考虑以下情况: 您的硬盘(或磁盘 0)在 Windows XP 分区前面包含一些未分配的硬盘空间。
Windows XP Boot.ini 文件指向 disk(0)partition(1) 来查找 Windows XP 启动文件。
Windows Vista 程序在未分配的硬盘空间内创建一个分区。
在此情况下,Windows XP 启动文件现在将位于 disk(0)partition(2) 上。但是,Boot.ini 文件仍然指向 disk(0)partition(1) 来查找这些文件。因此,Windows XP 将无法成功启动。回到顶端
解决方案
要解决此问题,请修改 Windows XP Boot.ini 文件以使其指向正确的分区。为此,请按照下列步骤操作:1. 启动 Windows Vista。
3. 在“组织菜单上,单击“文件夹和搜索选项。
4. 在“文件夹选项对话框中,单击“查看选项卡。
5. 在“高级设置区域中,单击“显示隐藏的文件和文件夹,单击以清除“隐藏已知文件类型的扩展名和“隐藏受保护的操作系统文件(推荐)复选框,单击“是确认您希望显示操作系统文件,然后单击“确定。
6. 找到并单击 Windows XP 系统驱动器。在 Windows Vista 的 Windows 资源管理器程序中,此驱动器很可能是驱动器 D。
7. 在右窗格中,右键单击“boot.ini,然后单击“属性。
8. 在“boot.ini 属性对话框中,单击“安全选项卡,然后单击“高级。
如果系统提示您输入管理员密码或进行确认,请键入密码或单击“继续。
10. 在“将所有者更改为列表中,单击您的别名或将默认的“Administrators选项保留为选中状态,然后单击“确定四次。
12. 根据 Windows XP 启动分区的正确路径修改高级 RISC 计算 (ARC) 路径。例如,如果 Windows Vista 安装程序在安装了 Windows XP 的分区前面的未分配磁盘空间内创建了一个分区,则必须使 Windows XP 所在分区的值增加一。因此,如果 Boot.ini 文件在 Windows XP 操作系统的 ARC 路径中包含 partition(1),请修改 ARC 路径以使其使用 partition(2)。在此情况下,ARC 路径将类似于以下内容:
multi(0)disk(0)rdisk(0)partition(2)WINDOWS="Microsoft Windows XP Professional" /fastdetect
13. 保存对 Boot.ini 文件所做的更改,然后退出记事本。
状态
Microsoft 已经确认这是在“适用于部分中列出的 Microsoft 产品中存在的问题。