memory usage linux in top is not correct

Solution 1:

"Help! Linux ate my RAM!"

Solution 2:

free is telling you that 421M of the memory is being used for buffers/cache. That's good, and that's normal. Linux will give you that memory if you need it, but it uses it to make disk access faster when you don't.

Solution 3:

Your system is using your memory. That's good. If you don't use the memory now, it's not like you get more later. Free RAM does you no good, only memory that is in use can improve your system's performance.