RTOS_2.pdf

(2046 KB) Pobierz
Systemy Czasu Rzeczywistego
dr inż. Szymon Cygan
s.cygan@mchtr.pw.edu.pl
pok. 40
Procesy i wątki
Definicje:
Program (program) – Zapis algorytmu operującego na
określonych strukturach danych (algorytm + struktury danych)
Proces (process) – wykonujący się program
Przerwanie (interrupt) – chwilowe wstrzymanie aktualnie
wykonywanego procesu i wykonanie procedury obsługi
przerwania ISR (Interrupt
Service Routine)
Kontekst procesu (process
context)
– wszystkie informacje
potrzebne do wznowienia zawieszonego wcześniej procesu.
RTOS
– 2
Procesy i wątki
Przerwanie:
Przełączenie procesu na proces obsługi przerwania ISR.
Przerwanie
ISR
Proces P
Zachowanie
kontekstu
Zachowanie
kontekstu
Proces P
Czas
RTOS
– 3
Procesy i wątki
Podział czasu procesora:
O przełączaniu procesów/wątków decyduje procedura szeregująca
(scheduler) – zawarta w mikrojądrze systemu QNX. Trzy fazy:
Zachowanie kontekstu procesu
Podjęcie decyzji, który proces wznowić (decyzja szeregująca)
Przywrócenie kontekstu wznawianego procesu
Decyzja
szeregująca
Decyzja
szeregująca
P2
Przywrócenie
kontekstu P2
Zachowanie
kontekstu P2
P1
Zachowanie
kontekstu P1
P1
Przywrócnie
kontekstu P1
Czas
RTOS
– 4
Procesy i wątki
Przełączanie procesów zachodzi, gdy wystąpiło:
Przerwanie zegarowe a proces wyczerpał swój przydział (kwant)
czasu.
Przerwanie zewnętrzne sygnalizujące zakończenie innej operacji
(np. we/wy) – inny proces uzyskał status gotowości.
Przerwanie procesora – oznaczające wykonanie niedozwolonej
operacji.
Wywołanie systemowe (wykonane przez proces) zmieniające
status gotowości innego procesu.
Czyli nie da się przewidzieć momentu przełączania procesów.
RTOS
– 5
Zgłoś jeśli naruszono regulamin