
怎样调整系统启动顺序.doc
12页怎样调整系统启动顺序怎样调整系统启动顺序从按下计算机开关启动计算机,到登入到桌面完成启动,一共经过了以下几个阶段: 1. 预引导(Pre-Boot)阶段 2. 引导阶段 3. 加载内核阶段 4. 初始化内核阶段 5. 登陆 每个启动阶段的详细介绍 a) 预引导阶段 在按下计算机电源使计算机启动,并且在 Windows XP 专业版操作系统启动之前这段时间,我们称之为预引导(Pre-Boot)阶段,在这个阶段里,计算机首先运行 Power On Self Test(POST) ,POST 检测系统的总内存以及其他硬件设备的现状如果计算机系统的BIOS(基础输入/输出系统)是即插即用的,那么计算机硬件设备将经过检验以及完成配置计算机的基础输入/输出系统(BIOS)定位计算机的引导设备,然后 MBR(Master Boot Record)被加载并运行在预引导阶段,计算机要加载 Windows XP 的 NTLDR 文件 b) 引导阶段 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 的结果 在 boot.ini 中,主要包含以下内容: [boot loader] timeout=30 default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS [operating systems] multi(0)disk(0)rdisk(0)partition(1)\WINDOWS=“Microsoft Windows XP Professional“ /fastdetect multi(0)disk(0)rdisk(0)partition(2)\WINNT=“Windows Windows 2000 Professional“ 其中,multi(0)表示磁盘控制器,disk(0)rdisk(0)表示磁盘,partition(x)表示分区。
NTLDR 就是从这里查找 Windows XP Professional 的系统文件的位置的 (*本文不会更详细地讲解boot.ini 的组成结构,因为其与本主题关系不大,如果想了解,可以到一些专门的网站处查询相关信息 )如果在 boot.ini 中只有一个操作系统选项,或者把 timeout 值设为 0,则系统不出现操作系统选择菜单,直接引导到那个唯一的系统或者默认的系统在选择启动 Windows XP Professional 后,操作系统选择阶段结束,硬件检测阶段开始 在硬件检测阶段中, 将收集计算机硬件信息列表并将列表返回到 NTLDR,这样做的目的是便于以后将这些硬件信息加入到注册表 HKEY_LOCAL_MACHINE 下的 hardware 中 硬件检测完成后,进入配置选择阶段如果计算机含有多个硬件配置文件列表,可以通过按上下按钮来选择如果只有一个硬件配置文件,计算机不显示此屏幕而直接使用默认的配置文件加载Windows XP 专业版 引导阶段结束在引导阶段,系统要用到的文件一共有:NTLDR,Boot.ini,,ntokrnl.exe,Ntbootdd.sys,bootsect.dos(可选的) 。
c) 加载内核阶段 在加载内核阶段,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 传递控制给内核,初始化内核阶段就开始了 d) 初始化内核阶段 在初始化内核阶段开始的时候,彩色的 Windows XP 的 logo 以及进度条显示在屏幕中央,在这个阶段,系统完成了启动的 4 项任务: · 内核使用在硬件检测时收集到的数据来创建了HKEY_LOCAL_MACHINE\HARDWARE 键 · 内核通过引用 HKEY_LOCAL_MACHINE\system\Current 的默认值复制 Control Set 来创建了 Clone Control Set。
Clone Control Set配置是计算机数据的备份,不包括启动中的改变,也不会被修改 · 系统完成初始化以及加载设备驱动程序,内核初始化那些在加载内核阶段被加载的底层驱动程序,然后内核扫描HKEY_LOCAL_MACHINE\system\CurrentControlSet\service\...下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 进程,初始化内核完毕。
e) 登陆 · Winlogon.exe 启动 Local Security Authority,同时 Windows XP Professional 欢迎屏幕或者登陆对话框显示,这时候,系统还可能在后台继续初始化刚才没有完成的驱动程序 · 提示输入有效的用户名或密码 · Service Controller 最后执行以及扫描HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Servives 来检查是否还有服务需要加载,Service Controller 查找 start 键值为 2或更高的服务,服务按照 start 的值以及 DependOnGroup 和DepandOnService 的值来加载 只有用户成功登陆到计算机后,Windows XP 的启动才被认为是完成,在成功登陆后,系统拷贝 Clone Control Set 到 LastKnownGood Control Set,完成这一步骤后,系统才意味着已经成功引导了/////////进 XP 系统,再进该系统所在的系统盘,根目录下会有一个Boot.ini 文件(要确保你没有隐藏 隐藏文件和系统文件,要不然你看不到这个文件) ,打开 Boot.ini,我的是这样的:[boot loader]timeout=30default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS[operating systems]multi(0)disk(0)rdisk(0)partition(1)\WINDOWS=“Microsoft Windows XP Professional“ /noexecute=optin /fastdetecttimeout 项就是等待时间,秒为单位,你可以自己设定deault 项就是默认第一个启动的系统,你可以改成 WINDOWS,下面那个[operating systems]是解释给你看,WINDOWS=“Microsoft Windows XP Professional“ 就是说 WINDOWS 这个启动项就是 XP 系统。
当然最后别忘了保存这个文件,然后重启/////修改 boot.ini 文件一般来说,boot.ini 格式如下: [boot loader]timeout=10default=multi(0)disk(0)rdisk(0)partition(2)\WINXP[operating systems]multi(X)disk(Y)rdisk(Z)partition(Q)\WINXP=“Microsoft Windows XP Professional“ /fastdetectSCSI(X)disk(Y)rdisk(Z)partition(Q)\WIN98=“Microsoft Windows 98“ /fastdetectpartition(Q)表示操作系统的系统根目录所在的分区在同一快硬盘上主分区的顺序号(Q 从 1 开始) rdisk(Z)若以 multi 开头,则 Z 植表示操作系统的系统根目录所在的分区所在的硬盘在同一个磁盘控制器上的硬盘顺序号(Z 从 0 开始) 若以 SCSI 开头,则 Z 值无意义,恒等于 0 disk(Y)若以 SCSI 开头,则 Y 植表示操作系统的系统根目录所在的分区所在的硬盘在同一个磁盘控制器上的硬盘顺序号(Y 从 0 开始) 。
若以multi 开头,则 Y 值无意义,恒等于 0 mutil(X) & SCSI(X)若计算机中既有 IDE 盘又有 SCSI 盘(或只有 IDE) ,且 BIOS 中SCSI 的设置设为 enable,则以 multi(X)开头,其中 X 表示操作系统的系统根目录所在的分区所在的硬盘所在的磁盘控制器在同一磁盘控制器上的顺序号(X 从 0 开始计数) 若计算机中只有 SCSI 控制器,则以 SCSI(X)开头,其中 X 表示操作系统的系统根目录所在的分区所在的硬盘所在的磁盘控制器在同一磁盘控制器上的顺序号(X 从 0 开始计数) boot.ini 文件开关介绍这些开关可加在 boot.ini 文件 [oporating system] 部分的后面,不区分大小写 /BASEVIDEO计算机用标准 VGA 视频驱动程序启动若用户安装一个新的视频驱动程序但不能正常工作,用户可以选择有该开关的 Windows 2000 记录来启动计算机并变换到另一个视频驱动程序 /BAUDRATE=nnnn具体指定波特率用于调试若有调制解调器连接,默认的波特率是 9600,没有连接调制解调器的波特率为 19200。
在 Boot.ini 文件中包括本开关,可以使/DEB。
