Just had the same problem if you have an xp cd boot with that then choose the recovery console option and then run chkdsk if you add the /r switch it checks the drive for bad sectors and file errors
so command would be chkdsk (drive letter:) /r
Once thats run through boot back into windows and to cancel that boot time scan open up a command promt and type in the command chkntfs /d this restores the default disk checking behaviour.
As for what causes the problem im in the dark but the above will get the disk checked.
If you dont have a xp cd you can download the xp boot up floppies from microsofts site (6 disks) and that should get you to the recovery console also.