Oracle® Solaris 11.2 可调参数参考手册

退出打印视图

更新时间: 2014 年 12 月
 
 

default_stksize

说明

指定所有线程的缺省栈大小。任何线程创建时具有的栈大小都不能小于 default_stksize。如果设置了 default_stksize,它会覆盖 lwp_default_stksize。另请参见lwp_default_stksize

数据类型

整型

缺省值
  • 在具有 sun4u 处理器的 SPARC 系统上为 3 x PAGESIZE

  • 在具有 sun4v 处理器的 SPARC 系统上为 4 x PAGESIZE

  • 在 x64 系统上为 5 x PAGESIZE

范围

最小值为缺省值:

  • 在具有 sun4u 处理器的 SPARC 系统上为 3 x PAGESIZE

  • 在具有 sun4v 处理器的 SPARC 系统上为 4 x PAGESIZE

  • 在 x64 系统上为 5 x PAGESIZE

最大值为缺省值的 32 倍。

单位

getpagesize 参数返回的值的倍数字节。有关更多信息,请参见 getpagesize(3C)

动态?

是。影响在变量更改后创建的线程。

验证

必须大于或等于 8192 且小于或等于 262,144 (256 x 1024)。还必须是系统页大小的倍数。如果不满足这些条件,将显示以下消息:

Illegal stack size, Using N

N 的值是 default_stksize 的缺省值。

何时更改

当系统因为用完栈空间而崩溃时。此问题的最佳解决方法是确定系统为何用完空间,然后进行纠正。

增大缺省栈大小意味着几乎每个内核线程都将具有更大的栈,从而导致内核内存消耗增加却没有合理原因。一般情况下,该空间将处于未使用状态。消耗增加意味着争用同一内存池的其他资源的可用空间将减少,从而可能降低系统执行工作的能力。其中一个负面影响是内核可以创建的线程数将减少。此解决方法只能作为在纠正根本原因之前采取的临时解决方法。

交付级别

不稳定