每天使用计算机的一个步骤是启动,了解启动过程和常见故障对维护有很大的帮助。下面简单介绍一下:
一、启动过程
例如,我的电脑在 BIOS硬盘启动设置在里面。
⑴、按主机电源开关,主板BIOS开始自检;
⑵、自检通过后,主板 bios找到硬盘上第一个风扇区域的主导记录MBR;
⑶、MBR 引导程序开始读硬盘分区表DPT,分析参数,找到活动分区,找到活动分区
区内分区引导记录PBR,并交给控制权PBR;
⑷、PBR 搜索活动区的启动管理器bootmgr,找到后,PBR交给控制权bootmgr(相
当于xp里的ntldr 文件)。
⑸、bootmgr在活动分区中寻找 boot文件夹中的 BCD文件(启动配置数据相当于 xp
里的boot.ini文件)。
⑹、找到 BCD后,bootmgr 首先从 BCD中读取启动管理器 bootmgr 语言版的菜单信
息,然后再调用 bootmgr 对应语言 BOOTMGR.EXE.MUI(在 boot 相应语言的启动菜单由文件夹对应的语言文件夹组成; 若有多个操作系统并选择操作系统的等待时间 0 此时,操作系统的选择界面将显示在显示器上。如果没有多个系统,则不显示选择界面,直接进入windows 7系统。
⑺、选择 windows 7 系统后,bootmgr 就会读取 BCD 里 win7 系统所在的盘中
windows\\system32\\winload.exe 并将控制权交给文件 winload.exe(windows 内核载入程
序) 。
⑻、Winload.exe加载Ntoskrnl.exe和 hal.dll(windows7 内核、硬件、服务等;
⑼、接下来 Ntldr 从 HKEY_LOCAL_ MACHINE\\SYSTEM\\CurrentControlSet 读取机器安装的驱动程序,然后依次加载驱动程序。 ⑽、驱动程序加载完成后,一开始只有 idle 和 system 进程,system 进程(PID 为 4) ,会做以下设置:
i、 创建smss.exe进程,它是Windows负责用户登录和登出管理的会话管理器流程,
也是系统中第一个用户流程。
注意,并非system.exe 如果你看到过程system.exe 流程名(通常出现c:\\windows目录
下面,说明你中了病毒)!
⑾、smss过程(由内核线程创建) ,会做以下设置:
i、创建autochk.exe检查磁盘并加载过程win32K.sys(Windows子系统的核心模式
部分),环境变量的初始化系统,控制所有输入/输出设备和访问显示设备;
ii 创建csrss.exe 主要管理流程 windows 维护图形相关任务 Windows 的控制,
管理会话创建的所有流程和线程 (创建或删除线程和一些16位虚拟MS-DOS例如,用户在登录时向他们发出退出通知。
iiii、创建winlogon进程;
iv、创建wininit.exe(vista以后才会有这个过程,注意和XP区别);
v、创建虚拟内存页面文件等。
⑿、Winlogon其他过程依次创建如下:
i、创建系统服务 services.exe 进程(vista 以后由 wininit.exe 负责加载) ,启动系统
服务和加载Auto驱动;
ii、创建地方安全验证Lsass.exe进程(vista以后由wininit.exe负责加载) ;
iii、创建 logonui.exe此过程,此时显示欢迎界面,选择账号,输入密码
登录系统(如果只有一个用户,没有密码,欢迎界面一闪而过) ;
iv、创建Userinit.exe 过程(密码发送Lsass.exe 验证通过后创建过程) ,用来对
用户初始化工作;
v、创建explorer.exe进程(由 Userinit.exe进程创建) ,这时你就可以进入工作了
做桌面,淘宝购物,QQ、文档、PPT等工作了。
现在,让我们了解一下,在WindowsXP系统下(windows 7 大同小异),system 进程、
smss.exe、csrss.exe、winlogon.exe 等待过程的关系,如下图1所示:
请点击此处输入图片描述
⒀、运行空闲(Idle)等待您登录系统并启动整个过程 windows 7 系统。用户
输入帐号和密码后,Userinit.exe 执行用户环境的初始化,然后查询注册表
HKLM/SOFTWARE/Microsoft/Windows NT/CurrentVersion/Winlogon/Shell 默认为键值
explorer.exe,启动它。然后 Userinit进程退出。然后 Userinit进程退出。
因此 explorer.exe 这个过程没有父亲的过程,示系统的桌面环境,包括桌面图标和文件
请不要管理此过程和浏览器过程(iexplore.exe)混淆!
这个过程简单概括为:
Windows 7 系统: BIOS-->COMS->MBR--DPT-->pbr--Bootmgr-->bcd-->Winload.exe-->内核
加载 -驱动项目-服务项目-启动项等等-->整个win7系统-启动完成!
WindowsXP系统:BIOS-COMS——MBR-DPT——PBR-ntlrd——boot.ini-系统内核
注:传统 BIOS MBR 分区表的启动模式将逐渐被启动 EFI BIOS GPT 分区表的启动方式替换
代! 让我们再来一次windowsXP与windows7.如下图所示:
图2
二、常见故障分析
2.1、MBR 故障
常见提示:一般MBR 出现故障时,左上角光标在启动时一直闪烁。
症状分析:硬盘已经启动, MBR 为空或不能读取。
2.2、分区表(DPT)故障
常见提示:An Operating System wasn't found…
症状分析:最常见的 DPT 故障是活动分区的丢失,导致硬盘启动时不知道读取哪个
所以找不到系统。
2.3、PBR 故障
常见提示:A disk read error occurred..,读取磁盘时会出错
症状分析:即根据分区表启动活动分区,但活动分区 PBR 出了故障,自然就
磁盘读取错误
2.4、读取PBR 寻找指导文件(bootmgr)各种问题时有发生
常见提示:NTlrd is missing/bootmgr is misssing(或其他文件 is missing)
症状分析:一般有三个原因:
1)活动分区标记错误,也就是说,目前的活动分区不是原来的活动分区,自然会在这个分区下找到
没有引导文件提示XXX is missing。
2)PBR 设置错误,在启动系统时寻找 bootmgr,是因为寻找 bootmgr 的命令写在 PBR
中,PBR 不去找bootmgr而去找NTlrd或别的文件(NTlrd是NT5.X,XP系统引导文件),
自然就是PBR 上面的命令写错了 。
3)的确是bootmgr 损坏丢失 2.5、BCD故障
常见提示:主要特点是白色横栏,上面写着 windows boot manager 或者
windows启动管理器(实际上是 bootmgr 该程序的界面) 。
症状分析:即 BCD 文件丢失、损坏或设置 bootmgr 找不到读取 BCD 或者无法
根据BCD找到系统并启动设置,因此反馈上述信息。
症状分析:即 BCD 文件丢失、损坏或设置 bootmgr 找不到读取 BCD 或者无法
根据BCD找到系统并启动设置,因此反馈上述信息。
2.6、winload.exe 或内核文件故障
常见提示:蓝屏 、一般会有损坏文件的提示。
症状分析:大多数情况下,系统文件被病毒或什么原因损坏,可以尝试 PE 里替换系
统一文件,有时PE如果方法无效,重新安装将更快地解决问题。
2.7、驱动故障
常见提示:出现win7 logo蓝屏或黑屏在界面后面
症状分析:自然是驱动不能加载,导致无法启动,黑屏容易解决,大部分显卡驱动问题。蓝
屏幕基本没救,重新安装系统。
2.8.服务项或启动项故障
常见症状:启动时卡在欢迎界面,或进入桌面后只有一个鼠标等。
或界面后的异常现象。
症状分析:
禁止关键系统服务;
2)必须启动的文件损坏或设置篡改(注册表) ;
3)干扰第三方服务项或启动项。
附件:Windows关键文件
smss.exe被称为会话管理子系统,负责启动用户会话,是一项重要的指导操作。如创建环
境变,启动csrss并在系统引导前复制排队的文件(它处理 Windows文件保护并
通过Winlogon创建登陆会话)。自 Win7,smss中断作为系统的重要过程smss会导致系统蓝
屏。
csrss.exe 是客户/服务器运行子系统用户态的主要组成部分。由于大部分 Win32 子系统操作
被移入核心态驱动(Win32.sys),所以它主要负责Win32 控制台窗口,创建或删除线程和部分
16 位虚拟 MS-DOS 环境。它是一个必须始终运行的核心子系统,因此中断过程会导致蓝屏崩溃。NTSD设置标志可以调试。
wininit.exe 是Windows启动/关闭服务。
logonui.exe 叫Windows登录用户界面与用户界面有关Windows用户切换屏幕。 winlogon.exe属于 Windows登陆管理。它处理系统上的登录和登录过程。
userinit.exe管理启动时不同需要的启动顺序,如建立网络连接和启动 Windows shell,
由winlogon.exe 调用。
lsass.exe负责加强系统安全策略,检查登录系统的用户,创建安全令牌。
services.exe 启动和停止系统服务管理。该过程在系统指导下自动启动服务
统一关闭时停止服务。
svchost.exe 它是从动态链接库运行的通用服务主流程名,属于微软服务主流程。启
动时,svchost.exe构建必须加载的服务列表,检查服务登记表服务。
explorer.exe叫Windows资源管理器,称用户 shell,从中我们可以看到熟悉的任务栏、桌子
可以通过任务管理器停止。它有命令行选项。
Slsvc.exe管理所有 Windows许可活动。
spoolsv.exe 管理所有本地和网络打印队列,控制所有打印工作。
lsm.exe称为本地会话管理。主要用于管理终端服务器连接 。{