I have a dual boot system with two hard drvies, one for each os. I
have a 40 GB HDD for Redhat Linux 7.2 and 256MB RAM. Everything was
perfectly fine till a couple of days ago.

I have been running a C program which consumes a lot of memory, in
that program there are mallocs for 6 MB and other mallocs (lots of
them) and frees.

Previously , this program was running on a data collection of 56MB in
23 mins. But now, I had it running the whole night and it wasn't even
half finished.

In the system monitor the state of the process was changed to 'D'?
What does this mean?

Could this have slowed down my system. How can I set it right? Please
help me, I am a student and new to Linux. I need this running fast to
get some results.

Thanks in advance,