Home | Previous Page | Next Page   Disk, Memory, and Process Management > Shared Memory > Shared-Memory Use >

Shared-Memory Allocation

The database server creates the following portions of shared memory:

Each portion of shared memory consumes one or more operating-system segments. When the database server initializes shared memory, it allocates at least two operating-system segments, one for the resident portion and one for the virtual portion. It might allocate more segments if the maximum segment size is not large enough.

Depending upon operating system settings for shared memory, the database server may allocate one segment for both the resident portion and virtual portion.

If the sqlhosts file specifies shared-memory communications, the database server allocates memory for the communications portion.

The database server adds operating-system segments as needed to the virtual portions of shared memory. Figure 35 shows the contents of each portion of shared memory.

All database server virtual processors have access to the same shared-memory segments. Each virtual processor manages its work by maintaining its own set of pointers to shared-memory resources such as buffers, locks, and latches. Virtual processors attach to shared memory when you take the database server from offline mode to quiescent mode or from offline mode directly to online mode. The database server uses locks and latches to manage concurrent access to shared-memory resources by multiple threads. For more information about modes, refer to Managing Database Server Operating Modes.

Figure 35. Contents of Database Server Shared Memory
begin figure description - This figure is described in the surrounding text. - end figure description
Home | [ Top of Page | Previous Page | Next Page | Contents | Index ]