为什么堆栈段的大小比ulimit -s小得多?

时间:2015-10-03 03:46:29

标签: stack virtual-memory ulimit

我注意到,在ubuntu 12.04 x64中,所有程序都将堆栈段映射到虚拟地址范围,如:

7fff0f59b000-7fff0f5bc000 rw-p 00000000 00:00 0      [stack]

自0xbc000 - 0x9b000 = 0x21000 = 135168以来,大小 远小于ulimit -s(8192KB)

给出的值 你可以告诉我为什么吗?堆栈段会自动增长到8MB限制吗?提前谢谢。

1 个答案:

答案 0 :(得分:0)

我找到了原因。 ulimit -s只是上限,而不是堆栈的初始提交虚拟内存。它会成长。但我不知道如何实现这一目标。只是“sub rsp,size; mov [rsp],imm”不起作用。

相关问题