本文共 279 字,大约阅读时间需要 1 分钟。
■1、申请方式不同。
■2、申请大小限制不同。
- 栈顶和栈底是之前预设好的,栈是向栈底扩展,大小固定,可以通过ulimit -a查看,由ulimit -s修改。
- 堆向高地址扩展,是不连续的内存区域,大小可以灵活调整。
■3、申请效率不同。
- 栈由系统分配,速度快,不会有碎片。
- 堆由程序员分配,速度慢,且会有碎片。
- 栈会比堆快很多。因为操作系统会在底层对栈提供支持,会分配专门的寄存器存放栈的地址,栈的入栈出栈操作也十分简单,并且有专门的指令执行,所以栈的效率比较高也比较快。
■栈空间默认是4M,堆区-般是1G-4G
转载地址:http://ietki.baihongyu.com/