Здравствуйте, pykd_team, Вы писали:
_>Здравствуйте, algosan, Вы писали:
A>>Непонимаю одну вещь. Рассмотрим ситуацию: в APIС одновременно прилетают прерывание от мыши и от клавиатуры.
A>>Правильно ли я понимаю, что обслужено будет только одно, потому как очереди прерываний для APIC контроллера не существует?
A>>И что будет с вторым прерыванием? Оно будет перепослано через время, или просто потеряется?
_>Почему очереди не существует? В традиционном APIC прерывания обрабатываются в несколько стадий: запрос прерывания, подтверждение прерывание, окончание прерывания. Для ожидания обработки есть соответвующие регистры.
_>В новых наборах системной логики есть т.н MSI — они вообще очень хорошо в очереди умеют стоять.
В моем сообщении был пример с прерываниями от мышки и клавиатуры, это немаскируемые прерывания, а для них в интеловских мануалах сказано:
All interrupts with an NMI, SMI, INIT, ExtINT, start-up, or INIT-deassert delivery mode bypass the
IRR and ISR registers and are sent directly to the processor core for servicing.
Поэтому по прежнему не понятно, что случится, если в local apic прилетят одновременно 2 прерывания.