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 文件所做的更改,然后退出记事本。