三、加载内核阶段
Ntldr获取从ntdetect.com发来的信息后,将这些信息组织成为内部结构形式,然后由ntldr 启动ntoskrnl.exe程序,并将这些信息和boot.ini文件中的信息,以及注册表中的硬件和软件信息传递给ntoskrnl.exe 程序——Windows XP内核。

  1、将内核(ntoskrnl.exe)和硬件抽象层(hal.dll)载入到内存

在加载内核阶段,ntldr加载称为内核的ntokrnl.exe,但是没有将它初始化。接着ntldr加载硬件抽象层(HALhal.dll)。    2、加载控制集信息
  在这一过程中,ntldr从注册表中HKEY_LOCAL_MACHINE\SYSTEM的位置读取select键来决定哪一个控制集(Control Set)信息将被加载,并确定在启动过程中要加载的设备驱动。控制集中包含设备的驱动程序以及需要加载的服务。
  3、加载设备驱动程序和服务

  在这一步中,系统会在BIOS的帮助下开始加载设备驱动程序,以及服务。

设备驱动程序,NTLDR将加载HKEY_LOCAL_MACHINE\system\service\...start键值为0的最底层设备驱动。

  当作为Control Set的镜像的Current Control Set被加载时,NTLDR将把控制权传递给Windows XP内核NTOSKRNL.EXE

  至内核加载阶段结束,接下来是初始化内核阶段。

四、初始化内核阶段

  在初始化内核阶段开始的时候,彩色的Windows XPlogo以及进度条显示在屏幕中央,在这个阶段,系统完成了启动的4项任务:
 1、内核使用在硬件检测时收集到的数据来创建了HKEY_LOCAL_MACHINE\HARDWARE键。
  2、内核通过引用HKEY_LOCAL_MACHINE\system\Current的默认值复制Control Set来创建了Clone Control SetClone 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的时候忽略,系统不会显示任何错误信息而继续运行
 4、启动会话管理器Session Manager

  内核会启动会话管理器(Session Manager,这是一个名为smss.exe 的程序,其作用表现如下:

    (1)创建系统环境变量
    (2)创建虚拟内存页面文件
    (3启动了Windows XP高级子系统以及服务
    (4启动了控制所有输入、输出设备以及访问显示器屏幕Win32子系统

初始化内核完毕。

 

五、用户登录阶段
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的值以及DependOnGroupDepandOnService的值来加载。

   即插即用设备的检测过程

   对即插即用设备的检测,实际上是和登录过程异步进行的。由系统固件、硬件、设备驱动和系统特性决定了Windows XP如何对新设备进行检测和枚举。当即插即用组件正常工作后,Windows XP会对新设备进行检测,为它们分配系统资源,并在尽量不要用户提供选择的情况下,为新设备安装一个合适版本的驱动程序。

启动完成

   只有用户成功登陆到计算机后,Windows XP的启动才被认为是完成,在成功登陆后,系统拷贝Clone Control SetLastKnownGood Control Set,完成这一步骤后,系统才意味着已经成功引导了。

阅读全文
类别:Bios 查看评论
posted on 2011-07-08 03:02  sinbad_li  阅读(584)  评论(0编辑  收藏  举报