How kernel handle interrupts