Oracle Database Architecture
Instance versus database
An Oracle instance is memory plus background processes; the database is the set of physical files (datafiles, control file, redo log files, plus the parameter and password files). One database is normally opened by one instance; many instances can run on one host.
SGA components you must be able to tell apart: the shared pool (library cache for parsed SQL and PL/SQL, plus the data-dictionary row cache), the database buffer cache, the redo log buffer, the large pool (shared-server session memory, RMAN I/O buffers, parallel message buffers), the Java pool and the fixed SGA. Session-private memory lives in the PGA - sort and hash areas, bind variables, cursor state - which becomes the UGA for a dedicated server connection.
Background processes the exam tests: DBWn writes dirty buffers to datafiles lazily; LGWR writes redo on commit, every three seconds, when the log buffer is one-third full (or holds 1 MB), and before DBWn writes the matching blocks; CKPT signals checkpoints and updates datafile headers and the control file but writes no data; SMON performs instance recovery and cleans temporary segments; PMON cleans up after failed processes and registers services with the listener; ARCn archives filled redo logs.
Traps: "which process makes a commit durable?" - LGWR, never DBWn. "Which process performs instance recovery?" - SMON, not PMON. A checkpoint does not flush every dirty buffer; a consistent shutdown does.
Rule of thumb: follow the change - buffer cache, then log buffer, then redo log file. Once LGWR returns, the transaction is committed.