Oracle architecture has two types of process: server process or foreground process and background process, but:

Some people use it to refer to foreground processes, others use it for background processes

This is ambiguous. Please explain to me why do the concept of shadow process exist?

  • 1
    Have you read Oracle Process Architecture documents? Jun 8, 2013 at 16:42
  • @ypercube Yes, shadow process, Some people use it to refer to foreground processes, others use it for background processes I have a doubt: why the concept of shadow process exist while we have server process and foreground process ?
    – Happy Girl
    Jun 8, 2013 at 16:45
  • @ypercube Your link show shadow process is server process, but in OCA Oracle Database 11g Administration I Exam Guide.pdf, it say: Some people use it to refer to foreground processes, others use it for background processes !
    – Happy Girl
    Jun 8, 2013 at 16:50

3 Answers 3


Background processes are processes that are part of the instance. They start when the instance starts, and exit when the instance shuts down. These processes are required for the instance to function or to do the work that would otherwise require starting these processes every time the work needs to be done (which would probably be ineffective). The examples of background processes are job coordinator background process (cjqN) which coordinates job-slave processes running jobs on schedule, and LGWR background process which writes redo entries to the redo log files.

Server processes, on the other hand, are mostly transient: they start when needed, do some work, and exit. Sometimes people refer to server processes as foreground processes, as opposed to background processes. The examples of foreground processes are the server processes that support user sessions, Scheduler job-slave processes (jNNN) which are started by the job coordinator process described earlier, do some work, and eventually exit if there are no other jobs to do.

Server processes are sometimes also referred to as shadow processes, but I would avoid this term, because it seems that it's not commonly used, and may confuse you – I found only 25 occurrences of "shadow process" in Oracle Database 11g Release 2 documentation (one being mentioned in "Shadow Server Architecture" section of Database Concepts), as opposed to 305 occurrences of "server process", and 182 occurrences of "background process".

As far as OCA exam is concerned, I didn't encounter "shadow process" term in any of the questions on the real exam, and this term appeared only twice in the guides I used to prepare for the exam, one of them explicitly stating that its use should be avoided.

  • Thank you, i will research more, sorry i can not upvote ;)
    – Happy Girl
    Jun 9, 2013 at 4:21
  • Of course, I meant Dedicated Server Architecture, not Shadow. Jun 9, 2013 at 9:00

The Process Architecture documentation has the answer, in the "Dedicated Server Configuration" section. In a dedicated server configuration, a new server process is created for each user process that is accessing the database. These processes only last as long as the user process, like a "shadow".

The concept exists because in this configuration you need a shadow process for every user process, even if the user process is not actively making requests, and this can have resource implications. (The alternative is a shared server configuration, where server processes are shared between user processes making active requests. This configuration can process a much higher number of users per thread).


The shadow process term is from SAP,In windows the shadow process is implemented in the form of a shadow thread and in Oracle Server process.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.