Visão geral do modelo de E/S do Windows

Cada sistema operacional tem um modelo de E/S implícito ou explícito para lidar com o fluxo de dados de e para dispositivos periféricos. Um recurso do modelo de E/S do Microsoft Windows é seu suporte para E/S assíncrona. Além disso, o modelo de E/S tem os seguintes recursos gerais:

  • O gerenciador de E/S apresenta uma interface consistente para todos os drivers de modo kernel, incluindo drivers de sistema de arquivos, intermediários e de nível mais baixo. Todas as solicitações de E/S para drivers são enviadas como IRPs (pacotes de solicitação de E/S).

  • As operações de E/S são em camadas. O gerenciador de E/S exporta serviços do sistema de E/S, que os subsistemas protegidos no modo de usuário chamam para realizar operações de E/S em nome de seus aplicativos e/ou usuários finais. O gerenciador de E/S intercepta essas chamadas, configura um ou mais IRPs e os encaminha por meio de drivers possivelmente em camadas para dispositivos físicos.

  • O gerenciador de E/S define um conjunto de rotinas padrão, algumas necessárias e outras opcionais, às quais os drivers podem dar suporte. Todos os drivers seguem um modelo de implementação relativamente consistente, considerando as diferenças entre os dispositivos periféricos e a funcionalidade diferente exigida dos drivers de barramento, função, filtro e sistema de arquivos.

  • Assim como o próprio sistema operacional, os drivers são baseados em objeto. Drivers, seus dispositivos e hardware do sistema são representados como objetos. O gerenciador de E/S e outros componentes do sistema operacional exportam rotinas de suporte do modo kernel que os drivers podem chamar para fazer o trabalho manipulando os objetos apropriados.

Além de usar IRPs para transmitir solicitações de E/S tradicionais, o gerente de E/S trabalha com o PnP e os gerenciadores de energia para enviar IRPs contendo PnP e solicitações de energia.