mnicolet wrote (in a message from Tuesday 8)
> May be this question is not strictly suited to this list, but I see lots of
> people contributing from lots of different platforms.
> The question regards to stack space management under different platforms, or
> execution models.
> Under my preferred platform ( QNX 4.25 ) stack space is allocated at process
> creation, and remains fixed until process death. Thas is so because the data
> segment layout leaves the heap on top, so it can grow easily. So, one must
> guess how much stack would be needed, and give the figure to the linker.
> The question is: are there some other ( not exotic, of course ) platforms
> that allows stack growing on demand ? i.e the stack as one segment by its
> own, which can be dynamically re-allocated during process lifetime
?
On Unix-like systems (and I guess in modern MS Window too) the virtual
memory system allows to allocate a large stack for each process. Real
memory is used only as stack grows and as virtual addresses need to
have real memory pages vired to them.
There still is a physical fixed stack size limit, but it's generally
set quite high.
I don't know any system without shared memory that would behave this
way. In VxWorks you specify the stack size at task creation and it's
allocating memory from the global pool.
Matthieu
_______________________________________________
Devel mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/devel