That grey screen is a kernel panic. Statistically speaking, about 87% of all such failures are caused by bad RAM, 2% by the CPU overheating, and 10% by buggy drivers or kernel bugs. All other causes are pretty much insignificant (<1% put together). (Yes, I'm pulling these numbers out of my backside, but they're probably in the ballpark.)
It is remotely possible that it could be caused by a failing hard drive, but usually you'd be experiencing lots of other problems like being unable to save files, having files and directories suddenly disappear, etc. if a drive were going south that badly. Similarly, if it were caused by the drive being too full, you'd get a warning message telling you that the drive is almost out of space. Thus, I'd be very surprised if the drive has anything to do with it.
If you're running 10.5, switch to Finder, hit command-shift-G, and type in /Library/Logs/PanicReporter, then click "Go". You should see a series of log files for the panics. Drag a couple of the most recent files over onto TextEdit and open them.
If you're running 10.4, switch to Finder, hit command-shift-G, and type in /Library/Logs/, then click "Go". You should see a large file called panic.log. Drag that file over onto TextEdit and open it.
Either way, find the most recent panic, and paste the entire panic message into this thread. I'll help you figure out what's going on once I can see the actual panic message. You might also make sure you are up-to-date on software updates.
For example, my last panic was this one:
Sat Oct 25 19:04:22 2008
panic(cpu 1 caller 0x481BFAAD): IsochStreamRunning during SetPacketSize
Backtrace (CPU 1), Frame : Return Address (4 potential args on stack)
0x47aa7828 : 0x12b0fa (0x459234 0x47aa785c 0x133243 0x0)
0x47aa7878 : 0x481bfaad (0x481c8580 0x0 0x47aa78b8 0x58000)
0x47aa7978 : 0x481bfbbf (0x724bc00 0x1c8 0x2b0 0x6)
0x47aa79a8 : 0x481bec5b (0x724bc00 0x6 0x1 0x1000)
0x47aa79e8 : 0x481aaa24 (0x724bc00 0x17700 0x6 0x1)
0x47aa7a18 : 0x4819e08c (0x4eb6800 0x481d7b80 0x47aa7a68 0x4819e3c9)
0x47aa7a38 : 0x41f97f (0x4eb6800 0x0 0x0 0x0)
0x47aa7a68 : 0x4819c3c1 (0x5804140 0x4819dfbe 0x4eb6800 0x0)
0x47aa7a98 : 0x481a9c49 (0x4eb6800 0x17700 0x47aa7ac8 0x5fc51e0)
0x47aa7ae8 : 0x41f97f (0x4eb6800 0x6684e00 0x47aa7bd8 0x47abfb08)
0x47aa7b18 : 0x4819cb75 (0x5804140 0x4819cb1a 0x4eb6800 0x6684e00)
0x47aa7b48 : 0x481a907d (0x4eb6800 0x6684e00 0x47aa7bd8 0x47abfb08)
0x47aa7c18 : 0x47ab782c (0x6684e00 0x47aa7c48 0x47aa7c60 0x58f6ec0)
0x47aa7c88 : 0x42124d (0x6684e00 0x58f6ec0 0x0 0x0)
0x47aa7cd8 : 0x47ab742f (0x5814740 0x47ab7764 0x58f6ec0 0x0)
0x47aa7d28 : 0x43abd3 (0x6684e00 0x58f43c0 0x3c7 0x11e42c)
Backtrace continues...
Kernel loadable modules in backtrace (with dependencies):
com.m-audio.driver.firewire(1.8.4)@0x48198000->0x481d8fff
dependency: com.apple.iokit.IOFireWireFamily(3.4.4)@0x47e2b000
dependency: com.apple.iokit.IOFireWireAVC(2.2.1)@0x47fc1000
dependency: com.apple.iokit.IOAudioFamily(1.6.4b7)@0x47aa9000
com.apple.iokit.IOAudioFamily(1.6.4b7)@0x47aa9000->0x47abffff
dependency: com.apple.kext.OSvKernDSPLib(1.1)@0x419cd000
BSD process name corresponding to current thread: coreaudiod
Mac OS version:
9F33
Kernel version:
Darwin Kernel Version 9.5.
Give you one guess whose driver caused that panic.
Panics on PPC machines look a little different, but it should be fairly obvious where one ends and the next one begins in 10.4 and earlier---look for a line that gives the date.

In the case of 10.5, just paste the entire contents of the most recent panic log file.