On nomme IRQ (de l'anglais Interrupt Request, en français: demande d'interruption) une interruption qui est déclenchée par une ligne d'entrée-sortie matérielle d'un microprocesseur ou d'un microcontrôleur.
Les interruptions matérielles sont utilisées en informatique lorsqu'il est nécessaire de pouvoir réagir en temps réel à un événement asynchrone, ou bien, de manière plus générale, afin d'économiser le temps d'exécution lié à une boucle de consultation (polling loop).
De nombreux ensembles de circuits électroniques spécialisés placés dans les ordinateurs assurent chacun une fonction bien précise, par exemple gérer l'affichage sur l'écran ou bien l'activité d'un disque ou d'une interface réseau. Ils sont dits spécialisés car sont incapables de réaliser d'autres fonctions que celles pour lesquelles ils furent conçus tandis que le processeur principal (CPU) reste leur chef d'orchestre et carrefour des communications. Les composants de chaque ensemble se trouvent d'ordinaire rassemblés sur une carte d'extension ou sur une zone de la carte-mère.
La plupart de ces ensembles spécialisés ne peuvent assurer seuls toutes les fonctions nécessaires à leurs missions donc sollicitent parfois l'assistance du processeur principal, ne serait-ce que pour fournir ou obtenir des informations issues d'autres éléments de la machine. Pour ce faire le processeur peut à intervalles réguliers interroger chacun d'eux afin de déterminer s'il a besoin d'aide, par exemple afin de fournir ou bien d'obtenir des informations.
Ces interrogations répétées et souvent inutiles le distraient de sa mission qui consiste à animer les programmes de l'utilisateur. De surcroît la fraction des ressources du processeur principal constamment mobilisée par ces interrogations augmente avec le nombre et la puissance des ensembles spécialisés.
Divers moyens techniques épargnent au CPU ces interrogations périodiques en fournissant aux ensembles spécialisés un moyen d'attirer son attention à n'importe quel moment afin qu'il les assiste, donc en ne le distrayant de l'exécution des programmes de l'utilisateur qu'en cas de besoin.
Pour cela certaines pattes (contacts physiques) du processeur se trouvent reliées à des pistes électriques le reliant aux ensembles spécialisés. Chacun de ces derniers peut s'y manifester en modifiant le niveau logique de la ligne afin de requérir de l'aide, donc d'inviter le processeur à prendre les dispositions nécessaires.
Pour répondre à une requête le CPU devra :
Notes :
Les pistes électriques délivrant ces informations au CPU sont appelées lignes d'interruption ou lignes d'IRQ. Dans un lointain passé chacune se trouvait associée, à un moment donné, à un seul ensemble spécialisé mais des astuces permettent à présent de laisser plusieurs ensembles solliciter le CPU par le biais de la même ligne d'IRQ, même de façon simultanée.
L'acronyme IRQ désigne tout à la fois le concept même d'interruption de l'exécution sur requête tierce ainsi que l'une de ces requêtes.