I suppose they have a clever boot loader with advanced drivers?
I suppose they have a clever boot loader with advanced drivers?
Well, all: the file may be fragmented. Just store information about where to find all the blocks in the first block of the hibernation file (alternative view of this is that you have a very simple alternative file system on the disk that stores only one file (or a few, if you also want the ability to find the kernel for a cold boot)
Risk with such approaches is that they may not survive defragmentation of the drive. That's a minor risk for a hibernation file, I would say.
Also, you can only hibernate an OS that knows about hibernation. Such an OS would be foolish if it wouldn't write the current location of the hibernation file whenever it went into hibernation.
So, this only is a problem if you hibernate your system, defragment its disk on another system using a defragmenter that doesn't know about hibernation files, and then try to wake up from hibernation. That might happen to people using an old version of a defragmenter, but I doubt it will happen often.
I remember when GRUB first came out, thinking it was somewhat heretical to have filesystem code in a boot loader.
The biggest gotcha with LILO is that thing about writing the config to the boot sector. But then i have not used it in some years...
Grub2 OTOH is definitely an abomination. Whoever thought it a good idea to require compiling the bootloader config into a binary should be given a thorough slapping with a medium-sized trout. That thing is an overengineered solution looking for a problem.
† in the same way that autotools is "convenience" saving you from writing makefiles and configure scripts.