linux 共享内存设置  


Maximum SHMMAX values for Linux x86 and x86-64 [ID 567506.1]
          修改时间 21-DEC-2011     类型 HOWTO     状态 PUBLISHED          

In this Document
  Goal
  Solution
  References

Applies to:
Oracle Server - Enterprise Edition - Version: 9.2.0.1 to 11.2.0.2 - Release: 9.2 to 11.2
Linux x86
Generic Linux
Obsolete Linux Intel (64-bit)
Red Hat Enterprise Linux Advanced Server x86-64 (AMD Opteron Architecture)
Linux x86-64
Goal

QUESTION 1
===========
What is the maximum value of SHMMAX for a 32-bit (x86) Linux system?


QUESTION 2
===========
What is the maximum value of SHMMAX for a 64-bit (x86-64) Linux system?
Solution

ANSWER 1
============
Oracle Global Customer Support officially recommends a " maximum" for SHMMAX of just less than 4Gb, or 4294967295.

The maximum size of a shared memory segment is limited by the size of the available user address space. On 32-bit systems, this is a theoretical 4GB. The maximum possible value for SHMMAX is just less than 4Gb, or 4294967295. Setting SHMMAX to 4GB exactly will give you 0 bytes as max, as this value is interpreted as a 32-bit number and it wraps around.


ANSWER 2
===========
Oracle Global Customer Support officially recommends a " maximum" for SHMMAX of "1/2 of physical RAM".

The maximum size of a shared memory segment is limited by the size of the available user address space. On 64-bit systems, this is a theoretical 2^64bytes. So the "theoretical limit" for SHMMAX is the amount of physical RAM that you have.  However, to actually attempt to use such a value could potentially lead to a situation where no system memory is available for anything else.  Therefore a more realistic "physical limit" for SHMMAX would probably be "physical RAM - 2Gb".

In an Oracle RDBMS application, this "physical limit" still leaves inadequate system memory for other necessary functions. Therefore, the common "Oracle maximum" for SHMMAX that you will often see is "1/2 of physical RAM". Many Oracle customers chose a higher fraction, at their discretion.

Occasionally, Customers may erroneously think that that setting the SHMMAX as recommended in this NOTE limits the total SGA.   That is not true.  Setting the SHMMAX as recommended only causes a few more "shared memory segments" to be used for whatever total SGA that you subsequently configure in Oracle. For additional detail, please see Document 15566.1, "SGA, SHMMAX, Semaphores and Shared Memory Explained"







References
NOTE:15566.1 - TECH: Unix Semaphores and Shared Memory Explained

显示相关信息 相关内容
产品

    Oracle Database Products > Oracle Database > Oracle Database > Oracle Server - Enterprise Edition

关键字
32-BIT; 64-BIT; LINUX; MAXIMUM; SHARED MEMORY SEGMENTS; SHMMAX

返回页首返回页首
标签: 暂无标签
oraask2

写了 49 篇文章,拥有财富 561,被 72 人关注

转播转播 分享分享 分享淘帖
回复

使用道具

P4 | 发表于 2012-9-27 09:34:22
学习了!
回复

使用道具

P4 | 发表于 2012-9-25 13:22:59
顶一下 ,怎么那么冷清啊
回复

使用道具

P4 | 发表于 2012-9-25 13:00:57

顶一下
回复

使用道具

P4 | 发表于 2012-9-15 13:48:37
顶顶顶顶顶顶顶顶顶顶
回复

使用道具

您需要登录后才可以回帖 登录 | 加入社区

本版积分规则

意见
反馈