http://www.cnblogs.com/titer1/archive/2012/03/31/2427436.html

栈的大小可以修改的。在应用程序我们经常需要定义大的数组,数组定义成局部变量非静态变量,那么数组就会在栈上分配,当数组超过默认栈的大小时,会引起非常内存访问。那么如何修改系统默认的栈的大小呢。

一般,在Unix-like平台,栈的大小不是由程序自己来控制的而是由环境变量来控制的,所以就不能通过设置编译器(像gcc)的任何编译标志来设置栈的大小;

//66上面这种说法,是不是,改变了环境,只要不更改回来,所有的相关程序都会受影响。

//而windows 影响范围更小,可以只是当前程序。

//思考,待确认?

在windows平台下,栈的大小的信息是包含在可执行文件中的。它可以在Visual C++的编译过程中设置,但是在gcc中是不可行的。

//66待确认??gcc

也可以用Microsoft提供的一个叫作:”editbin.exe“程序来直接修改可执行文件的栈的大小。

在一般情况下, 不同平台默认栈大小如下(仅供参考)

SunOS/Solaris 8172K bytes (Shared Version)

Linux 10240K bytes

Windows 1024K bytes (Release Version)

AIX 65536K bytes

如果定义大数组的情况下,那就需要修改默认的栈大小,下面给出几个平台的修改方法:

1.SunOS/Solaris系统:

limit # 显示当前用户的栈大小

unlimit # 将当前用户的栈大小改为不限制大小

setenv STACKSIZE 32768 #设置当前用户的栈大小为 32M bytes

2.Linux系统:

ulimit -a #显示当前用户的栈大小

ulimit -s 32768 #将当前用户的栈大小设置为32M bytes

//66上面那个变量 在 淘宝博客 经常出现。

3. Windows (在编译过程中的设置):

1). 选择 "Project->Setting".

2). 选择 "Link".

3. 选择 "Category"中的 "Output".

4. 在 "Stack allocations"中的"Reserve:"中输栈的大小,例如: 32768

修改 堆栈大小 普适性方案总结 (跨平台 windows linux 栈设置大小)相关推荐

  1. 跨平台(windows+linux)的线程辅助程序,跨平台(Windows+Linux)的Socket通讯程序(二)—结构...

    上一篇"跨平台(Windows+Linux)的Socket通讯程序"给出了Socket通讯底层的一些函数的包装方法/类,同时屏蔽了操作系统(Windows/Linux)的不同. 上 ...

  2. linux分区设置大小,Linux调整磁盘分区大小

    Resize the disk (Linux调整磁盘分区大小) Resize the partition. Run parted: $ parted Show the partition list: ...

  3. linux setfont设置大小,setfont命令

    设置当前终端字体为默认字体 setfont - load EGA/VGA console screen font (加载EGA/VGA终端字体) !注意:setfont在x下没法使用,只能是在EGA/ ...

  4. 2017cad光标大小怎么调_cad光标设置,详细教您CAD的十字光标如何设置大小

    CAD广泛应用于工程机械.室内建筑等一些需要平面绘图及布局的行业,它快速.方便的帮助设计师们工作.而对于初学者,常常会遇到一个问题那就是用于捕捉点的十字光标有时会特别大或特别小,影响绘图的效率.下面, ...

  5. 2017cad光标大小怎么调_cad光标设置,小编教你CAD的十字光标如何设置大小

    在新打开的Auto CAD软件界面上会出现很小的十字光标和靶框,这种比例的十字光标和靶框会影响到绘图的速度和质量,在CAD的日常使用中,可能会遇到设置十字光标大小的问题,如何设置CAD十字光标的大小呢 ...

  6. 哈工大/北大Adv. Mater.:中熵合金气凝胶的普适性合成实现甲醇→甲酸盐高效转化并产氢...

    01 背景介绍 高熵合金(HEAs)由于其独特的物理.化学和力学性能,包括可控组分.缓慢扩散.晶格畸变和鸡尾酒效应,在多相催化领域引起了人们广泛的关注.根据构型熵的大小可以把固溶体状态下构型熵大于1. ...

  7. linux ext4增加大小,如何修改 ext4 文件系统的大小

    如何修改 ext4 文件系统的大小 a. 扩大文件系统 i 启动到 Linux,umount 掉/dev/sdb1 和/dev/sdb2,若提示磁盘忙的话使用 fuser 将正在使用磁盘的程序 kil ...

  8. 什么限制了GNN的能力?首篇探究GNN普适性与局限性的论文出炉!

    作者 | Andreas Loukas 译者 | 凯隐 责编 | Jane 出品 | AI科技大本营(ID: rgznai100) [导读]GNN是目前机器学习领域的热门网络之一,肯多研究与技术分享相 ...

  9. 微生物组学研究的可再现性、可重现性、稳定性与普适性

    本文转载自"微生态笔记",已获授权. 标题 Identifying and Overcoming Threats to Reproducibility, Replicability ...

最新文章

  1. iBATIS In Action:使用映射语句(一)
  2. Javascript、Jquery获取浏览器和屏幕各种高度宽度[mark]
  3. python三个数求和_Python:list是否包含3个连续的整数,总和为7...
  4. 【转】DICOM医学图像读取涉及到的医学坐标体系
  5. 修改本机域名服务器为Google Public DNS或者OpenDNS
  6. php-fpm进程的用户组,PHP中的“进程”系列1——PHP-FPM模型
  7. 来看一下:构造函数的小秘密详解
  8. python discuz验证码_Python3简单验证码识别
  9. C++中数据类型int, short, long, long long的数据范围
  10. MSU转Uniprot转Entrez ID
  11. Python语言程序设计基础_实验3 流程控制I_答案_通识教育必修课程_上海师范大学
  12. 信息化知识中的重点:商业智能(BI)详解
  13. 使用VBS编写xshell/SecureCRT自动化脚本
  14. 角色动画中的骨骼蒙皮技术
  15. 整理了500万+微信红包封面,速抢!
  16. JavaEE(10)Spring中的注解开发、静态/动态代理
  17. 济南近郊出游——线路指南
  18. Qt第四十一章:异型窗口
  19. php获取腾讯视频信息,云水日记-PHP实现腾讯视频解析源码
  20. DB2存储过程——begin end的作用

热门文章

  1. Java - concurrent包详解
  2. 四十四、Hexo搭建自己的博客
  3. mysql 笔试题_MySQL笔试题详解(一)(中等难度)
  4. ICCV 2019 COCO Mapillary挑战赛冠军团队技术分享
  5. 算法那么重要,你还不会?ACM金牌选手教你学习数据结构与算法
  6. 计蒜客 Reversion Count
  7. poj 1664 放苹果 DPDFS
  8. springboot redis 刷新时间_「SpringBoot实战」SpringCache + Redis实现数据缓存
  9. wps电脑版_使用好这几个功能,让你手机里的wps变身神器。
  10. 2021年Java后端技术知识体系