'Или какова взаимосвязь между многопоточностью и прерыванием?'
В большинстве современных упреждающих ОС прерывание - это то, как вводится ОС - если нет прерывания, ОС ничего не делает. Прерывания бывают двух видов - аппаратные прерывания от устройств / драйверов (т. Е. Диск, клавиатура, сетевая карта, мышь, USB, оборудование для управления памятью, аппаратное обеспечение таймера) и «программные прерывания», т. Е. системные вызовы. Любой тип прерывания может изменить набор готовых / запущенных потоков. По сути, ОС - это большой обработчик прерываний, который может изменить набор потоков, которые будут выполняться после возврата прерывания.
Перепланирование аппаратных прерываний позволяет упреждающей многопоточной ОС с возможностью быстрого реагирования, когда аппаратное обеспечение (и / или связанный с ним драйвер) требует внимания.
Этот высокопроизводительный отклик на уровне потоков к аппаратной сигнализации является единственным большим преимуществом, которое вытесняющая многозадачность имеет перед кооперативными системами, и является основной причиной, по которой мы миримся с усложнением межпотоковой сигнализации, синхронизации и т. Д.
Без прерываний и вытеснения производительность дисков, сетей, USB, дисплеев, почти все в наших настольных системах будет настолько ужасно плохой, что приложения, такие как потоковое видео, просто не будут работать. Когда микросхема NIC имеет хороший большой буфер видео, она может вызвать аппаратное прерывание, запустить драйвер и загрузить пользовательский буфер с данными и создать поток в приложении потокового видео, которое ожидало на I / О, готов / работает, чтобы он мог отображать данные.