系统启动故障及解决办法

预启动阶段

1. post
过程-开机自检:这是每个计算机的电源接通之后,必须要做的第一件事情.post将检查硬件,是否有内存,是否有键盘以及scsi卡等等.虽然这是一个核操作系统无关的过程,但是他却是保证系统正常启动的第一个步骤.

2.
一旦自检完成,计算即将查找启动设备,并将MBR-main boot record(主引导纪录)调入内存.

典型故障:
开机以后蓝屏,"operating system not found",提示"invalid partition table"

这些错误信息的出现是因为Mbr遭到破坏;

解决办法:
用系统启动盘(软盘或者安装光盘)启动计算机,然后执行下面的命令:

Fdisk.exe /mbr
Fdisk /mbr
这个命令可以在硬盘上无条件地写入主引导程序和分区表,并且不对dos引导扇区-Dbr-dos boot record,文件分配表和目录区进行初始化;也就是说,执行fdisk/mbr,可在不破坏硬盘上原有数据信息的情况下,重建主引导程序和分区表;他对单纯感染嵌入式引导区病毒的硬盘,可以起到清除病毒的作用;

Fdisk
ms-dos,windows 95/98/me中的标准命令,windows NT/2k/XP用户,可以采用下面的办法修复主引导纪录:

启动系统故障恢复控制台,在命令提示符下面输入fixmbr,在出现警告信息的时候按Y,最后输入exit退出故障回复控制台;

3.
计算即将查找活动分区,引导扇区,并将其装入内存;

4.
开始调用Ntldr,Ntldr是系统加载器,他是第二阶段的关键部分;

Plus:Mbr,
或者说master boot record的缩写,中文意思就是主引导纪录,硬盘的0磁道第一扇区称为MBR,他的大小是512字节,而这个区域可以分为两个部分:i,pre-boot(预启动区),446字节:ii,第二部分是partition table(分区表)64个字节,该区相当于一个小程序,作用是判断那个分区被标记为活动分区,然后去读取那个分区的启动区,并运行该区中的代码.最后两个字节是一个标识符,用来表明这个扇区的结束,其二进制数值为0x55AA.
1.
Ntldr开始运行之后,它首先将处理器的实模式改为32位平滑内存模式;

解释:实模式和32位平滑内存模式:
两者都是电脑系统的寻址方式.实模式指的就是16位模式,运行比较稳定.平滑内存模式则在寻址范围和速度上有明显的优势.

2.
启动小文件系统(例如fat,ntfs),以便从磁盘上访问文件;

3.
随后,Ntldr将访问第一个文件:boot.ini文件,并且根据文件的内容在屏幕上显示启动菜单;

4.
如果用户选择的不是win2k(或者winXp)操作系统,那么Ntldr将调用bootsect.dos,将控制权交给她,并且启动所操作的系统,否则,Ntldr将运行Ntdetect.com文件;

典型故障

当妳选择了其他操作系统之后,出现了错误信息:I/O error accessing bot sector file
Muti(0)disk(0)rdisk(0)partiton(1)/BOOTSS

这种情况是由于找不到启动分区造成的,一般出现在安装了多个操作系统的计算机上.当妳在已有的操作系统-例如win98上安装win2k的时候,安装程序会将原有的启动分区(一般为0分区)保存成bootsect.dos,然后安装程序会将win2k的启动分区放到0分区上.因此,bootsect.dos是在启动的过程中创建的,无法像其他丢失的文件一样可以从光盘上面复制过来,那么,如何解决这种情况?

为原来的操作系统重新生成一个启动分区.例如:对于win98,只需要用win98的启动盘启动系统,然后在命令提示符下输入sys c:,

创建bootsect.dos:

a,
win2k安装光盘放入光驱,启动计算机;

b,
在出现欢迎屏幕后,按两次R;

c,
当安装程序运行到修复任务选想的时候,选择"检查启动扇区"选项,然后将光条移动到"继续(执行所选任务)"上按回车;

d,
跟随安装向导继续,最后会看见"安装程序已完成修复"的提示;

e,Reset;

5. Ntdetect.com
将收集计算机硬件方面的信息,这些硬件包括:计算机ID,适配卡类型,显卡,键盘以及鼠标,软盘,com口和并口等等.一旦信息收集完成,Ntdetect.com会将信息传递给Ntldr,并将信息写入注册表中的hkey local machinehardware分支;

可以看到:启动阶段调用了3个非常重要的文件:Ntdetect.com,boot.inibootsect.dos.而这个过程也是安装了多个操作系统经常出现问题的地方;

典型故障

计算机启动时:
没有出现启动菜单;

这种情况是将显示操作系统列表的时间设为0秒引起的.解决的办法是,我的电脑,属性,高级,启动故障恢复,显示操作系统列表...(修改时间数值)

典型故障
当计算机启动的时候出现:
Ntldr is missing,press any key to restart...

Ntldr
文件丢失,出现错误会造成这个故障,其它类似的故障还有,Ntdetect.com is missing..等等,利用下面的解决办法:

-
利用win2k安装光盘,这个文件存放在系统安装光盘的i386目录下面,因此,只要将其复制到硬盘就可以了;

a,
放入win2k光盘,启动win2k安装;

b,
出现欢迎界面的时候,R;

c,win2k
修复选项界面中,R;

d,
当提示选择修复选项的时候,M;(手动修复)

e,
选择 验证win2k系统文件;

f,
选择 继续(执行所选任务),然后回车,

g,
出现紧急修复盘界面:如果你有紧急修复盘的话,插入紧急修复盘,根据提示修复安装,reset;

h,
如果没有紧急修复盘,L,用光盘修复;

使用控制台:输入map,记下win2k安装光盘所在的光驱盘符L;
输入: copy L:i386tldr c:
提示是否覆盖,Y;
输入exit重新启动;

1. 在这个阶段,Ntldr将调用Ntoskrnl.exe,并将由Ntdetect.com收集的硬件信息传递给它,同时被调用的还有hal.dll文件.如果你有多个硬件配置文件,当运行到这一步的时候,你会在屏幕上看到要求选择硬件配置文件的信息.另外,Ntldr也将从注册表中调用所有启动值为0x0的设备驱动程序.如果你在boot.ini文件中有" /sos"参数,一般在" /fastdetect"后面,那么妳将看到调用设备列表;

典型故障

启动的时候出现错误信息:"Ntoskrnl.exe missing or corrupt on bootup"(ntoskrnl.exe丢失或者损坏)

如果出现下列情形之一,会出现ntoskrnl.exe错误出现:

-
新增加了一个硬盘或者改变了原有的分区,例如:删除了原来的一个分区或者将原来的两个分区合并,都可能导致boot.ini文件中的[bot loader]部分的default值丢失或者无效,从而在启动过程中无法找到启动所需的文件;

Ntoskrnl.exe
文件被删除或者被损坏;

解决办法

使用启动盘启动操作系统,编辑boot.ini文件,检察与下面一行类似的命令中是否有错误:

muti(0)disk(0)rdisk(0)partition(1)WINNT="microsoft windows 2000 professional" /fastdetect

这一行表示在第一个ide硬盘上rdisk(0)的第一个分区上partition(1)装有win2k,大家可以根据这个规律来查找自己的boot.ini文件中的数值是否正确;

如果没有发现错误,请将win2k安装光盘放入光驱,然后再命令行输入:
expand x:i386toskrnl.ex_ c:toskrnl.exe
回车,提示文件已经释放,取出光盘,reset;

典型故障
Hal.dll is missing...

这个故障是因为缺少hal.dll文件引起的,解决的办法是:

a,
启动故障回复控制台;

b,
输入: expand x:i386hal.dl_ c:windowssystem32hal.dll

c,
输入exit,回车;

2.
内核初始化.这一步将对内核以及上一步中调用的硬件驱动程序进行初始化.

plus:Hal.dll,
是英文hardware abstraction layer,硬件抽象层的缩写,这种技术提供了驱动程序与硬件之间的借口,可以防止应用程序直接访问计算机系统内存,cpu以及硬件设备(如声卡和显卡),从而使系统可以跨越多种硬件平台运行;

服务调用阶段

这个阶段将启动会话管理器(smss.exe),会话管理起将读取必须调用的程序列表,在注册表的bootExecute项中,然后设置内存分页并且启动win32子系统;

win32
子系统启动阶段

一旦win32子系统启动,会自动运行winlogon.exe,同时移动本地安全管理(lsass.exe)并且显示登陆对话框.然后回运行服务控制器SCreg.exe,服务控制器会检察注册表中启动值为0x2的服务项目,然后调用这些服务,值为0x3的服务表示需要手动启动,值为0x4的服务表示禁用;

用户登陆阶段

最后就是用户登陆阶段了,一旦用户可以登陆进系统,那么也就表明整个启动过程已经结束,成功登陆之后,当前设置也被自动保存为"最后一次正确配置-last known good"以备以后使用;

如何启动故障恢复控制台

1.
使用win2k光盘启动计算机;

2.
在欢迎界面中按R;

3.
c选择使用故障恢复控制台修复win2k安装;

4.
输入需要修复的windows所在盘符前的序号,回车;

5.
输入管理员口令,回车

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值