O Program Interface é o mecanismo pelo qual um processo do usuário se comunica com o processo servidor. Serve como um método de comunicação padrão entre o cliente de uma aplicação ou uma ferramenta e o próprio servidor ORACLE.
Se o usuário e os processos servidores estão em diferentes computadores de uma rede, ou se o processo dispatcher estiver sendo usado para conectar processos de usuários e processos do servidor, então o program interface incluindo um software de comunicação chamado SQL*Net, que faz a comunicação (tradução) e a transferência de dados entre os computadores.
O ORACLE cria um conjunto de processos que rodam em background para cada instância, esses processos executam diversas tarefas.
O Database Writer (DBWR) grava os blocos de dados novos ou modificados (conhecidos como "dirty block", ou blocos sujos) existentes no database buffer cache para os datafiles. O DBWR não precisa escrever os dados a cada comando COMMIT, pois é otimizado para minimizar o I/O.
Ele usa o algoritmo LRU (Least Recently Used), escrevendo primeiro os blocos mais antigos e menos ativos. É possível inicializar até 20 processos DBWn, do DBW0 ao DBW9 e do DBWa ao DBWj.