关于堆栈的问题?
1.PE文件说明里(PE头偏移60H)说的线程初始堆栈是不是程序中用于分配局部变量,参数传递用的栈呢?说保留大小是0x100000,系统会在程序运行时修改它的大小吗?如果这个大小是固定的即便是退出较好的递归调用不是也很容易就溢出么,才1M啊!2G的地址空间就只能让堆用?2.它和进程的缺省堆(这里又是"堆"了,是我在一本书上讲WINDOWS内存管理时看到的)是一会事么,说这个堆是WIN32函数使用的,缺省值也是1M,把我搞糊涂了.
3.书上多用"堆栈"这个词,那到底是指堆呢还是栈呢?我感觉堆是可以随机分配的,哪里有地方就分配到哪里,栈不是应该保持地址连续么,要不然PUSH,POP能找到正确的地址么?程序的堆栈该怎么理解呢?
请帮帮我,谢谢!