Slow Boot at XP Logo

The Problem(s)

A machine came into the shop this week with a litany of issues, starting with a corrupted BIOS, an overheat problem that eventually led to the power supply, and an inexplicably slow boot time, hanging most notably at the Windows XP logo and scroll bar. The latter of the issues proved a challenge worthy of my efforts.

The Flailing Hunt for a Fix

We start with the basics. MSConfig, Hijackthis, and Sophos Anti-Rootkit (bullocks to RootkitRevealer) revealed no significant abusers. A defrag set the bits in order. Services and start-ups were reduced to good measure. And all without change to the incredibly long boot.

Some quick reading introduces me to a program called Microsoft Bootvis: A tool for recording and visually analyzing the sequence of events taking place during XP's boot cycle. In many circumstances, I'm told, Bootvis can cut startup time in half just using it's automated procedures. Though in my case, automation did not yield significant results.

The visualizations, however 1.) told me that the boot sequence was taking around 90 seconds start to finish, and 2.) about 70 seconds of that was dominated by two processes: an 'AVG Antivirus' dll file and fltmgr.sys.

First thing, I uninstalled AVG, immediately shaving twenty-five seconds off the boot time. This still left fltmgr.sys eating up fifty seconds all by it's lonesome. And on a 2.8Ghz Hyper-Threaded P4 with a gig of ram... Uh-uh. That boot is still way, way too slow.

I looked into fltmgr, of course, but found it an underlying construct of the OS - one that, in all likelihood, was supposed to be there, doing whatever it was doing throughout the boot.

I then turned my eyes to the visualization in Bootvis that showed the Prefetch process overarching the drivers sequence and taking just as long as any of the drivers. So, after some reading, I deleted the contents of C:\Windows\Prefetch and changed the registry to prefetch only boot items thereafter. This yielded no change in boot time.

More reading... Someone mentions the file indexing for XP's "high speed" search as a cause of slowdowns. I turn off indexing on the c:\ drive and disable the service. No change.

Disable print/file sharing. Nope. Network drives? Nope. Disable all superfluous hardware in the device manager: Out goes modem, network adapter, floppy drive and controller. Nope. Physically detach secondary IDE channel along with CD/DVD drives. Nope.

The Solution

In the Device Manager, under IDE Controllers, I finally found - stumbled onto really - that both channels had somehow reverted to PIO mode. This can prove a bit of an annoyance when it happens to your CD drive, and you suddenly find that burning a disc takes an hour or more; But when it happens to your hard disk... Well, you've lost gobs and gobs of bandwidth to an inferior data transfer mode, the likes of which the word 'bottleneck' cannot begin to describe.

The desired mode here is DMA and the easy fix to get your IDE channels recognizing their DMA capability again is to simply uninstall them by right clicking the offending channel in the Device Manager list and selecting 'Uninstall.' (They will reinstall themselves on reboot.)

After uninstalling both PIO-moded channels and rebooting, DMA 5 capability was detected once more and my customer shall be happy indeed to report - to friends, colleagues, and total strangers alike - a reduction in OS boot time from ninety to thirty seconds. I say again, :90 to :30. (That's with AVG reinstalled.)

And all this regards merely the boot time. Imagine how slow every other operation that required a call to the disk must have been. I wouldn't have noticed it in a few hours doing a repair (especially while simultaneously working on two or three other systems) but the disk access must have been insufferable!

Once a program is loaded into memory, of course, even the end user wouldn't easily notice a difference in performance, but that first double-click to open a program must have been taking... Well, by these figures I suppose it was taking at least three times as long to perform every disk operation!

The more I think of it the more I think this woman owes me some baked goods for figuring this one out, don't you?

1 comment:

  1. God. You can't even IMAGINE how thankful I am right now! I spent over 6 hours tonight trying to determine why my PC has become so horrendously slow: defragmented everything over and over, deleted half of the software installed, cleaned registry, optimized MFT, optimized via BOOTVIS, but PC still froze on every operation and vas taking about 110 seconds until logon and another 80 to load fully.

    Then I noticed the fltmgr.sys, googled the boot problem related to it, stumbled - thank goodness - onto your post, went to IDE controllers, found a lone PIO mode one, deleted it and rebooted. It booted in 40 seconds. IN 40 SECONDS. FROM 190 TO 40. All other operations seem lightning-fast now. To make things clearer: both my HDDs are sata-II. I didn't even switch them to IDE mode in bios. It's amazingly ridiculous how such a rudimentary setting can affect performance that much.

    I don't know if you will ever read this, but thank you.