A única interrupção que um programa não-kernel deve usar é o int 0x80, que é a interrupção para solicitar uma das chamadas do sistema listadas em /usr/include/sys/syscall.h. Se você quiser interagir diretamente com interrupções de hardware, isso deve ser feito dentro de um módulo do kernel. Uma boa introdução ao Assembly em um sistema Linux . Este tópico também deve ser útil para você .