'If the amount of stack memory provided to a program is fixed then why does it grow downwards in the process architecture? Or am I getting it wrong?

So I read that when a program is loaded on the main memory , it asscociates along with it static data , stack memory and heap memory. Wherein the stack generally grows downwards while the heap grows upwards. What I am confused about is since the stack is fixed in size how can it grow in the first place?



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source