Activations and Control Stack
An activation is one execution of a procedure; its lifetime is the period during which the procedure is active, including time spent in its subroutines.
In a recursive language, information about procedure activations is kept on a control stack. An activation record or stack frame corresponds to each activation.
The sequence of procedure calls during execution of a program can be thought of as a tree. The execution of the program is the traversal of this tree, with the control stack holding information about the active branches from the currently executing procedure up to the root.