Shared memory is an area in system memory that multiple users can access concurrently. OpenEdge keeps resources shared by all database users in shared memory and lets multiple servers access those resources efficiently. OpenEdge uses semaphores and spin locks to synchronize the activities of server and self-service client processes that are connected to a database. Each process uses its semaphore or relies upon the spin lock when it must wait for a shared resource.
You can tune OpenEdge performance by reconfiguring the size of the following shared memory buffers:
Database buffers — OpenEdge reads database blocks into the database buffer pool. Larger buffers usually result in less disk I/O.
Before-image (BI) buffers — OpenEdge stores BI notes in memory before writing them to disk.
After-image (AI) buffers — OpenEdge stores AI notes in memory before writing them to disk.
OpenEdge also creates shared memory tables to provide essential information on the status of each process, server, transaction, and lock. These tables enable you to control all of the database activities from one shared area.
See OpenEdge Data Management: Database Administration for more information about improving performance.