From: John John - MVP on
SC Tom wrote:

> Since the bootstrap
> loader is handled by BIOS, I would bet that's where the information to
> access the hibernation file is loaded.

No, the information to load the hiberfil.sys file is contained in ntldr.

John
From: John John - MVP on


njem wrote:
> On Jan 21, 10:00 pm, John John - MVP <audetw...(a)nbnot.nb.ca> wrote:
>> Ntldr looks for and parses the hiberfil.sys file, if the file is
>> found to be valid it is loaded into memory and the Windows kernel takes
>> control of the session. Any changes that you make to the computer after
>> it is shut down can potentially prevent the computer from resuming from
>> hibernation, undocking a laptop or something as simple as
>> plugging/unplugging USB devices can prevent the computer from
>> sucessfully resuming from hibernation. I suspect that removing your
>> battery for an extended period resets certain settings in the BIOS and
>> this prevents the computer from resuming from hibernation. When the
>> computer successfully resumes the hyberfil.sys file is marked as
>> inactive, this prevents ntldr from loading a stale hiberfil.sys file.
>>
>> John
>
> I think we're all working in the dark. As noted to SC Tom, if it were
> strictly an OS function then bios wouldn't have to support it.

The computer has to be ACPI compliant so that the operating system can
tell it to shut itself off. The devices also need to be Plug and Play
compliant, Plug and Play also requires that the computer be ACPI compliant.

http://blogs.msdn.com/ntdebugging/archive/2007/06/28/how-windows-starts-up-part-the-second.aspx
Ntdebugging Blog : How Windows Starts Up (Part the second)

http://www.tar.hu/wininternals/ch05lev1sec1.html
Boot Process

John
From: Yousuf Khan on
njem wrote:
> I think we're all working in the dark. As noted to SC Tom, if it were
> strictly an OS function then bios wouldn't have to support it. And I
> had one case that would conflict with the scheme you described. I had

The BIOS has to support hibernate to the extent that it needs to be an
ACPI-compliant BIOS. ACPI contains internal processor information that
is needed to get it to hibernate or go into standby.

But the BIOS' CMOS doesn't store any flags that tell it to go into
hibernate.

Yousuf Khan
From: njem on
On Jan 22, 1:59 pm, John John - MVP <audetw...(a)nbnot.nb.ca> wrote:
>
> http://blogs.msdn.com/ntdebugging/archive/2007/06/28/how-windows-star...
> Ntdebugging Blog : How Windows Starts Up (Part the second)
>
> http://www.tar.hu/wininternals/ch05lev1sec1.html
> Boot Process
>

Well I read the references, but it leaves me wondering why that time I
deleted the hiberfile it still tried to resume. Oh well. At least on
laptops I know the battery trick works.

Thanks,
Tom
From: Pavel A. on
"Yousuf Khan" <bbbl67(a)yahoo.com> wrote in message
news:4b5a4ccb$1(a)news.bnb-lp.com...
> ... If a hibernate flag were set in the NVRAM of the BIOS, then if you had
> Linux installed on the same machine, it too would be hibernated. You can
> hibernate Linux and it won't affect Windows, and vice-versa. It's just a
> flag that's set in the filesystem of each operating system's boot drive.

What would be the desired user experience?
Suppose you have OS A and OS B on same machine, and hibernated OS A.
Would you then prefer OS A to resume automatically, or have a choice to boot
OS B?

The "new" boot datbase of NT6 has a Resume object parameter,
maybe exactly for this purpose - let to choose what happens on resume ?

Regards,
-- pa