QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

全站
9天前
查看: 1371|回复: 0
收起左侧

[分享] Windows XP Professional電腦啟動過程概述

[复制链接]
发表于 2007-2-18 02:30:41 | 显示全部楼层 |阅读模式 来自: 中国台湾

马上注册,结识高手,享用更多资源,轻松玩转三维网社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
Windows XP Professional电脑启动过程概述
. e4 `% \% K* L$ @* D+ F: |
- R  c( }% a8 V7 q  ^0 t" u从按下电脑开关启动电脑,到登入到桌面完成启动,一共经由了以下几个阶段:
/ {6 g8 R7 x7 f" q6 s/ x1. 预引导(Pre-Boot)阶段;  o# J6 y: a& G
2. 引导阶段;
3 f% t% c: D( ?! G  x  K7 ?3. 加载内核阶段;: d6 [+ O4 e3 P6 o
4. 起始化内核阶段;
1 `- W# O; ^: o0 C! a0 ?0 ~5. 登陆。. f3 \5 m* M+ ]- n! B+ `
--------------------------------------------------------------------------------
9 @" i( f6 U( v/ l" J8 v* _) k每个启动阶段的详细介绍5 b# Q+ p3 Y2 A, b) M
a) 预引导阶段
6 ~* A6 _' D2 A/ L7 s/ b, B. l1 v在按下电脑电源使电脑启动,并且在Windows XP专业版动作系统启动之前这段时间,我们称之为预引导(Pre-Boot)阶段,在这个阶段里,电脑首先执行Power On Self Test(POST),POST检验系统的总记忆体以及其他硬体装置的现状。若果电脑系统的BIOS(基础输入/输出系统)是即插即用的,那么电脑硬体装置将经由检验以及完成群组态。电脑的基础输入/输出系统(BIOS)定位电脑的引导装置,然后MBR(Master Boot Record)被加载并执行。在预引导阶段,电脑要加载Windows XP的NTLDR档案。" n( k  h8 F6 u( B
b) 引导阶段 " W. @* `& K* g  Y4 g' d
Windows XP Professional引导阶段内含4个小的阶段。0 ?+ e; U7 ?8 }3 h
首先,电脑要经由起始引导加载器阶段(Initial Boot Loader),在这个阶段里,NTLDR将电脑微处理器从实模式转换为32位平面记忆体模式。在实模式中,系统为MS-DOS保留640kb记忆体,其余记忆体视为延伸记忆体,而在32位平面记忆体模式中,系统(Windows XP Professional)视所有记忆体为可用记忆体。接着,NTLDR启动内建的mini-file system drivers,通过这个步骤,使NTLDR可以识别每一个用NTFS或是FAT档案系统格式化的分区,以便发现以及加载Windows XP Professional,到这里,起始引导加载器阶段就结束了。$ \; ]1 ?. R2 Z4 f& b
接着系统来到了动作系统选取阶段,若果电脑安装了不止一个动作系统(也就是多系统),而且正确设定了boot.ini使系统提供动作系统选取的条件下,电脑显示器会显示一个动作系统选单,这是NTLDR读取boot.ini的结果。(至于动作系统选单,由于暂时条件不够,没办法截图,但是笔者类比了一个,见图一。)
, ?# t' D8 a6 H& ^9 A4 M. u在boot.ini中,主要内含以下内容:
5 Q) e$ e, J+ J1 H& O! c[boot loader] 6 u4 B+ N0 [- W. b  ^# g5 j" E$ l
timeout=30
+ ?1 k. \+ S" P# g2 O8 [; udefault=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS 7 C6 ~. N& k$ Z
[operating systems] ; l- k- ]% ~( c) j! ]1 d! I& u
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect
' |  `6 @$ l3 ^$ U2 Smulti(0)disk(0)rdisk(0)partition(2)\WINNT="Windows Windows 2000 Professional"
( L; f4 N* b% b! v% _9 V3 V; p- [4 N. * m& x3 y8 l0 S/ S
其中,multi(0)表示磁碟控制器,disk(0)rdisk(0)表示磁碟,partition(x)表示分区。NTLDR就是从这里寻找Windows XP Professional的系统档案的位置的。(*本文不会更详细地讲解boot.ini的群群组成结构,因为其与本主旨关系不大,若果想瞭解,可以到一些专门的网站处查询关联讯息。)若果在boot.ini中只有一个动作系统选项,或是把timeout值设为0,则系统不出现动作系统选取选单,直接引导到那个唯一的系统或是预设的系统。在选取启动Windows XP Professional后,动作系统选取阶段结束,硬体检验阶段开始。
& j% G/ T: a; {% i  k5 E' }在硬体检验阶段中,ntdetect.com将收集电脑硬体讯息清单并将清单返回到NTLDR,这样做的目的是便于以后将这些硬体讯息加入到注册表HKEY_LOCAL_MACHINE下的hardware中。
4 z9 z3 b$ ]4 y4 U" _硬体检验完成后,进入群组态选取阶段。若果电脑含有多个硬体群组态档清单,可以通过按上下按钮来选取。若果只有一个硬体群组态档,电脑不显示此萤幕而直接使用预设的群组态档加载Windows XP专业版。# \$ G# Z) [1 ~/ k3 F* f" M9 g
引导阶段结束。在引导阶段,系统要用到的档案一共有:NTLDR,Boot.ini,ntdetect.com,ntokrnl.exe,Ntbootdd.sys,bootsect.dos(可选的)。
# B1 `8 P6 b* p1 V2 G, y. 6 ]) |# q9 C$ n- P* Q
c) 加载内核阶段: F9 ]. r2 |  [& f* w
在加载内核阶段,ntldr加载称为Windows XP内核的ntokrnl.exe。系统加载了Windows XP内核但是没有将它起始化。接着ntldr加载硬体抽像层(HAL,hal.dll),然后,系统继续加载HKEY_LOCAL_MACHINE\system键,NTLDR读取select键来决定哪一个Control Set将被加载。控制集中内含装置的驱动程式以及需要加载的服务。NTLDR加载HKEY_LOCAL_MACHINE\system\service\...下start键值为0的最底层装置驱动。当作为Control Set的对映的Current Control Set被加载时,ntldr传递控制给内核,起始化内核阶段就开始了。 3 u1 k8 s9 T. N4 s
.
) H& _  x' d9 p8 jd) 起始化内核阶段1 a% N; X& X, ^8 _6 Z- @6 X1 f
在起始化内核阶段开始的时候,彩色的Windows XP的logo以及进度条显示在萤幕中央,在这个阶段,系统完成了启动的4项任务:
* p( t8 k/ u; A? 内核使用在硬体检验时收集到的资料来建立了HKEY_LOCAL_MACHINE\HARDWARE键。" F; c; J2 ]! @3 J+ G5 z
? 内核通过引用HKEY_LOCAL_MACHINE\system\Current的预设值复制Control Set来建立了Clone Control Set。Clone Control Set群组态是电脑资料的备份,不内含启动中的改变,也不会被修改。
( t- s  h) E/ R3 f# k! c? 系统完成起始化以及加载装置驱动程式,内核起始化那些在加载内核阶段被加载的底层驱动程式,然后内核扫瞄HKEY_LOCAL_MACHINE\system\CurrentControlSet\service\...下start键值为1的装置驱动程式。这些装置驱动程式在加载的时候便完成起始化,若果有错误发生,内核使用ErrorControl键值来决定如何处理,值为3时,错误标志为危机/关键,系统初次遇到错误会以LastKnownGood Control Set重新启动,若果使用LastKnownGood Control Set启动仍然产生错误,系统报告启动失败,错误讯息将被显示,系统停止启动;值为2时错误情况为严重,系统启动失败并且以LastKnownGood Control Set重新启动,若果系统启动已经在使用LastKnownGood值,它会忽略错误并且继续启动;当值是1的时候错误为普通,系统会产生一个错误讯息,但是仍然会忽略这个错误并且继续启动;当值是0的时候忽略,系统不会显示任何错误讯息而继续执行% A/ @4 N0 m, @; x# ?, c
? Session Manager启动了Windows XP进阶子系统以及服务,Session Manager启动控制所有输入、输出装置以及访问显示器萤幕的Win32子系统以及Winlogon进度,起始化内核完毕。
5 Z; L" i! c3 t6 q0 N  x8 g. 2 Z4 x; Y) x, A# w
e) 登陆
$ {2 R0 B, Q3 V% r? Winlogon.exe启动Local Security Authority,同时Windows XP Professional欢迎萤幕或是登陆对话框显示,这时候,系统还可能在后台继续起始化刚才没有完成的驱动程式。0 U; }, N0 t& t1 X
?提示输入有效的使用者名或密码。  z6 A( y5 g0 \4 a$ m) c
?Service Controller最后执行以及扫瞄HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Servives来检查是否还有服务需要加载,Service Controller寻找start键值为2或更高的服务,服务按照start的值以及DependOnGroup和DepandOnService的值来加载。 1 m- b1 `6 M# B* X) n) X' K
. + H, r3 A$ ]/ L: s% L
只有使用者成功登陆到电脑后,Windows XP的启动才被认为是完成,在成功登陆后,系统复制Clone Control Set到LastKnownGood Control Set,完成这一步骤后,系统才意味着已经成功引导了! T# I. h0 }5 C0 H) f
q
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Licensed Copyright © 2016-2020 http://www.3dportal.cn/ All Rights Reserved 京 ICP备13008828号

小黑屋|手机版|Archiver|三维网 ( 京ICP备2023026364号-1 )

快速回复 返回顶部 返回列表