AIX系统--内存限制

AIX的处理器PowerPC有16个地址寄存器,对应的AIX下32位进程地址空间分为16段,每段256M,默认配置所有Userdata、heap、Stack最多占用一段256M,共享内存可以分配11段。

AIX系统--内存限制_第1张图片

USERDATAheapstack三种最常用的内存只有256M,只能应付一般情况,AIX系统中经常出现内存耗尽异常。解决方法是增加MAXDATA值。

(1)  编译时,ld命令增加参数“-bmaxdata:0x80000000”,指定编译产生的进程可以使用到1.5G堆栈,段2---8,执行“dump –ov XXX”可以查看可执行文件头部的可变参数。

(2)  AIX5.1后使用“ldedit –bmaxdata:0x80000000”可以修改可执行文件的MAXDATA值。

(3)  AIX4.3后可以修改环境变量“LDR_CNTRL=MAXDATA=0x80000000”,环境变量生效后,所有启动的进程都可以使用1.5Guserdata

增加MAXDATA后,必然压缩共享内存的使用空间。

 

 

 

你可能感兴趣的:(AIX系统--内存限制)