Compartir a través de


Técnicas generales de programación de E/S

Una de las técnicas más importantes en la programación de E/S es la que debe evitar: forzar al sistema operativo a esperar a su dispositivo. Casi todos han tenido la experiencia de ver Microsoft Windows "inmovilizar". A veces, la inmovilización se debe a un bloqueo, pero otras veces el sistema simplemente está esperando a que un dispositivo responda.

Hay dos técnicas de programación básicas para tratar con la espera de un dispositivo: sincrónica y asincrónica. La programación sincrónica espera el dispositivo y debe evitarse. La programación asincrónica usa otras técnicas (como esperar solicitudes de interrupción). Para obtener más información sobre la programación sincrónica y asincrónica, vea los temas siguientes:

Programación de E/S sincrónica

Programación asincrónica de E/S

Microsoft Vista tiene una nueva directiva para tratar problemas con la programación sincrónica. Para obtener más información sobre esta nueva directiva, vea Restringir esperas en Windows Vista para obtener más información.

En la programación anterior del controlador de dispositivo, un controlador tendría que solicitar repetidamente información de un controlador hasta que se proporcionó la respuesta. Esta técnica se denomina sondeo y casi nunca se debe usar. La mejor manera de controlar el problema del sondeo es usar interrupciones de hardware. Para obtener más información sobre las interrupciones de hardware, vea Interrupciones de mantenimiento. Para obtener más información sobre el sondeo y por qué no debe usarlo, consulte Evitar sondeo de dispositivos.