Free RAM needed to work fine

Hi. Do you know if it is important to leave a quantity of RAM always free or if it is just possible to fit all the spaces just till the last byte? And why?
Thanks

You need some RAM for the system stack for things like function return addresses and other such house keeping that the C compiler generates. This is program dependant so you can't just have one big array.