call stack

A call stack is a stack data structure that stores information about the active subroutines of a computer program. 
Although maintenance of the call stack is important for the proper functioning of most software, the details are normally hidden and automatic in high-level programming languages. Many computer instruction sets provide special instructions for manipulating stacks.