I just upgraded from Tiger (which I was very happy with) to Leopard - which has crashed no lees than four times since I installed it?!! I was going to do a clean reinstall but apart from not wanting to sink more time into I did some Googling and found some possible cures - basically due to older (non-Leopard compatible) versions of software - particularly kernel modules (kext stuff). You can have a look at the kernel modules loaded by running kextstat and looking out for non apple ones. Or better you can use the following incantation to show you all non apple kernel modules (including from the Startup folder) on your system (shows you their bundle name, ID and path):
kextfind -e -f /Library/StartupItems/* -not -bundle-id -i -substring 'com.apple.' -report -b -B -print
Or to do the same for loaded modules only (which are a possible immediate problem):
kextfind -e -f /Library/StartupItems/* -loaded -not -bundle-id -i -substring 'com.apple.' -report -b -B -print
To cure suspect (if you see them in a crash report or seeing nasty logs about them) kext modules - either find an appropriate upgrade, uninstall them or unload and remove them (e.g sudo kexunload /Library/Extensions/Dodgy.kext && rm /Library/Extensions/Dodgy.kext) and reboot.
You should also go and have look at the system logs (Console app) to see if there's nasty messages in there about dodgy goings ons.
Here's s of the known ones that cause issues: