Softwares de Entrada e Saída são comumente organizados em função de quatro camadas, com atribuições bem definidas, mas cujas interfaces podem variar a depender de cada Sistema Operacional.
A Figura a seguir traz o desenho esquemático das camadas de E/S.
As interações dos softwares de E/S em nível de usuário com o subsistema de entrada e saída normalmente ocorrem através da realização de chamadas ao Sistema Operacional, mais especificamente chamadas de biblioteca, que fazem referência à chamadas de sistema.