I was running GNOME, and at the same time running a huge Java program. After a while, my computer seems to run out of memory, so X crashes and restarts. Is there anything I can do about it, to prevent it from crashing and restarting, like perhaps create a separate partition for some folder? At present everything is in one partition. Why do people put different things in different partitions?

[deutsixfive@110-21 ~]$ df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/hda3 14310528 4428896 9154692 33% /
none 127716 0 127716 0% /dev/shm
/dev/hda2 4393208 682036 3711172 16% /mnt/fat
/dev/sda1 500576 292144 208432 59% /media/DEUTSIXFIVE
[deutsixfive@110-21 ~]$ free
total used free shared buffers cached
Mem: 255432 241724 13708 0 17688 67916
-/+ buffers/cache: 156120 99312
Swap: 522072 59480 462592

I'm also a little surprised because it seems that I have a lot of free memory on my / partition, so why does X crash? I ran the Java program with the -Xmx1g option, so that sets the maximum Java heap size to 1GB. That's not big enough to run out of memory is it?

Thanks!