The following image shows where the sections of a process are laid out in the process\'s virtual address space (in Linux):
You can see that there is only on
As far as I can remember, the space devoted to process stack is divided into smaller portion, each one used by a given thread. There are also some guard pages in between to prevent accidental smashing. And yes, stacks are one below others...