Leksykon IT › Programowanie › Odroczona obsługa przerwań

Odroczona obsługa przerwań

Programowanie Svenska → Zaktualizowano: 2026-11-03

Wzorzec, w którym procedura obsługi przerwania robi tylko absolutne minimum, a resztę przekazuje kodowi uruchamianemu później, przy włączonych przerwaniach.

Gdy działa procedura obsługi, wszystko o niższym priorytecie czeka, a każda mikrosekunda spędzona w środku wydłuża opóźnienie przerwania w całym systemie. Pracę dzieli się więc: procedura potwierdza przerwanie sprzętowi, kopiuje dane w bezpieczne miejsce — klasycznie do bufora kołowego — i sygnalizuje, że coś się wydarzyło. Parsowanie, logika protokołu i wszystko, co może czekać na blokadę, dzieje się już w zwykłym kontekście.

Linux nazywa te połówki górną i dolną (top half i bottom half), a dla tej drugiej przeszedł przez trzy generacje mechanizmów: softirqs, tasklety i workqueues. Windows ma DPC. W RTOS-ie takim jak FreeRTOS procedura zwykle budzi dedykowane zadanie przez semafor lub powiadomienie zadania, a resztą zajmuje się planista według priorytetów. Kto wywoła printf z wnętrza przerwania, zwykle poznaje ten wzorzec w najtrudniejszy sposób.

← Wróć do leksykonu