1 Systemy Czasu RzeczywistegoZastosowania Informatyki Wykład 10 Systemy Czasu Rzeczywistego Copyright, 2003 © Adam Czajka
2 Copyright, 2003 © Adam CzajkaSpis treści Systemy Czasu Rzeczywistego Metoda HRT-HOOD Tworzenie systemów w języku C Szeregowanie zadań Copyright, 2003 © Adam Czajka
3 Copyright, 2003 © Adam CzajkaWstęp Systemy czasu rzeczywistego: Systemy wbudowane Systemy sterujące procesami przemysłowymi Systemy sterujące Copyright, 2003 © Adam Czajka
4 Copyright, 2003 © Adam CzajkaWstęp Systemy czasu rzeczywistego: Zdarzenie Odpowiedź SCR 50 ms Systemy Sterowane zdarzeniami Copyright, 2003 © Adam Czajka
5 Copyright, 2003 © Adam CzajkaWstęp Systemy czasu rzeczywistego: Zdarzenie Odpowiedź SCR 500 ms Systemy Sterowane zdarzeniami Copyright, 2003 © Adam Czajka
6 Copyright, 2003 © Adam CzajkaWstęp Systemy czasu rzeczywistego: Zdarzenie Odpowiedź SCR Błąd !!! 500 ms Systemy Sterowane zdarzeniami Copyright, 2003 © Adam Czajka
7 Copyright, 2003 © Adam CzajkaWstęp Systemy czasu rzeczywistego: Systemy Silnie i Słabo-uwarunkowane czasowe Copyright, 2003 © Adam Czajka
8 Copyright, 2003 © Adam CzajkaWstęp Specyfikacja wymagań Projektowanie Kodowanie Szeregowanie zadań Uruchamianie Copyright, 2003 © Adam Czajka
9 Copyright, 2003 © Adam CzajkaMetoda HRT-HOOD HOOD= Hierarchical Object-Oriented Design HRT-HOOD= Hard Real-Time HOOD Europejska Agencja ds. Przestrzeni Lata A. Burns, A. Wellings, University of York Konkurencja: Real-Time UML Copyright, 2003 © Adam Czajka
10 Copyright, 2003 © Adam CzajkaMetoda HRT-HOOD Typy obiektów Przepływ danych Atrybuty obiektów Dekompozycja Klasy Systemy rozproszone Copyright, 2003 © Adam Czajka
11 Copyright, 2003 © Adam CzajkaTypy obiektów Rodzaj obiektu Nazwa Aktywne (A) Pasywne (Pa) Cykliczne (C) Sporadyczne (S) Chronione (Pr) Operacje Copyright, 2003 © Adam Czajka
12 Obiekty pasywne == Zbiór operacjiTypy obiektów Obiekty pasywne Obiekty pasywne == Zbiór operacji Copyright, 2003 © Adam Czajka
13 Obiekty aktywne – typy operacji Funkcjonalne ograniczenia aktywacjiTypy obiektów Obiekty aktywne – typy operacji Asynchroniczne (ASER) Słabo zsynchronizowane (LSER) Silnie zsynchronizowane (HSER) Funkcjonalne ograniczenia aktywacji Copyright, 2003 © Adam Czajka
14 Obiekty aktywne – ograniczenia czasoweTypy obiektów Obiekty aktywne – ograniczenia czasowe Ograniczenia czasowe są związane z następującymi operacjami : HSER TOER_HSER LSER TOER_LSER (Timed Operation Execution Request) Copyright, 2003 © Adam Czajka
15 Obiekty aktywne – ograniczenia czasoweTypy obiektów Obiekty aktywne – ograniczenia czasowe Copyright, 2003 © Adam Czajka
16 Objekt jest aktywowany cyklicznieTypy obiektów Obiekty cykliczne Objekt jest aktywowany cyklicznie Copyright, 2003 © Adam Czajka
17 Obiekty cykliczne – pomiar temperaturyTypy obiektów Obiekty cykliczne – pomiar temperatury 1 min. 1 min. czas okres Copyright, 2003 © Adam Czajka
18 Operacja Start może być aktywowana przez przerwanieTypy obiektów Obiekty sporadyczne Operacja Start może być aktywowana przez przerwanie Copyright, 2003 © Adam Czajka
19 Obiekty sporadyczne – odczyt klawiaturyTypy obiektów Obiekty sporadyczne – odczyt klawiatury 1 min. 0,5 min. czas max. częstotliwość Copyright, 2003 © Adam Czajka
20 Typy obiektów Asynchroniczne (PAER) - inObiekty chronione – typy operacji Asynchroniczne (PAER) - in Synchroniczne (PSER) – in/outs Tylko operacje PSER mogą posiadać funkcjonalne ograniczenia aktywacji Copyright, 2003 © Adam Czajka
21 W danej chwili obiekt chroniony wykonuje tylko jedną operacjęTypy obiektów Obiekty chronione W danej chwili obiekt chroniony wykonuje tylko jedną operację ? ? ? napraw element uporządkuj narzędzia Copyright, 2003 © Adam Czajka
22 W danej chwili obiekt chroniony wykonuje tylko jedną operacjęTypy obiektów Obiekty chronione W danej chwili obiekt chroniony wykonuje tylko jedną operację napraw element uporządkuj narzędzia Copyright, 2003 © Adam Czajka
23 W danej chwili obiekt chroniony wykonuje tylko jedną operacjęTypy obiektów Obiekty chronione W danej chwili obiekt chroniony wykonuje tylko jedną operację napraw element uporządkuj narzędzia Copyright, 2003 © Adam Czajka
24 Copyright, 2003 © Adam CzajkaPrzepływ danych Problem producenta i konsumenta 20 min. 2 dni Copyright, 2003 © Adam Czajka
25 Copyright, 2003 © Adam CzajkaPrzepływ danych Copyright, 2003 © Adam Czajka
26 Zasady wywołań operacji obiektówPrzepływ danych Zasady wywołań operacji obiektów Aktywny (A) każdy inny obiekt Cykliczny (C), Sporadyczny (S) Każdy inny obiekt za wyjątkiem aktywnego Chroniony (Pr) Tylko chronione i pasywne Pasywny (Pa) tylko pasywne Copyright, 2003 © Adam Czajka
27 Zasady wywołań funkcjiPrzepływ danych Zasady wywołań funkcji Zasada ogólna : Jeżeli A i B są obiektami pasywnymi (lub chronionymi) a obiekt A wywołuje pewną operację obiektu B, to obiekt B nie może wywołać żadnej operacji obiektu A. Copyright, 2003 © Adam Czajka
28 Copyright, 2003 © Adam CzajkaWyjątki Copyright, 2003 © Adam Czajka
29 Copyright, 2003 © Adam CzajkaAtrybuty obiektów DEADLINE THREAD BUDGET THREAD WCET OFFSET PRIORITY IMPORTANCE INTEGRITY PERIOD (tylko obiekty cykliczne) Minimum Arrival Time (tylko obiekty sporadyczne) Copyright, 2003 © Adam Czajka
30 Atrybuty obiektów chronionych :Atrybuty operacji : OPERATION BUDGET OPERATION WCET (WCET = BUDGET + ERROR_HANDLING) Atrybuty obiektów chronionych : Cel : Sprawdzić szeregowalność systemu. CEILING PRIORITY INTEGRITY Copyright, 2003 © Adam Czajka
31 Copyright, 2003 © Adam CzajkaDekompozycja Obiektów Operacji Bardziej uszczegó- łowione obiekty dekompozycja Cały system (1 obiekt aktywny) System zdekomponowany (bez obiektów aktywnych) Copyright, 2003 © Adam Czajka
32 Copyright, 2003 © Adam CzajkaDekompozycja Zasady dekompozycji : Active jakikolwiek inny obiekt Passive tylko obiekty pasywne Protected obiekty pasywne + 1 chroniony Sporadic Pasywne, Chronione, + co najmniej 1 Sporadyczny Cyclic Pasywne, Chronione + co najmniej 1 Cykliczny Copyright, 2003 © Adam Czajka
33 Cykliczne, SporadyczneDekompozycja Zasady dekompozycji : Aktywne Cykliczne, Sporadyczne Chronione Pasywne Copyright, 2003 © Adam Czajka
34 Cykliczne, Sporadyczne System zdekomponowanyDekompozycja Zasady dekompozycji : Aktywne Cykliczne, Sporadyczne System zdekomponowany Chronione Pasywne Copyright, 2003 © Adam Czajka
35 Zasady dekompozycji (przykłady dekompozycji operacji) :Dekompozycja Zasady dekompozycji (przykłady dekompozycji operacji) : ASER ASER ASER PAER LSER PSER PSER PSER Dekompozycja jest poprawna tylko, jeśli nie narusza własności obiektu rodzica. Copyright, 2003 © Adam Czajka
36 Copyright, 2003 © Adam CzajkaDekompozycja Przykład Copyright, 2003 © Adam Czajka
37 Copyright, 2003 © Adam CzajkaDekompozycja Copyright, 2003 © Adam Czajka
38 Copyright, 2003 © Adam CzajkaObiekty środowiska Copyright, 2003 © Adam Czajka
39 Copyright, 2003 © Adam CzajkaKlasy Copyright, 2003 © Adam Czajka
40 Copyright, 2003 © Adam CzajkaSystemy rozproszone Bufor : obiekt rzeczywisty „stub” klienta „stub” serwera Copyright, 2003 © Adam Czajka
41 Copyright, 2003 © Adam CzajkaZadanie Zaprojektować przy użyciu metody HRT-HOOD system „4 czytelników i pisarza” Copyright, 2003 © Adam Czajka