Uma camada de abstração é uma maneira de esconder detalhes de implementação de um conjunto particular de funcionalidades. Provavelmente os mais conhecidos modelos de software que usam camadas de abstração são o Modelo OSI para protocolos de rede de computadores, a biblioteca gráfica OpenGL e o modelo byte stream de entrada e saída (I/O) originado no Unix e posteriormente adotado pelo MS-DOS, Linux e muitos outros sistemas operacionais modernos.
Veja mais na Wikipédia.org...