Run chkdsk or scandisk, look for errors that are reported. Then run after every failure. If the drive keeps getting errors it's only a matter of time.
Back up your data next time you get it up.
When the computer has these random errors can you hear the HD clicking, or
making a consistant noise. i.e., is it searching for something.?
A bad drive will fail whenever it wants, at boot, at loading windows, or at a file operation.