[本方法在虚拟机和物理机上都通过验证,不过不保证在读者机器上也有效]
机器上在C盘安装好了Vista,可是还是想搞个XP,毕竟为XP设计的软件目前还是很多的。不过不太想重新安装WinXP,然后在一一安装软件。手头正好有一个XP的ghost镜像,于是信手将其恢复到一个空盘--G盘里。
不过问题来了:这两个系统怎么引导?
Vista使用了新的引导系统,可以使用bcdedit命令来察看和修改启动信息(注意要RunAs管理员)。不过还有图形化的好工具:VistaBootPro。用它轻松的添加一个启动项,注意该项要指向G盘。
但是还没完,XP是挺傻的,它启动时要先到第一个磁盘去找ntldr,然后ntldr读取boot.ini来察看引导信息(以前xp和2000等共存就是这么干的),根据引导信息来引导。所以得拷贝ntldr,boot.ini和ntdetect.com到C盘下,此外还要修改boot.ini,让其指向G盘。
[
boot loader
]
timeout = 0
default = multi( 0 )disk( 0 )rdisk( 0 )partition( 5 )WINDOWS
[ operating systems ]
multi( 0 )disk( 0 )rdisk( 0 )partition( 5 )WINDOWS = " Microsoft Windows XP Professional " /noexecute = optin /fastdetect /detecthal
timeout = 0
default = multi( 0 )disk( 0 )rdisk( 0 )partition( 5 )WINDOWS
[ operating systems ]
multi( 0 )disk( 0 )rdisk( 0 )partition( 5 )WINDOWS = " Microsoft Windows XP Professional " /noexecute = optin /fastdetect /detecthal
上面的 partition(5) 就是G盘,从C=1数起
好,这样就可以了!
参考的文章:
作者: 白衣刺客[
9995657
] 时间:
2006
-
07
-
17
23
:
49
:
17
收藏 报警
近发现有很多人机器无法正常启动,现将启动步骤讲一下,希望能对大家有所帮助.
操作系统启动步骤
1 、 预引导(Pre - Boot)阶段
2 、引导阶段
3 、加载内核阶段
4 、初始化内核阶段
5 、登陆
每个启动阶段的详细介绍
一、预引导阶段 在按下计算机电源使计算机启动,
并且在Windows XP操作系统启动之前这段时间,
我们称之为预引导(Pre - Boot)阶段,
在这个阶段里,计算机首先运行Power On Self Test(POST),
POST检测系统的总内存以及其他硬件设备的现状。
如果计算机系统的BIOS(基础输入 / 输出系统)是即插即用的,
那么计算机硬件设备将经过检验以及完成配置。
计算机的基础输入 / 输出系统(BIOS)定位计算机的引导设备,
然后MBR(Master Boot Record)被加载并运行。
在预引导阶段,计算机要加载Windows XP的NTLDR文件。
二、引导阶段 Windows XP Professional引导阶段包含4个小的阶段。
首先,计算机要经过初始引导加载器阶段(Initial Boot Loader),
在这个阶段里,NTLDR将计算机微处理器从实模式转换为32位平面内存模式。
在实模式中,系统为MS - DOS保留640kb内存,其余内存视为扩展内存,
而在32位平面内存模式中,系统(Windows XP Professional)视所有内存为可用内存。
接着,NTLDR启动内建的mini - file system drivers,
通过这个步骤,使NTLDR可以识别每一个用NTFS或者FAT文件系统格式化的分区,
以便发现以及加载Windows XP Professional,
到这里,初始引导加载器阶段就结束了。
接着系统来到了操作系统选择阶段,
如果计算机安装了不止一个操作系统(也就是多系统),
而且正确设置了boot.ini使系统提供操作系统选择的条件下,
计算机显示器会显示一个操作系统选单,
这是NTLDR读取boot.ini的结果。
三、加载内核阶段 在加载内核阶段,ntldr加载称为Windows XP内核的ntokrnl.exe。
系统加载了Windows XP内核但是没有将它初始化。
接着ntldr加载硬件抽象层(HAL,hal.dll),然后,
系统继续加载HKEY_LOCAL_MACHINEsystem键,
NTLDR读取select键来决定哪一个Control Set将被加载。
控制集中包含设备的驱动程序以及需要加载的服务。
NTLDR加载HKEY_LOCAL_MACHINEsystemservice...下start键值为0的最底层设备驱动。
当作为Control Set的镜像的Current Control Set被加载时,
ntldr传递控制给内核,初始化内核阶段就开始了。
四、初始化内核阶段 在初始化内核阶段开始的时候,
彩色的Windows XP的logo以及进度条显示在屏幕中央,
在这个阶段,系统完成了启动的4项任务:
内核使用在硬件检测时收集到的数据来创建了HKEY_LOCAL_MACHINEHARDWARE键。
内核通过引用HKEY_LOCAL_MACHINEsystemCurrent的默认值复制Control Set来创建了Clone Control Set。
Clone Control Set配置是计算机数据的备份,不包括启动中的改变,也不会被修改。
系统完成初始化以及加载设备驱动程序,内核初始化那些在加载内核阶段被加载的底层驱动程序,
然后内核扫描HKEY_LOCAL_MACHINEsystemCurrentControlSetservice...下start键值为1的设备驱动程序。
这些设备驱动程序在加载的时候便完成初始化,如果有错误发生,内核使用ErrorControl键值来决定如何处理,
值为3时,错误标志为危机 / 关键,系统初次遇到错误会以LastKnownGood Control Set重新启动,
如果使用LastKnownGood Control Set启动仍然产生错误,系统报告启动失败,错误信息将被显示,
系统停止启动;值为2时错误情况为严重,系统启动失败并且以LastKnownGood Control Set重新启动,
如果系统启动已经在使用LastKnownGood值,它会忽略错误并且继续启动;
当值是1的时候错误为普通,系统会产生一个错误信息,
但是仍然会忽略这个错误并且继续启动;当值是0的时候忽略,系统不会显示任何错误信息而继续运行
Session Manager启动了Windows XP高级子系统以及服务,
Session Manager启动控制所有输入、输出设备以及访问显示器屏幕的Win32子系统以及Winlogon进程,
初始化内核完毕。
五、登陆 Winlogon.exe启动Local Security Authority,
同时Windows XP Professional欢迎屏幕或者登陆对话框显示,
这时候,系统还可能在后台继续初始化刚才没有完成的驱动程序。
提示输入有效的用户名或密码。
Service Controller最后执行以及扫描HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServives来检查是否还有服务需要加载,
Service Controller查找start键值为2或更高的服务,
服务按照start的值以及DependOnGroup和DepandOnService的值来加载。
只有用户成功登陆到计算机后,Windows XP的启动才被认为是完成,
在成功登陆后,系统拷贝Clone Control Set到LastKnownGood Control Set,完成这一步骤后,
系统才意味着已经成功引导了。
说了一大堆对有些朋友来说可能比较难懂,但是希望大家能尽量认真去读,让别人或自己知道究竟在哪一步上出错了,别人才能更好的去帮助你。
近发现有很多人机器无法正常启动,现将启动步骤讲一下,希望能对大家有所帮助.
操作系统启动步骤
1 、 预引导(Pre - Boot)阶段
2 、引导阶段
3 、加载内核阶段
4 、初始化内核阶段
5 、登陆
每个启动阶段的详细介绍
一、预引导阶段 在按下计算机电源使计算机启动,
并且在Windows XP操作系统启动之前这段时间,
我们称之为预引导(Pre - Boot)阶段,
在这个阶段里,计算机首先运行Power On Self Test(POST),
POST检测系统的总内存以及其他硬件设备的现状。
如果计算机系统的BIOS(基础输入 / 输出系统)是即插即用的,
那么计算机硬件设备将经过检验以及完成配置。
计算机的基础输入 / 输出系统(BIOS)定位计算机的引导设备,
然后MBR(Master Boot Record)被加载并运行。
在预引导阶段,计算机要加载Windows XP的NTLDR文件。
二、引导阶段 Windows XP Professional引导阶段包含4个小的阶段。
首先,计算机要经过初始引导加载器阶段(Initial Boot Loader),
在这个阶段里,NTLDR将计算机微处理器从实模式转换为32位平面内存模式。
在实模式中,系统为MS - DOS保留640kb内存,其余内存视为扩展内存,
而在32位平面内存模式中,系统(Windows XP Professional)视所有内存为可用内存。
接着,NTLDR启动内建的mini - file system drivers,
通过这个步骤,使NTLDR可以识别每一个用NTFS或者FAT文件系统格式化的分区,
以便发现以及加载Windows XP Professional,
到这里,初始引导加载器阶段就结束了。
接着系统来到了操作系统选择阶段,
如果计算机安装了不止一个操作系统(也就是多系统),
而且正确设置了boot.ini使系统提供操作系统选择的条件下,
计算机显示器会显示一个操作系统选单,
这是NTLDR读取boot.ini的结果。
三、加载内核阶段 在加载内核阶段,ntldr加载称为Windows XP内核的ntokrnl.exe。
系统加载了Windows XP内核但是没有将它初始化。
接着ntldr加载硬件抽象层(HAL,hal.dll),然后,
系统继续加载HKEY_LOCAL_MACHINEsystem键,
NTLDR读取select键来决定哪一个Control Set将被加载。
控制集中包含设备的驱动程序以及需要加载的服务。
NTLDR加载HKEY_LOCAL_MACHINEsystemservice...下start键值为0的最底层设备驱动。
当作为Control Set的镜像的Current Control Set被加载时,
ntldr传递控制给内核,初始化内核阶段就开始了。
四、初始化内核阶段 在初始化内核阶段开始的时候,
彩色的Windows XP的logo以及进度条显示在屏幕中央,
在这个阶段,系统完成了启动的4项任务:
内核使用在硬件检测时收集到的数据来创建了HKEY_LOCAL_MACHINEHARDWARE键。
内核通过引用HKEY_LOCAL_MACHINEsystemCurrent的默认值复制Control Set来创建了Clone Control Set。
Clone Control Set配置是计算机数据的备份,不包括启动中的改变,也不会被修改。
系统完成初始化以及加载设备驱动程序,内核初始化那些在加载内核阶段被加载的底层驱动程序,
然后内核扫描HKEY_LOCAL_MACHINEsystemCurrentControlSetservice...下start键值为1的设备驱动程序。
这些设备驱动程序在加载的时候便完成初始化,如果有错误发生,内核使用ErrorControl键值来决定如何处理,
值为3时,错误标志为危机 / 关键,系统初次遇到错误会以LastKnownGood Control Set重新启动,
如果使用LastKnownGood Control Set启动仍然产生错误,系统报告启动失败,错误信息将被显示,
系统停止启动;值为2时错误情况为严重,系统启动失败并且以LastKnownGood Control Set重新启动,
如果系统启动已经在使用LastKnownGood值,它会忽略错误并且继续启动;
当值是1的时候错误为普通,系统会产生一个错误信息,
但是仍然会忽略这个错误并且继续启动;当值是0的时候忽略,系统不会显示任何错误信息而继续运行
Session Manager启动了Windows XP高级子系统以及服务,
Session Manager启动控制所有输入、输出设备以及访问显示器屏幕的Win32子系统以及Winlogon进程,
初始化内核完毕。
五、登陆 Winlogon.exe启动Local Security Authority,
同时Windows XP Professional欢迎屏幕或者登陆对话框显示,
这时候,系统还可能在后台继续初始化刚才没有完成的驱动程序。
提示输入有效的用户名或密码。
Service Controller最后执行以及扫描HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServives来检查是否还有服务需要加载,
Service Controller查找start键值为2或更高的服务,
服务按照start的值以及DependOnGroup和DepandOnService的值来加载。
只有用户成功登陆到计算机后,Windows XP的启动才被认为是完成,
在成功登陆后,系统拷贝Clone Control Set到LastKnownGood Control Set,完成这一步骤后,
系统才意味着已经成功引导了。
说了一大堆对有些朋友来说可能比较难懂,但是希望大家能尽量认真去读,让别人或自己知道究竟在哪一步上出错了,别人才能更好的去帮助你。