Is stack space fixed size or dynamic

The stack and dynamically allocated memory use the same space. One from the top, one from the bottom.

I want to define a circular buffer (at compile time) as large as possible

Why?