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

641
kashyapa

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

2

1 ответ на вопрос

1
Snark

В этой статье вы найдете больше информации: почему прерывание связи с несколькими ядрами не такая уж хорошая вещь

Каждая материнская плата x86 имеет чип под названием IO-APIC. Это устройство, которое контролирует доставку прерываний в вашей системе. Он знает, сколько процессоров в вашей системе, и может направлять различные прерывания на разные процессоры. Он использует так называемый локальный APIC-ID в качестве идентификатора процессора.

Имеет два режима работы . В одном режиме он отправляет прерывания с определенного устройства на одно предварительно определенное ядро . Этот режим работы называется фиксированным / физическим режимом. В другом режиме он может доставлять прерывания от определенного устройства на несколько ядер . Более поздний режим называется режимом доставки прерываний логического / низкого приоритета.

Смотрите также этот патент от IBM: метод диспетчеризации прерываний в многоядерной среде и многоядерном процессоре.

Похожие вопросы