sdl i prosty scheduler - zastosowania
Transkrypt
sdl i prosty scheduler - zastosowania
SDL I PROSTY SCHEDULER - ZASTOSOWANIA Ryszard Sobczak Politechnika Gda ska, Wydział Fizyki Technicznej i Matematyki Stosowanej, Zakład Matematyki Dyskretnej ul.Narutowicza 11/12; 80-952 Gda sk, [email protected] Inspiracja • Niska ocena praktyki wykonywania oprogramowania protokołów w rodowiskach systemów wbudowanych. Trudny do rozpoznania zwi zek kodu ze specyfikacj . • Niska ocena sposobu przygotowania rodowiska systemów wbudowanych do wykonywania oprogramowania protokołów telekomunikacyjnych. Brak niezb dnych funkcji i oferta wielu zb dnych funkcji. • Artykuł: Fry lewicz Z., Ułasiewicz J., Scheduler transakcyjny dla zastosowa telekomunikacyjnych, Informatyka nr 2, 1992 Scheduler - Niedu a liczba procesów statycznych, - Brak wywłaszczania, - Krótki czas obsługi komunikatu. Rozwi zanie proste i tanie, ale czy wystarczaj ce? SDL • Z.100 Specification and Description Language (SDL). ITU Recommendation , 1993 • Badach A, Sobczak R., Zientalski M., Entwicklung von Fernübertragungssystemunterlagen elektronischer Telegrafie-Zentralen, 18 Fachkolloquim Informationstechnik. Drezno, luty 1985 • SDL-RT Specification & Description Language Real Time, www.sdl-rt.org, 2003 SDL SDL i scheduler - implementacja Implementacja podstawowych elementów specyfikacji automatu opisuj cego proces • #define Process(z) switch(Processes[z].State) { • #define State(x) case x:switch(Ev->EID){ • #define Input(x) case x: { • #define Output(x,D,Q,B) {OutMe (byte x, byte D, byte Q, BufferT *B);} • #define NextState(y) {Processes[Self].State=y;} • Struktury danych z j zyka C • Przykład Layer 3.C SDL – komunikacja W j zyku SDL z ka dym procesem jest zwi zany indywidualny bufor komunikatów adresowanych do procesu P1 Komunikat 2 Komunikat 1 P2 P3 SDL – odmierzanie czasu Odpowiedni mechanizm odmierzania czasu: najcz stszy brak w rodowisku oprogramowania wbudowanego. W SDL upłyni cie czasu jest przekazywane do procesu z zastosowaniem komunikatu od procesu zegara SDL i scheduler – odmierzanie czasu Scenariusz: Po ustawieniu timera T1 nast piło zdarzenie I1, ale zanim scheduler je obsłu ył upłyn ł czas odmierzany przez timer T1 i odpowiedni komunikat został umieszczony w buforze schedulera RESET(T1) SET(T1,N2) SET(T1,N1) T1 ... I1 X SDL – komunikacja W j zyku SDL z ka dym procesem jest zwi zany indywidualny bufor komunikatów adresowanych do procesu P1 Komunikat 2 Komunikat 1 P2 P3 SDL i scheduler – ograniczenia w stosowaniu Wymuszenie kolejno ci obsługi zdarze S0 I1 I2 ... S1 I2 I3 State S0; Input I1; ... NextState S1; Save I2; State S1; Input I2; ... Input I3; ... Podsumowanie • Przydatno schedulera do implementacji protokołów mo na oceni tylko poprzez analiz mo liwo ci zaimplementowania przynajmniej podstawowych mechanizmów formalnej specyfikacji protokołów. Implementowanie jednego protokołu jest dalece niewystarczaj ce. • Pomimo istnienia ogranicze wynikaj cych z konstrukcji schedulera znalazł on swoje zastosowanie w urz dzeniach stosuj cych procesory jednochipowe.