So, you schedule CHKDSK to run before boot (or sometimes Windows will schedule it), and it either takes friggin' forever, or tries to run a CHKDSK every time you boot! The problem is that a flag has been set on your drive and isn't being cleared after a successful run. There is a simple procedure to correct this problem, but you have to go through a few screens in Vista or XP to do it.
Check it out at OCModShop.