Co stanie się z uprzedzonym programem obsługi przerwań?

Nie mogłem znaleźć właściwej odpowiedzi na następujące pytania, nawet w niektórych dobrze napisanych książkach na temat jądra:

Mówią, że ISR nie może spać, ponieważ nie ma możliwości zmiany harmonogramu ISR, ponieważ nie jest on połączony z żadnym procesem, więc co się stanie, gdy przerywanie z wyższym priorytetem wyprzedza wykonanie? przerwany ISR nie zostanie ponownie przesunięty (wykonany)? jeśli tak, jak i kto to zrobi?

wiele razy będziemy wyłączać przerwanie (np .: 1. W krytycznym regionie 2. Gdy wykonywane jest szybkie przerwanie, wyłączy wszystkie przerwania w bieżącym procesorze), więc co się stanie z przerwaniami, które występują, gdy przerwania są wyłączone? są po prostu odrzucane? lub będą przechowywane gdzieś w celu późniejszego wykonania? jeśli tak, gdzie i jak?

kiedy ISR wykonuje, wyłączy przerwanie w bieżącej linii IRQ, aby uniknąć ponownego wejścia (uniemożliwiając wykonanie kolejnego ISR na tej samej linii), ale dlaczego? co jest nie tak, jeśli ISR ​​wchodzi ponownie?

* ISR = Procedura obsługi przerwania

* Oni = autor książki

questionAnswers(4)

yourAnswerToTheQuestion