win7不能正常启动怎么办(Win7启动过程及常见故障)

电脑每天都要经历一个启动的步骤,了解启动过程和常见故障对理解和维护很有帮助。下面简单介绍一下:首先是一个启动过程的例子。我的电脑在BIOS中设置启动硬盘。⑴、 ......

  每天使用计算机必须要经过的一个步骤就是启动,而了解到启动的流程及常见的故障,对于理解对于维护有很大帮助的。下面就来简单介绍一下:

  一、启动过程

  举例,我的电脑在 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 系统所在的盘里的

  windowssystem32winload.exe 文件,并且将控制权交给 winload.exe(windows 内核载入程

  序) 。

  ⑻、Winload.exe加载Ntoskrnl.exe和 hal.dll(windows7 内核、硬件、服务)等;

  ⑼、接下来 Ntldr 从 HKEY_LOCAL_ MACHINESYSTEMCurrentControlSet 下读取这台机器安装的驱动程序,然后依次加载驱动程序。 ⑽、驱动程序加载完成后,最开始只有 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所示:

  图1请点击此处输入图片描述

  ⒀、运行空闲(Idle)进程,等待您登录系统了,从而启动整个 windows 7 系统。用户

  输入帐号与密码后,Userinit.exe 进程执行用户环境的初始化工作,然后查询注册表

  HKLM/SOFTWARE/Microsoft/Windows NT/CurrentVersion/Winlogon/Shell 键的值,默认为

  explorer.exe,启动它。然后 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的设置找到系统并启动,所以反馈出如上信息。

  2.6、winload.exe 或内核文件故障

  常见提示:蓝屏 、一般会有损坏的文件的提示。

  症状分析:大多情况下是系统文件被病毒或者什么原因破坏,可以尝试过 PE 里替换系

  统文件,有时PE方法无效则重装会更快解决问题。

  2.7、驱动故障

  常见提示:出现win7 logo界面后蓝屏或黑屏

  症状分析:自然就是驱动无法加载造成无法启动,黑屏好解决,大多显卡驱动问题。蓝

  屏基本没救了,重装系统。

  2.8、服务项或启动项故障

  常见症状:开机时卡在欢迎界面,或者进入桌面后只有一个鼠标等等等各种在欢迎界面

  时或界面后的不正常现象。

  症状分析:

  1)系统关键服务被禁止;

  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叫本地会话管理。它主要用来管理终端服务器连接。

  conime.exe 叫做控制台 IME,主要用作亚洲语言。可以通过修改注册表加载。

  dllhost.exe 是COM+主进程控制IIS中的进程并被许多程序使用。

  winmgmt.exe 是 Windows 客户端管理核心组件。当首次客户端应用程序连接或管理应

  用程序连续请求它的服务时它初始化。

  ntdll.dll是描述 NT 层DLL(NT Layer DLL)的文件,它包含 NT kernel的功能,实际可看作映射表。