It sounds to me like your drive has been run one too many times.
If it comes to the worst and your drive has crashed, I recommend you do the following (according to Google searches and advice from others):
1. Put your drive in an airtight bag, and stick it in the freezer.
2. Get yourself some new hard drive space in preparation for some massive file dumping.
3. Come back for your drive in a while (some say a day or two, but I've still got my drive in the freezer even after a few weeks), and try to connect the drive back up to your computer.
With luck on your side, you'll be able to boot it up, and at this time recover whatever you can. Assuming the drive may fail again, you'll be be running on limited time, so you'll have to prioritize files if there's too much to move. This method has served various others according to what I've googled on the subject, and I'm currently attempting to recover a drive I lost last summer. I just hope that trying the method multiple times is possible - I lost a completely filled 500 GB drive, a substantial blow to my anime addiction.