Microsoft KB Archive/259512

{|
 * width="100%"|

Cannot Specify Location of the Windows 2000 Hibernate File

 * }

-

The information in this article applies to:


 * Microsoft Windows 2000 Server
 * Microsoft Windows 2000 Professional
 * Microsoft Windows 2000 Advanced Server

-

SUMMARY
When you use the Hibernate tab in the Power Options tool in Control Panel to enable Hibernate support, there is no option to specify where to create the hibernate (Hiberfil.sys) file. The only apparent location is the system partition, which requires free space equal to the amount of physical memory installed in the system.

MORE INFORMATION
To understand why the location of the Hiberfil.sys file cannot be changed, you must understand how the Windows 2000 boot process works and how the hibernate file is located.

When you turn on your computer, it runs through a Power On Self Test (POST) and then enumerates the disk controller(s) and hard disks. This is done by the computer's BIOS itself; the BIOS determines which controller and hard disk is to be used as a bootstrap device to boot the operating system.

In a typical boot of Windows 2000, the BIOS loads a file called Ntldr from the first active boot device. Ntldr in turn loads the Boot.ini file and displays the Boot menu choices. So far, this whole process relies on BIOS calls to perform these tasks. What happens next depends on where Windows 2000 (the Winnt folder) is located. The system can either continue to use BIOS INT-13 or INT-13 EXT. calls, or it must load a miniport driver (Ntbootdd.sys) if the drive or boot partition is not addressable by using BIOS calls. This is determined by the ARC path in the Boot.ini file. It contains either entries that start with &quot;multi&quot; or entries that start with &quot;signature&quot; or &quot;scsi&quot; syntax. The latter two require that the boot controller's miniport driver be copied to a file in the root of the system partition and be named Ntbootdd.sys. This implies that BIOS calls cannot be used to load Ntoskrnl.exe, the registry, and remaining system files.

The Hiberfil.sys file must be located on a boot device (disk) that is addressable by using BIOS calls for Ntldr to load it. The very first thing Ntldr does is use BIOS calls to look for a Hiberfil.sys file on the system drive. If it is present, Ntldr boots the system by using the Hiberfil.sys file image without displaying choices from the Boot.ini boot menu. There is no way of telling Ntldr where else to look for the Hiberfil.sys file this early in the boot process because the registry, which in theory could contain an ARC path to the file, is not yet loaded.

Additional query words: relocate hibernation

Keywords : kbenv ntboot

Version : WINDOWS:2000

Platform : WINDOWS

Issue type : kbinfo

Technology :