Hibernate

  • Thread starter Thread starter Craig Graham
  • Start date Start date
C

Craig Graham

We have a bit of test gear we've developed that's based around a single
board PC running Windows 2000. It presently takes around 7 minutes from
power on to the app being there ready for use. The plan is to not have it
boot very often and to use suspend to save power between recharges.

However, if I free up enough hard drive space to use hibernate, the machine
can go from power on to ready for use in around 45 seconds. And that's using
a microdrive- I gather we could increase the speed by using a compact flash
card. The problem with hibernate is that the user isn't going to wait the 45
seconds needed to write the hibernate file.

How easy is it to prevent Windows deleting the hibernate file on startup? As
long as we avoid powering down during a write, we can then simply kill the
power when the unit isn't needed and always restore the system from the same
hibernate file, with the application reloading things where necessary when
it comes back up. I think 45 seconds isn't a huge length of time, and in
conjunction with suspend could increase the time between charges quite a
lot, since the units will only be occasionally used even though they've been
signed out and someone's carrying them around.

Also, how can I change where the hibernate file is stored? The system runs
from a 1 gig microdrive, but I can put an additional CF card in there to
hold the hibernate file if it gives a significant speed increase. Or even a
PCMCIA hard drive, if that's even faster. I have to keep the system on the
microdrive, though.
 
Craig

Parts of the file system (at least with NTFS) is stored in hiberfil.sys.
Not deleting this file, then use the file system, and then killing the
machine would - if Windows is stupid enough to reuse the file - result in a
corrupt file system and 0x7B STOP error.

It isn't possible to relocate hiberfil.sys. The reason to this is that it
is read so early during boot that partitions other than c: are not
enumerated yet.

Best regards

Bjorn
 
Craig said:
The problem with hibernate is that the user isn't
going to wait the 45 seconds needed to write the
hibernate file.

Who says they have to wait?

I can put my laptop in suspend, and it has triggers that'll cause it to
wakeup and goto hibernate mode if the battery gets low. Why not emulate
this?

Let the user think they've shutdown immediately, meanwhile you suspend
or hibernate in the background.
 
Back
Top