ntoskrnl.exe文件丢失或损坏的问题解决

来源:岁月联盟 编辑:zhuzhu 时间:2008-12-27
周末实在是被微软恶心了一把。

Julia的电脑在一次开机后无法启动,XP提示:


Windows could not start because the following file is missing or corrupt:

system32ntoskrnl.exe.
Please reinstall a copy of the above file.


ntoskrnl.exe文件找不到了,那么这个文件是干什么的?哪里去了呢?

ntoskrnl.exe是winows的一个进程文件,在系统经过预启动和启动阶段后进入内核调用阶段时由Ntldr调用Ntoskrnl.exe, 在WINXP系统中存储了WIN XP的启动LOGO画面。
调用Ntoskrnl.exe文件时将由Ntdetect.com收集的硬件信息传递给它,同时被调用的还有hal.dll文件.

也就是说,如果这个文件丢失或损坏,Windows Xp启动时那个Logo都出不来,也就没有下一步可以看了。

昨天尝试了很多方法,光盘上的copy、解压覆盖,系统上的备份覆盖还是不管用。
最后放弃了,修复安装,结果今天打补丁到某次重起后,问题再次出现。

现在我不能忍受再次重装了,于是反复研究,终于还是找到了一个合适的版本。
在 "c:windowsdriver cachei386"目录下有sp2.cab和sp1.cab文件,存放了不同补丁包的一些驱动文件,我将sp2.cab中的ntoskrnl.exe解压缩出来,终于恢复了系统:

expand sp2.cab -F:ntoskrnl.exe c:windowssystem32

当然首先要用光盘启动到修复模式,进入命令行进行操作。
看来是微软的某个Patch有问题,覆盖之后会导致系统无法启动。
目前的怀疑对象是:KB890859