@Himanshu Goyal,
main() {
int x, y;
#Calling a function
fun();
}
fun() {
#Function called from main()
return;
}
During the function call fun(), if the function wants to access the variables x, y (statically scoped) of it's calling function i.e main(), it makes the use of access link.
Now when this function fun() terminates/returns, it's activation record is popped from the stack and the control is given back to the main() function. This is done using the control link.
Please correct me if I'm wrong anywhere.