предположим, два ядра процессора работают два потока параллельно, и прерывание происходит один на них, делает другой процессор также остановить выполнение ?
В двухъядерном процессоре оба процессора останавливают выполнение при возникновении прерывания?


1 ответ
вы найдете более подробную информацию в этой статье: почему прерывание сродства с несколькими ядрами не такая хорошая вещь
каждая материнская плата x86 имеет чип называется IO-APIC. Это устройство, которое контролирует доставку прерывания внутри ваша система. Он знает, сколько процессоров в вашей системе и может направить различные прерывания для различных процессоров. Она использует так называемый локальный APIC-ID в качестве идентификатор процессора.
Это два режима работы. В один режим он посылает прерывания от определенного устройства в одном, заранее core. Этот режим работы называется фиксированный / физический режим. В другом режиме, он может доставить прерывания от определенное устройство для нескольких ядер. Более поздний режим называется логическим / низким режим доставки прерывания приоритета.
Смотрите также этот патент от IBM: метод отправки прерываний в многоядерная среда и многоядерный процессор

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]