Program Global Area
Program Global Area (PGA) is a memory area that contains data and control information for a server process. Access to the PGA is exclusive to server processes and software code acting on its behalf.
The contents of PGA memory vary depending on how the instance is running, whether the shared server or dedicated server option is in effect. But generally, the PGA memory can be classified into the following areas: Private SQL Area, Cursors and SQL Areas, and Session Memory
Private SQL Area – A Private SQL Area has data on bind information and runtime memory structures. Every session or user that issues an SQL statement has a private SQL area. So Mmany private SQL areas can be associated with the same shared SQL area. The private SQL area of a cursor is divided into the persistent area, which is freed only when the cursor is closed, and the run-time area, which is freed when the execution is terminated.
The actual location of a private SQL area depends on the session's connection. For a session connected through a dedicated server, private SQL areas are located in the server process's PGA. If a session is connected through a shared server, part of the private SQL area is kept in the SGA. |