If I allocated memory in my C program using `malloc` and now I want to exit, do I have to free the allocated memory, or can I assume that since my entire program terminates, it will be freed by the OS?

I run in Linux environment.