Vous ne pouvez tout simplement pas utiliser directement les interruptions ou l'accès DMA depuis un processus en mode utilisateur. Pour cela, il vous faut développer un pilote pour le noyau. Reportez-vous au Linux Kernel Hacker's Guide pour plus de détails et au code source du noyau pour des exemples.
Vous avez cependant la possibilité de désactiver les
interruptions depuis une application en mode utilisateur, mais
cela peut s'avérer dangereux (même les pilotes du noyau ne le
font que pour des périodes de temps très brèves). Après appel
à iopl(3)
, vous pouvez désactiver les
interruptions en utilisant
asm("cli");
et les réactiver avec
asm("sti");
.