3. 割り込み (IRQ) と DMA アクセス

ユーザモードのプログラムから直接に割り込みや DMA を使うことはできません。 これには、カーネルドライバを作成する必要があります。その詳細については 「Linux カーネルハッカーズ ガイド」を、またその例としては、カーネルの ソースコードを読んで下さい。

ユーザモードのプログラムから割り込みを禁止することは、危険を伴いますが、 可能です。(カーネルドライバですらそれを実行するときはできる限り短い時間 でするものです。) iopl(3) を呼び出したあと、asm("cli"); を呼び出すだけで割り込みを禁止することができます。 再び割り込み可能にするには asm("sti") を 呼びます。