I believe it copies the current system state to a file on the HD and then powers the machine off. When you boot back up, it loads that file back into memory and you are back where you left off.
Seems stupid to me. If i'm going to shut my machine off, I'll just shut it off and when I need it again, I come back with a clean slate.
Windows doesn't handle memory very well (surprise surprise). I only reboot my machine when it starts acting flaky. XP is pretty damn sweet, so lately I've been getting like 20+ day uptimes. However when I check memory usage before rebooting, i'm using like 500+ megs of memory. After a reboot, its at 150 or so.