You don't think I'm that stupid, do you? 😉I'm not saying that everyone that changes hardware while their computer is in hibernate did it intentially, but they way I read it, it sounded that way
You don't think I'm that stupid, do you? 😉I'm not saying that everyone that changes hardware while their computer is in hibernate did it intentially, but they way I read it, it sounded that way
Let me put together a proper, comprehensive answer first. I'll put it on my to-do list. 🙂AndyHui, any chance they question may get added to you FAQ?
That does not occur.
The Win2K boot loader loads the Hibernation File straight without giving you the option of booting to Windows 98.
Of course, if you are running a 3rd party boot loader....
Interesting accusations you make here. Do you have any data to support these conclusions?Originally posted by: VirtualLarry
Originally posted by: AndyHui
It can cause problems when hardware doesn't initialise properly.
This is a real problem when you forget that you have hibernated the system, and then do a hardware upgrade. Upon boot, the system just goes wacko.
Even more serious, is the fact that the OS filesystem/HD caches, don't get flushed/refreshed from coming out of hibernate. So if you dual-boot, and choose to hibernate W2K, and boot into Win98se, and then restart and then un-hibernate W2K, if you made any filesystem changes at all (talking about FAT32), then W2K will NOT see those changes, and if then then write any data back to the HD/filesystem, from the stale hibernated buffer caches, you can SERIOUSLY screw up the filesystem.
I think that hibernate is intended for, and should ONLY be used on, laptop computers. (But not ones set up to dual-boot.)
The stupid thing is, it should be possible to design the hibernate feature such that this isn't an issue, by flushing all dirty caches when hibernating, and invalidating all caches when coming out of hibernate, such that they need to be re-loaded. (Much in the same way as when disabling and re-enabling a CPU for a hot-swap in a multi-proc system.)
FAT32 volumes even have a timestamp written, upon every FS update. This is used for some RAID purposes, but it could also be used for at least partial checking of FS updates newer than when the system was hibernated.
But of course, MS doesn't get it right. I don't think it's even possible for MS to "get it right". They make so many fundamental design mistakes, it's amazing that their software even works at all. So IMHO, because of the FS-corruption bug, I would have to say that in anything but the most trivial cases, hibernate is broken.
Originally posted by: ugh
Dude, I'm not blaming anyone. I'm just just saying that I had a problem with the sound card I used last time. And BTW, it was using Win2k's driver.
Drivers that ship with W2K are not written by MS. They're written by the hardware vendors and shipped with the OS.
Originally posted by: AndyHui
That does not occur.So if you dual-boot, and choose to hibernate W2K, and boot into Win98se, and then restart and then un-hibernate W2K, if you made any filesystem changes at all (talking about FAT32), then W2K will NOT see those changes, and if then then write any data back to the HD/filesystem, from the stale hibernated buffer caches, you can SERIOUSLY screw up the filesystem.
The Win2K boot loader loads the Hibernation File straight without giving you the option of booting to Windows 98.
I'm aware of the dirty/clean shutdown bitfield.For FAT32 volumes, I believe that there is a bit somewhere in the same bitfield that stores the state information about "clean" vs "unclean" shutdowns. (The bit that auto-scandisk on boot checks in Win9x.)
My point is that it is not possible to distinguish between a shutdown and a hibernate without powering the system on.
Surely, the NTLDR knows, somehow. I'm pretty sure I remember reading about a "hibernated" bit set in the same bitfield along with the "unclean shutdown" bit. I'll see if I can find that info again. It might also store some sort of header or signature at the beginning of the HIBERFIL.SYS file, that indicates if it should be used or not.
Originally posted by: Nothinman
My point is that it is not possible to distinguish between a shutdown and a hibernate without powering the system on.
Surely, the NTLDR knows, somehow. I'm pretty sure I remember reading about a "hibernated" bit set in the same bitfield along with the "unclean shutdown" bit. I'll see if I can find that info again. It might also store some sort of header or signature at the beginning of the HIBERFIL.SYS file, that indicates if it should be used or not.
He means no way to distinguish for you, the user that wants to change hardware while the box is off. You can't tell if it's hibernated or shutdown without turning it on first.
Originally posted by: NogginBoink
The system "knows" to come out of hibernate by changing the ARC path in the boot.ini.
However, from a user's perspective, looking at the machine, there's no clear indication that the machine is in a suspend state vs. a true power off state.
Originally posted by: AndyHui
You've obviously never added RAM while the system was down in hibernation, have you?
I have also had problems with older version of the IAA drivers, where drives would not work after coming out of suspend.
Also i dont understand why u guys are using hibernate state...does not ur computer totally go off in syspend mode...