Poprzedni Następny

Przerwania w RTLinuksie

Schemat przerwań w RTLinuxie Software'owa emulacja przerwań dla Linuksa
  • RTLinux przechwytuje cli() i sti()
  • gdy kernel Linuksa wywołuje cli(), specjalna globalna zmienna SFIF zostaje ustawiona na 0 - RTCore wie, że kernel nie chce dostawać przerwań
  • gdy kernel Linuksa wywołuje sti(), uruchomiona zostaje emulacja wszystkich zakolejkowanych przerwań (o ile jakieś oczekują), po czym zmienna SFIF zostaje ustawiona na 1.
Zmienione w kernelu muszą zostać jedynie cli(), sti() i wrappery przerwań.