- przerwanie
Procedura przerywająca program komputerowy wykonywana przez AP, gdy zaistnieją określone okoliczności. Po powrocie z tej procedury program jest kontynuowany.
Istnieją różne rodzaje przerwań programu:
- • 〈przerwanie systemu zarządzania〉
- • 〈niewstrzymywalne przerwanie sprzętowe〉, np. gdy zaistniał określony błąd w systemie komputerowym
- • 〈wstrzymywalne przerwanie sprzętowe〉, gdy zaistniały określone warunki w urządzeniu systemu komputerowego
- • 〈wyjątek〉, gdy podczas wykonywania instrukcji w AP zaistniały określone warunki, zwykle oznaczające błąd instrukcji
- • 〈przerwanie programowe〉, inicjowane instrukcją programu
System operacyjny konfiguruje ponumerowane procedury obsługi przerwań (oprócz ‹przerwania systemu zarządzania›) w IDT, natomiast przekierowuje przerwania sprzętowe przy użyciu I/O APIC. Przekierowanie na wyższe numery jest konieczne, ponieważ przerwania sprzętowe (IRQ) są generowane z tymi samymi numerami jak ‹wyjątki›.
LAPIC obecny w każdym rdzeniu procesora z osobna — wzbudza przerwania sprzętowe z następujących źródeł:
- • urządzenia systemu komputerowego
- • zapis do odpowiedniego rejestru APIC inicjujący IPI, NMI (‹niewstrzymywalne przerwanie sprzętowe›) lub ‹przerwanie systemu zarządzania›
- • skonfigurowany zegar APIC (‹wstrzymywalne przerwanie sprzętowe›)
- • skonfigurowane PMI
- • skonfigurowane przerwanie monitora temperatury (‹wstrzymywalne przerwanie sprzętowe›)
- • skonfigurowane przerwanie błędu APIC (‹wstrzymywalne przerwanie sprzętowe›)
Przerwania sprzętowe oraz ‹przerwanie systemu zarządzania› po zakończeniu wykonywania procedury obsługi są kontynuowane od instrukcji, przed którą została zainicjowana procedura obsługi; czyli program jest kontynuowany tak, jakby nic się nie wydarzyło. Natomiast ‹przerwania programowe› oraz niektóre ‹wyjątki› są kontynuowane od następnej instrukcji.
‹Wyjątki› dzielą się na trzy rodzaje:
- • wyjątki generowane przy błędzie wykonania instrukcji — wznawiają od tej samej instrukcji
- • wyjątki pułapkowe, generowane przy zaistnieniu ustalonych warunków — wznawiają od następnej instrukcji
- • wyjątki zakańczające — nie wznawiają programu
