string
string
string
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
See Also<br />
For more information, see the chapter on checking filesystem integrity in the System<br />
Administration Guide, Volume I.<br />
"E"<br />
ENOMEM The available data space is not<br />
large enough to accommodate the shared<br />
memory segment<br />
Cause<br />
ENOMEM errors occur after 80 segments have been allocated by Lotus Notes.<br />
Action<br />
The design and implementation of Solaris ISM (Intimate Shared Memory) is what<br />
caused the ENOMEM failures, from the Lotus Notes application, besause of the limit<br />
reached on the number of shared memory segments that can be attached to a<br />
particular process.<br />
The limit occurs because all shared memory segments are attached in the Intimate<br />
Shared Memory (ISM) mode courtesy of a system variable they have set in the<br />
system file called shmsys:share_page_table.<br />
When a shared memory segment is attached in ISM mode, the OS locks that segment<br />
into physical memory and arranges the virtual/physical address mappings such that<br />
only one copy of the mapping information is shared amongst all attaching processes.<br />
To accomplish this, the OS requires the virtual starting address of the segment be<br />
aligned on a 16 Meg (hex 0x1000000) = 16777216-bytes address boundary.<br />
The NULL address lets the system decide what virtual address the segment should<br />
be attached at. The system also assigns addresses 0x3000000 apart unless forced to<br />
attach addresses at 0x1000000 apart.<br />
Doing a few calculations, a sun4d could create and attach up to 220 1-Meg ISM<br />
segments and a sun4m could create and attach up to 235 1-Meg ISM segments,<br />
providing the segments were 0x1000000 apart.<br />
Given that ISM is what causes the limit, what can we do about it?<br />
58 Solaris Common Messages and Troubleshooting Guide ♦ October, 1998