Básicamente, un RTOS puede garantizar que puede atender una IRQ (solicitud de interrupción) en un período de tiempo específico (generalmente bajo). Los sistemas operativos estándar no tienen esa garantía.
En la mayoría de los sistemas modernos, la mayoría de los dispositivos pueden generar una IRQ. Esto hace que la CPU se detenga (es decir, se interrumpa) de lo que está haciendo y ejecute un programa de servicio de interrupción. La idea es que este programa de servicio haga lo que el dispositivo necesite, es decir, saque los datos del dispositivo y los ingrese en la RAM, le diga al dispositivo qué hacer a continuación, etc.
En x86, dado que solo tiene 1 línea IRQ en la CPU, cuando recibe una interrupción, las interrupciones adicionales se deshabilitan automáticamente (excepto NMI, RESET y SMI) hasta que la CPU reconoce la fuente de interrupción y las vuelve a habilitar. Por lo tanto, los buenos controladores de dispositivos bajo el estándar i386 / amd64 Windows realizarán un procesamiento mínimo en este estado, lo suficiente para que esté bien volver a habilitar las interrupciones, y luego diferir el procesamiento completo de la interrupción hasta más tarde (porque el sistema técnicamente solo puede atender 1 interrupción por CPU núcleo a la vez). No estoy seguro, pero creo que Linux hace lo mismo. No obstante, no existe una garantía sólida del tiempo durante el cual se prestará servicio a la interrupción.
Para la mayoría de los dispositivos de PC, como discos, teclados, NIC, si hay un ligero retraso en el mantenimiento de su IRQ, no ocurrirá nada malo aparte de una pérdida de rendimiento. Esto puede ser un problema mayor para dispositivos como la entrada de audio y video, donde el dispositivo no almacena nada y la PC realmente necesita mantenerse al día con el flujo de datos entrantes.