Starting with Windows XP and continuing in Windows Vista, the Prefetcher service will automatically optimize the location of the boot files in your hard drive using Windows Disk Defragmenter. However, this occurs only after a certain number of boots and when it gets around to it (because it runs only when your computer is idle).
Microsoft has a talented team working on the Prefetcher service that even took into consideration your system boot changes. For example, you might install an updated device driver or add new hardware. To solve this problem, the systems will re-defragment the boot files every three days.
Tip: Windows keeps track of the last time that it has optimized the boot file so that it can calculate how often it should run the boot defrag. If you are interesting in finding when the last time was that the boot defrag was run, open regedit and navigate to HKEY_LOCAL_MACHINESOFTWARE\Microsoft\Windows NT\CurrentVersion\Prefetcher, and then look for the key named LastDiskLayoutTimeString.
An operating system that takes care of itself? Yes, Windows is getting smarter and smarter. However, there is still one problem: There is no possible way to directly initiate a boot defrag. The only way is to leave your computer on for a little while without using it at all. If you are impatient and do not want to wait, I have a solution for you.
As I mentioned earlier, the system will initiate the boot defrag only when the system is idle. Typing in a command that will start the boot is not possible. However, you can tell your computer, even when it is not idle, to process the idle tasks. This will indirectly start the boot defrag. Because the boot defrag is most likely not the only idle task waiting to be run, other processes will be run, too, which can cause your computer to appear to be doing a lot of hard work—from a few minutes up to half an hour—as it completes all tasks. During this time, your computer should not be used for any intensive activities such as playing games. If you try to use your computer while the idle tasks are being processed, you will notice slow performance until the tasks are completed.
Perform the following steps to process all idle tasks:
- Click the Start button, type cmd in the Search box, and press Enter.
- When the command prompt opens, type
- Rundll32.exe advapi32.dll,ProcessIdleTasks and press Enter.
- Your computer will now work on the tasks.