Compartilhar via


Técnicas gerais de programação de E/S

Uma das técnicas mais importantes na programação de E/S é aquela que você deve evitar: forçar o sistema operacional a aguardar seu dispositivo. Quase todo mundo teve a experiência de ver o Microsoft Windows "congelar". Às vezes, o congelamento é devido a uma falha, mas outras vezes o sistema está simplesmente esperando um dispositivo responder.

Há duas técnicas básicas de programação para lidar com a espera de um dispositivo: síncrona e assíncrona. A programação síncrona aguarda o dispositivo e deve ser evitada. A programação assíncrona usa outras técnicas (como aguardar solicitações de interrupção). Para obter mais informações sobre programação síncrona e assíncrona, consulte os seguintes tópicos:

Programação de E/S síncrona

Programação de E/S assíncrona

O Microsoft Vista tem uma nova política para lidar com problemas de programação síncrona. Para obter mais informações sobre essa nova política, consulte Restringindo esperas no Windows Vista para obter mais informações.

Na programação anterior do driver de dispositivo, um driver precisaria solicitar repetidamente informações de um driver até que a resposta fosse fornecida. Essa técnica é chamada de sondagem e quase nunca deve ser usada. A melhor maneira de lidar com o problema de sondagem é usar interrupções de hardware. Para obter mais informações sobre interrupções de hardware, consulte Interrupções de manutenção. Para obter mais informações sobre sondagem e por que você não deve usá-la, consulte Evitar sondagem de dispositivo.