C Runtime Memory Management The C programming language and its runtime environment serve as the basic language on Unix systems (if we ignore assembly for now). The runtime environment defines how memory is allocated and freed, as well as how different pieces of information are layed out in memory. Being a language that works on a low level, it gives the programmer a lot of control on how memory is used. With a lot of power - comes a lot of responsibility.