在我的boot.ini中,包含以下内容:
[boot loader]
timeout=5
default=multi(0)disk(0)rdisk(0)partition(4)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(4)\WINDOWS="Windows XP Media Center Edition" /noexecute=optin /fastdetect
multi(0)disk(0)rdisk(0)partition(3)\WINNT="Microsoft Windows 2000 Advanced Server" /fastdetect
C:\BOOTSECT.DOS="WINDOWS 98 SE"
C:\CHAIN0="MAC OS X 86PC"
C:\GHLDR="一键GHOST v2006.03.12"
o0_0o 注
这里解释一下我的boot.ini。C:\BOOTSECT.DOS="WINDOWS 98 SE",大家都知道啦!C:\CHAIN0="MAC OS X 86PC",是我机子上安装的苹果的Tiger 10.4.5操作系统,CHAIN0像上边说的bootsect.dos一样,也是一个引导启动的转储文件。C:\GHLDR="一键GHOST v2006.03.12",安装的DOS之家的"一键恢复GHOST ",同上边一样,GHLDR也是这个工具的一个引导启动的转储文件。看到这里,你应该比较明白一点了吧?
比如你装了Linux,使用工具把Linux的引导扇区记录做成转储文件,然后放到NTLDR所在的分区根目录,然后再在boot.ini里添加相应的启动项,在开机的多启动菜单里选择这个启动选项,NTLDR一样可以成功启动Linux。
我的第一个分区是活动分区(主分区),装的是98;第二个分区是一个MAC系统格式的主分区,安装的是MAC Tiger 10.4.5; 2000 Advanced Server装在扩展分区中的第一个逻辑分区;XP Media Center Edition装在扩展分区中的第二个逻辑分区。
其实引导启动的程序有很多,不过我们常用的是windows的Loader罢了。Linux下常用的启动器是Grub,其它常见的第三方工具有System Commander、Bootmanager BootStar等等。
注:
1、NTLDR启动后,如果在系统根目录下发现有Hiberfil.sys文件且该文件有效,那么NTLDR将读取Hiberfil.sys文件里的信息并让系统恢复到休眠以前的状态,这时并不处理Boot.ini文件。Hiberfil.sys文件是在XP系统启用休眠时生成的内存转储文件。
2、BOOTSECT.DOS:OS或Windows 9x系统启动扇区的转储文件。文件由Windows NT 安装程序创建,一般为512 字节。
3、Windows NT 架构操作系统:指在Windows NT 操作系统上发展起来的操作系统,目前主流的有:Windows 2000、WindowsXP 和Windows Server 2003 等。
4、NTLDR 的兼容性:NTLDR 具有向下兼容性。高版本的NTLDR 能够启动低版本的Windows NT 操作系统。目前最新版本的NTLDR 是在Windows Server 2003附带的版本。所以安装多系统时要按照从低到高的版本顺序。比如装了XP之后再装2000,2000会用自己的NTLDR来覆盖原有的XP的NTLDR,这时XP就不能启动了——2000的NTLDR不能引导XP以及比XP更高版本的系统。
5、从Windows XP with Service Pack 2 开始,操作系统安装程序在安装的时候将检测硬盘上活动分区中NTLDR和NTDETECT.COM的版本,如果发现现有的版本比安装源上的版本新的话,将使用现有版本而不使用安装源上的版本。
2、内核通过引用HKEY_LOCAL_MACHINE\system\Current的默认值复制Control Set来创建了Clone Control Set。Clone Control Set配置是计算机数据的备份,不包括启动中的改变,也不会被修改。
3、系统完成初始化以及加载设备驱动程序
内核初始化那些在加载内核阶段被加载的底层驱动程序,然后内核扫描HKEY_LOCAL_MACHINE\system\CurrentControlSet\service\...下start键值为1的设备驱动程序。这些设备驱动程序在加载的时候便完成初始化,如果有错误发生,内核使用ErrorControl键值来决定如何处理。
start键值为3时,错误标志为危机/关键,系统初次遇到错误会以LastKnownGood Control Set重新启动,如果使用LastKnownGood Control Set启动仍然产生错误,系统报告启动失败,错误信息将被显示,系统停止启动;
值为2时错误情况为严重,系统启动失败并且以LastKnownGood Control Set重新启动,如果系统启动已经在使用LastKnownGood值,它会忽略错误并且继续启动;
当值是1的时候错误为普通,系统会产生一个错误信息,但是仍然会忽略这个错误并且继续启动;当值是0的时候忽略,系统不会显示任何错误信息而继续运行 。
用户登录阶段
A 在这一过程中,Windows 子系统会启动winlogon.exe,这是一个系统服务,用于提供对Windows 用户的登录和注销的支持。Winlogon.exe 可以完成如下一些工作:
1、启动服务子系统(services.exe),也称服务控制管理器(Service Control Manager, SCM)。
2、启动本地安全授权(Local Security Authority , LSA)过程(lsass.exe),同时Windows XP Professional欢迎屏幕或者登陆对话框显示,这时候,系统还可能在后台继续初始化刚才没有完成的驱动程序。
3、在开始登录提示的时候,对Crtl+Alt+Del组合键进行分析处理。
4、调用一个图形化的识别和认证组件提示输入有效的用户名或密码,收集用户的帐号和密码,然后将这些信息安全地传送给LSA以进行认证处理。如果用户提供的信息是正确的,能够通过认证,就允许用户对系统进行访问。 这时用户成功登录操作系统。
要注意的是,如果您的计算机中,只有Administrator这一个用户,那么在欢迎屏幕中就会显示Administrator 用户项。如果您的计算机中不仅有Administrator用户,还有别的可以交互登录的用户,那么欢迎屏幕中就只显示出Administrator之外的用户,而不显示Administrator用户。
如果用户希望以Administrator用户登录,该怎么办呢?实际很简单,直接在欢迎屏幕中按下两次Crtl+Alt+Del组合键,即可打开标准的登录窗口,可以再输入Administrator 的用户名和密码,以便用最高管理员的身份登录。
B Service Controller最后执行以及扫描HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Servives来检查是否还有服务需要加载,Service Controller查找start键值为2或更高的服务,服务按照start的值以及DependOnGroup和DepandOnService的值来加载。
即插即用设备的检测过程