3

我知道可以在我的机器上使用的程序堆栈的最大大小是 8192 KB(根据ulimit -a | grep "stack size")。

我也知道 Linux 使用 ASLR。我使用带有 gcc compilerflag 的 64 位系统-m32

  1. 因此,局部变量的总量是否最多只能占用 8192 KB?在这个最大值被占用之前它是否有可能接触到堆?还是堆会照顾不增长太多?

  2. 根据 ASLR,局部变量的可能地址范围是多少?我可以在地址 0xf740d25a、0x7ffXXXXXX、0xaXXXXXX 或 0x1XXX 创建一个局部变量,其中 X 是任何十六进制数字吗?

4

0 回答 0