When a process causes a memory violation or issues an illegal instruction or something like that it will probably terminate abnormally and will generate a file named core. This file is a memory image of the process.
The GNU debugger, gdb allows you to determine the program that caused the core dump:
gdb -core core.16124
…and you’ll get something like this:
Using host libthread_db library “/lib/tls/libthread_db.so.1″.
(no debugging symbols found)
Core was generated by `kded’.
Program terminated with signal 6, Aborted.