This morning my 3GS decided to crash and go back to the home screen whenever I opened anything, and when I put it in sleep mode it took about 10 seconds for the screen to come on, then when sliding the unlock bar, it froze at the end.
A reboot fixed it and it's fine now *touch wood*