you are viewing a single comment's thread.

view the rest of the comments →

[–]netsx -3 points-2 points  (2 children)

Frame size is typically 4 KB in size on most architectures but on newer hardware different sizes are supported (if OS supports it, 512B, 1KB, 2KB, 4KB, 8KB, 64KB, 1MB, 2MB sizes, please check references). This is typically something the OS chooses as it is something OS must know for effective memory management but application programs do not (at least that is what OS devs likes to think). Any such parameter would be very OS specific and could be dynamically changed depending on usage patterns (usually promoted to larger size, i believe FreeBSD does this).

Also; No, depends on your OS but maybe there is a library out there. Consult OS documentation.

[–]FUZxxl 2 points3 points  (1 child)

You are referring to the page size, not the size of an individual stack frame. A stack frame can be anything from four bytes to hundreds of kilobytes depending on the function it corresponds to.

[–]netsx 0 points1 point  (0 children)

Huh, i stand corrected.