Другие. Во-первых в прерываниях не будет выполняться произвольный
код, библиотеки и т.п. Только код обработчика прерывания. Во-вторых
и самое главное, в прерывании нельзя заблокироваться (на мьютексе, семафоре...) И наконец прерывание имеет гарантию,
что его может вытеснить более высокоуровневое прерывание только, а
не пользовательский код. Как следствие: прерывание может использовать атомарные инструкции, не может использовать блокирующиеся примитивы синхронизации, не может использовать спинлоки, может использовать очень ограниченное подмножество функций ОС. В итоге обычно прерывание ограничено нехитрыми алгоритмами почти не требующими синхронизации, работает со своей преаллоцированной памятью и старается взвалить работу на задачу в ОС посредством доступных в прерывании механизмов IPC.
Прерывание с точки зрения пользовательского кода и более низкоприоритетных прерываний выполняется атомарно, чем может пользоваться реализуя любые lockless алгоритмы (пока не конфликтует с более приоритетными прерываниями) на совершенно любом процессоре.