O conteúdo do database buffer cache é organizado em duas listas: a lista de blocos alterados e a lista dos blocos menos recentemente utilizados (LRU - Least Recently Used). Essa segunda lista contém os blocos livres, aqueles que estão em uso e os blocos alterados. Quando um processo servidor precisa ler dados de um bloco do disco para o database buffer cache, ele pesquisa a LRU para localizar um bloco livre e, quando encontrar um bloco alterado, movimenta-o para a lista de blocos alterados. Esse processo termina quando um bloco livre é localizado ou quando um número específico de blocos são pesquisados sem encontrar um bloco livre.
Durante uma operação de SELECT, o ORACLE requer que os blocos que contêm a informação desejada esteja em memória. Assim, a lista LRU é pesquisada e, se os blocos não estiverem em memória, o produto efetua as leituras físicas necessárias. Caso o bloco esteja em memória, são efetuadas leituras lógicas. Lembremo-nos de que nenhuma tabela pode ocupar menos de dois blocos de dados: um bloco para o cabeçalho e pelo menos outro bloco de dados.
Read more: http://www.linhadecodigo.com.br/artigo/99/a-arquitetura-do-oracle.aspx#ixzz28fj9r7ST