Chapter 6: Runtime System

Storage Allocation Strategies

. Static allocation: lays out storage at compile time for all data objects

. Stack allocation: manages the runtime storage as a stack

. Heap allocation :allocates and de-allocates storage as needed at runtime from heap

These represent the different storage-allocation strategies used in the distinct parts of the run-time memory organization (as shown in slide 8). We will now look at the possibility of using these strategies to allocate memory for activation records. Different languages use different strategies for this purpose. For example, old FORTRAN used static allocation, Algol type languages use stack allocation, and LISP type languages use heap allocation.