Sep 262008

When you boot your Vista you might be seeing the following message and this could happen after running windows update on vista.

Windows failed to start.  A recent hardware or software change might be the cause.  To fix the problem:

1. Insert your Windows installation disc and restart your computer.
2. Choose your language settings, and then click “Next”.
3. Click “Repair your computer.”

If you do not have this disk, contact your system administrator or computer manufacturer for assistance.

File : ntoskrnl.exe

Status : 0×0000098

Info : Windows failed to load because a required file is missing, or corrupt.

Solution 1

You’ll need to manually restore some files again to the version that came with your Windows installation DVD. Use the Windows DVD to boot into repair mode and restore these files using the command prompt:

In your “\Windows\System32\” folder, restore just these files:


ntoskrnl.exe (You shouldn’t need to replace it because it’s not really corrupted.)

ntkrnlpa.exe (Same as ntoskrnl.exe. Try booting without replacing them first)

And in your “\Windows\System32\Drivers” folder, restore these:







Make sure to rename or backup the files you’re going to replace (just in case you do something wrong). All the original files you’ll need to replace your “corrupted” files with should be found inside the virtually mounted drive (X:\), so they should be in “X:\Windows\System32″\ and “X:\Windows\System32\Drivers\” (you don’t need to “expand” any files like the old XP days, you’ll just need to use basic “copy” and “rename” commands).

HINT: If you’re not too comfortable using the command prompt, you can use the notepad’s file browser to copy and paste files from inside the repair DVD. Just type “notepad.exe” in the command prompt and set the file type to ALL inorder to see non-txt files.(WARNING: It doesn’t prompt you when overwriting files and It doesn’t show hidden or system files, but you shouldn’t need it to anyways)

After it boots successfully you should try to reinstall SP1 again BUT DO NOT USE WINDOWS UPDATE TO REINSTALL IT, DOWNLOAD THE STANDALONE RELEASE . It’s highly recommended to reinstall SP1 again because eventhough after you’re going to boot, Windows will say that it’s removing all SP1 files because the install failed, it actually doestn’t replace most of the system files. Your copy is going to be a hybrid between no SP and SP1. When you reinstall SP1, Stage 3 is going to be repeated twice, once before Stage 1 and then again after Stage 2. But that is completely normal.

You should’nt need to restore any other files for you Windows to boot. Don’t just replace all the files inside your “System32\Drivers\” folder like what that article said, that will probably do more harm than good. I used the debug boot log file from inside my Windows folder (ntbtlog.txt) to determine which files Windows is using while attempting to boot, and then I checked their file version from inside the repair DVD (right click>properties>details or just leave the mouse pointer on the file for a second); If it was 6.0.6001.18000 (SP1 release version), I replaced it with the old version from my boot DVD.

hal.dll did actually give me some trouble because it wasn’t in the X: drive. And unfortunatly it’s the VERY FIRST file the Windows Loader tries to load at boot so you’ll have to get it somehow. You can use the Automatic Repair Method as follows

If you look inside your “C:\Windows\System32″ folder, You will see three files: hal.dll, halacpi.dll, and halmacpi.dll. You will likely see that hal.dll is the same size as one of them. That’s because it’s exactly the same file just copied and renamed. Basicly if you have a multi-core PC you’ll need to use halmacpi.dll and rename it to hal.dll, If you’re running a single core PC you need to use halacpi.dll instead. The “winsxs” folder only has these two files and not hal.dll straight up because it kinda depends on the type of processor you’re using. So look inside your “winsxs” folder for folders that start with “x86_hal.inf_XXXXXX_6.0.6000.20500_none_XXXXXXX” and you’ll find these two files inside along with a “hal.inf” which you won’t need to replace (it’s inside the “inf” folder in your Windows directory), and then copy whichever one you should use -depending on your processor- to your “C:\Windows\System32\” folder. Now that I think about it, It’s probably better if you replace both halacpi.dll and halmacpi.dll inside your System32 folder too (Just to be on the safe side).

NOTE: You’ll probably find two or more folders that start with “x86_hal.inf” in your “winsxs” folder, but make sure:

1)The folder starts with just “x86_hal.inf” not “x86_hal.inf.resources”

2)The version number in the folder name is NOT “6.0.6001.18000″ because that’s SP1 one that causes the problems.

or you can look for it in your Windows folder inside your “winsxs” (ex C:\Windows\Winsxs\) folder (a folder that Vista uses to basicly backup every version of every file ever made for Windows Vista) But it’s kinda of tricky because:

1)The file is deep inside “winsxs” which has TONS of folders and files

2)The file itself is kinda of tricky to back up because the exact file isn’t actually there.

Source from here

Solution 2

1) Close all apps running and shut down if you have any Anti Virus program

2) Disconnect all usb (EXCEPT MOUSE)

3) Download the stand alone 5 language SP1 version from here

4) Now boot with th Vista OS CD and do a repair using the following procedure

  • Insert your Windows Vista DVD and then restart your computer.
  • Press any key or the appropriate function key (depends on your computer) to boot to the DVD.
  • When your computer has booted to the DVD select your language and then press Next.
  • Click Repair your computer on the next screen.
  • Select the operating system your want to repair. There is usually only one here unless you’re dual booting.
  • Click Startup Repair on the next screen.
  • The Startup Repair tool will attempt to fix your computer and get it booting up again.

You don’t have to do anything from here on. Your computer might reboot a few times and it might be a few minutes before it finishes.

5) Now run the downloaded SP1

It goes thru the following (at least mine did)

Long time to load (green bar)
Installing Stage 1 of 3
Installing Stage 2 of 3
Installing Stage 3 of 3
Installing Stage 1 of 3
Installing Stage 2 of 3
Installing Stage 3 of 3

6) Finally it starts up with the Vista Screen Saver – hit any key and logon.

7) Now re-connect all USB and re-start any programs.

Incoming search terms:

  6 Responses to “Fix for ntoskrnl.exe missing or corrupt. Error 0×0000098 when booting up Vista”

  1. I successfully overcame this problem on my laptop which is a dual boot with Windows Ultimate and XP Professional. My resolution, I believe, was easier and less risky than the solution described above.

    Up front, I first tried calling MS, but because I have an OEM version of Windows Ultimate, they were going to charge me for support. Forget that.

    Then I called Gateway since my laptop was under warranty. The connection to India or Pakistan was horrible, and the advice they gave me was even more horrible, restore my laptop from scratch. Forget that!

    What I did was the following:

    1) You DON’T want to use Windows Update to reinstall SP1, but instead download the standalone release:

    2) Disabled my AntiVirus software, and shut down any other windows that need not be running. Also, disconnected all unneeded USB connections.

    3) Executed the file I downloaded from the MS url in step 1). It gets past installing stage 2 of 3.

    4) When it asks to restart the laptop, I instead chose to shutdown.

    5) Laptop shut down without going through the SP1 step installs. Very good.

    6) Power back up, press F8 and choose to go into safemode.

    7) At this time, the SP1 install displays it is in stage 3 of 3. Very slow at this point, I went to bed because it seemed to be locked on 38% complete and was going nowhere in a hurry.

    8) Got some much needed sleep for me. :)

    9) Awoke in the morning and found my PC up and running.

    10) Looked at my Windows Updates, did not find the SP1 still showing as needing to update. Very good sign I had this problem licked.

    11) Shutdown my PC and it didn’t go through the SP1 install anymore. Another good sign.

    12) Started up my PC and it booted up, just fine. Problem resolved!!!

    13) Checked my BigFix screen, and where I had nearly 53 prior problems, all of them were now resolved. This was a bonus for me.

  2. I can’t find hal.dll on the Vista DVD?!? It is NOT in the System32 folder…

  3. So, I went through this and was successful, however I get back to the install of SP1, and we go through the whole process again… Basically, when I reboot after replacing and backing up all files, it just goes back to the point where it installs SP1. Is there something I can do to make it NOT try to install SP1 after I go through all of this?

  4. Hi
    My name is Ron. I can not get any thing on my screen. All I get is the white arrow in the middle of the screen. I could really use some help here. I am a novic with pc’s. Can you help. I liked your artical but it was a little hard to follow every thing.


  5. perfect soloution…!
    but i had to replace
    PSHED.dll, tcpip.sys, ntfs.sys , ecache.sys
    back to non sp1 versions…?
    I was given erorrs when rebooting with the above file specified
    but am up and running now i think ?
    mine also stop for a long time on 38%
    when configering updates (just waiting now)
    thanks for the time you spent checking file versions so I didnt have too
    thanks saved me a bunch of time
    I have made a file structure with all files i changed in and will upload if any one wants me too
    then updating files can be done with two XCOPY commands



 Leave a Reply



You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>