24.05.2014 Views

AIX Version 4.3 Differences Guide

AIX Version 4.3 Differences Guide

AIX Version 4.3 Differences Guide

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

4.7 Shared Memory Enhancements<br />

The following enhancements reflect changes to the shared memory function in<br />

<strong>AIX</strong>.<br />

4.7.1 Larger Shared Memory Regions (<strong>4.3</strong>.1)<br />

The maximum size of a shared memory region created by the shmget() routine<br />

and attached to a process’ address space by the shmat() routine has been<br />

increased from 256 MB to 2 GB. Prior to <strong>AIX</strong> <strong>4.3</strong>.1, it was possible to mmap() a<br />

memory mapped file of up to 2 GB, but an anonymous memory region was limited<br />

to 256 MB. This meant that a large memory region had to be created in several<br />

256 MB portions and each portion attached individually. <strong>AIX</strong> <strong>4.3</strong>.1 has removed<br />

this restriction, so it is now possible to attach a 2 GB memory region with one call<br />

to the shmat() routine.<br />

If EXTSHM=ON is set and an application performs a shmget() with a size greater<br />

than SEGSIZE-PAGESIZE, the system will use the traditional shmat() and not<br />

mmap() as would be the case when EXTSHM=ON.<br />

4.7.2 128 KB Shared Memory IDs (<strong>4.3</strong>.2)<br />

<strong>AIX</strong> <strong>4.3</strong>.2 now supports 128 KB mem, sem, and shm IDs, up from 4 KB in the<br />

previous releases.<br />

4.7.3 Shared Memory Debugging Enhancements (<strong>4.3</strong>.2)<br />

<strong>AIX</strong> <strong>4.3</strong>.2 has added the facility for additional information to be included in the<br />

core file that may be produced by an application program when it encounters<br />

certain types of error.<br />

There are two methods of enabling the extra information to be included in the<br />

core dump.<br />

• The application can use the sigaction routine to set the SA_FULLDUMP flag<br />

for the signal that will cause the core file to be generated.<br />

• Enable full core information as the default, either from the SMIT Change /<br />

Show Characteristics of Operating System panel, the WebSM Devices panel<br />

by selecting sys0, or by using the command:<br />

chdev -l sys0 -a fullcore=’true’<br />

When an application faults, and a full core is generated, the core will include all<br />

the shared memory regions of the faulting process that are currently attached.<br />

The dbx debugger has been changed to understand the extra information in the<br />

core file and allow the developer to interrogate the user defined variables<br />

contained in the shared memory regions of the process at the time of termination.<br />

4.8 DMA Pre-Translation (<strong>4.3</strong>.2)<br />

DMA pretranslation of memory buffers reduces the cost of setting up DMA<br />

operations. Its objective is to reduce DMA setup pathlength for selected and<br />

predetermined I/O operations to improve performance. The enhances the<br />

Application Development and Pthreads 79

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!