The processes in an Oracle system can be categorized into two major groups:
■ User processes run the application or Oracle tool code.
■ Oracle processes run the Oracle database server code. They include server processes and background processes.
Overview of User Processes
When a user runs an application program (such as a Pro*C program) or an Oracle tool (such as Enterprise Manager or SQL*Plus), Oracle creates a user process to run the user’s application.
Overview of Oracle Processes
This section describes the two types of processes that run the Oracle database server code (server processes and background processes).
Server Processes
Oracle creates server processes to handle the requests of user processes connected to the instance. In some situations when the application and Oracle operate on the same computer, it is possible to combine the user process and corresponding server process into a single process to reduce system overhead. However, when the application and Oracle operate on different computers, a user process always communicates with Oracle through a separate server process.
Server processes (or the server portion of combined user/server processes) created on behalf of each user’s application can perform one or more of the following:
■ Parse and run SQL statements issued through the application
■ Read necessary data blocks from datafiles on disk into the shared database buffers of the SGA, if the blocks are not already present in the SGA
■ Return results in such a way that the application can process the information
Background ProcessesTo maximize performance and accommodate many users, a multiprocess Oracle system uses some additional Oracle processes called background processes.An Oracle instance can have many background processes; not all are always present. There are numerous background processes. See the V$BGPROCESS view for more information on the background processes. The background processes in an Oracle instance can include the following:■ Database Writer Process (DBWn)■ Log Writer Process (LGWR)■ Checkpoint Process (CKPT)■ System Monitor Process (SMON)■ Process Monitor Process (PMON)■ Recoverer Process (RECO)■ Job Queue Processes■ Archiver Processes (ARCn)■ Queue Monitor Processes (QMNn)■ Other Background Processes