Wykład 5: Specyfikacja na poziomie systemowym

Podobne dokumenty
Systemy wbudowane. Architektura środowiska SystemC. Wykład 8: SystemC zasady modelowania systemów wbudowanych

Rozszerzenia sieci Petriego

Rozszerzenia sieci Petriego

miejsca przejścia, łuki i żetony

Sieci Petriego. Sieć Petriego

Mechanizmy komunikacji. spotkania symetryczne (język CSP) spotkania asymetryczne (Ada) przestrzenie krotek (Linda) potoki, komunikaty i kanały (Unix)

procesów Współbieżność i synchronizacja procesów Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak

Detekcja zakleszczenia (1)

Języki skryptowe - PHP. PHP i bazy danych. Paweł Kasprowski. pawel@kasprowski.pl. vl07

Inżynieria oprogramowania

Systemy wbudowane. Uproszczone metody kosyntezy. Wykład 11: Metody kosyntezy systemów wbudowanych

Instrukcje sekwencyjne

Przemysłowe Sieci Informatyczne (PSI) Systemy Czasu Rzeczywistego (SCR)

Kolejki FIFO (łącza nazwane)

Wybrane działy Informatyki Stosowanej

Pojedyncze wartości zadeklarowanego typu Ustawiane przed rozpoczęciem symulacji bez moŝliwości

Porządek dostępu do zasobu: procesory obszary pamięci cykle procesora pliki urządzenia we/wy

Łącza nienazwane(potoki) Łącza nienazwane mogą być używane tylko pomiędzy procesami ze sobą powiązanymi.

Mechanizmy pracy równoległej. Jarosław Kuchta

Wzajemne wykluczanie i zakleszczenie

Laboratorium Systemów SCADA

Gatesms.eu Mobilne Rozwiązania dla biznesu

Systemy wbudowane. Cel syntezy systemowej. Wykład 12: Przykłady kosyntezy systemów wbudowanych

Przykładowe pytania z części PSPICE. 1. Podaj zasady tworzenia pliku symulacyjnego. 2. Czy składnia PSPICE jest czuła na wielkość liter? 3.

Programowanie Układów Logicznych kod kursu: ETD6203. Komunikacja z układami cyfrowymi W dr inż. Daniel Kopiec

Przetwarzanie rozproszone

ZŁOŻONOŚĆ OBLICZENIOWA ALGORYTMÓW

JĘZYK PYTHON - NARZĘDZIE DLA KAŻDEGO NAUKOWCA. Marcin Lewandowski [ mlew@ippt.gov.pl ]

Modelowanie złożonych układów cyfrowych (1)

Rywalizacja w sieci cd. Protokoły komunikacyjne. Model ISO. Protokoły komunikacyjne (cd.) Struktura komunikatu. Przesyłanie między warstwami

Bazy Danych i Usługi Sieciowe

Programowanie równoległe i rozproszone. Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz

Adres IP

Aby w pełni przetestować układ o trzech wejściach IN_0, IN_1 i IN_2 chcemy wygenerować wszystkie możliwe kombinacje sygnałów wejściowych.

Projektowanie Scalonych Systemów Wbudowanych VERILOG

5. Model komunikujących się procesów, komunikaty

Przetwarzanie rozproszone

Wydział Zarządzania AGH. Katedra Informatyki Stosowanej. Podstawy VBA cz. 1. Programowanie komputerowe

Przetwarzanie rozproszone

Zał nr 4 do ZW. Dla grupy kursów zaznaczyć kurs końcowy. Liczba punktów ECTS charakterze praktycznym (P)

Systemy Sterowania i Wspomagania Decyzji Wykład 2

Rozproszone systemy internetowe. Wprowadzenie. Koncepcja zdalnego wywołania procedury

TCP - receive buffer (queue), send buffer (queue)

Problem detekcji zakończenia

Systemy internetowe. Wykład 5 Architektura WWW. West Pomeranian University of Technology, Szczecin; Faculty of Computer Science

Podstawy programowania w języku JavaScript

Zmienne i stałe w PHP

Projekt prostego procesora

Stan globalny. Krzysztof Banaś Systemy rozproszone 1

NoSQL Not Only SQL, CouchDB. I.Wojnicki, NoSQL. Apache CouchDB has started. Time to relax. Igor Wojnicki

Ministerstwo Finansów

Komputerowe systemy sterowania

Laboratorium 10 Temat: Zaawansowane jednostki testowe. Operacje na plikach. Funkcje.

Semafory. // G - globalna dla wszystkich. // Wada - aktywne oczekiwanie Test_and_Set(Li); exit when Li = 0; end loop sekcja_krytyczna(i); G := 0;

Języki opisu sprzętu VHDL Mariusz Rawski

Techniki komputerowe w robotyce

1 Wstęp. 2 Proste przykłady. 3 Podstawowe elementy leksykalne i typy danych. 6 Opis strukturalny. 7 Moduł testowy (testbench)

Problem zakleszczenia

Polityka prywatności Spółdzielni Mieszkaniowej Słoneczny Stok

Popularne dostępne rozwiązania. Najpopularniejsze środowiska programistyczne:

Modelowanie procesów współbieżnych

Kolejkowanie wiadomości Standard MQ (JMS)

Modele programowania równoległego. Programowanie z przekazywaniem komunikatów Message-Passing Programming Rafał Walkowiak dla PR PP

Warstwy oprogramowania wejścia/wyjścia

Interfejs transmisji danych

TECHNIKA MIKROPROCESOROWA

Losowość w rozproszonym modelu

PROJEKT WSPÓŁFINANSOWANY ZE ŚRODKÓW UNII EUROPEJSKIEJ W RAMACH EUROPEJSKIEGO FUNDUSZU SPOŁECZNEGO OPIS PRZEDMIOTU

Przetwarzanie wielowątkowe przetwarzanie współbieżne. Krzysztof Banaś Obliczenia równoległe 1

Rok akademicki: 2012/2013 Kod: ITE s Punkty ECTS: 4. Poziom studiów: Studia I stopnia Forma i tryb studiów: -

Systemy rozproszone. na użytkownikach systemu rozproszonego wrażenie pojedynczego i zintegrowanego systemu.

Modele programowania równoległego. Programowanie z przekazywaniem komunikatów Message-Passing Programming Rafał Walkowiak

Klient-Serwer Komunikacja przy pomocy gniazd

PHP: bloki kodu, tablice, obiekty i formularze

Zakres tematyczny dotyczący kursu PHP i MySQL - Podstawy pracy z dynamicznymi stronami internetowymi

SIECI PETRIEGO WYŻSZEGO RZEDU Kolorowane sieci Petriego. Kolorowane sieci Petriego 1

Skrypty i funkcje Zapisywane są w m-plikach Wywoływane są przez nazwę m-pliku, w którym są zapisane (bez rozszerzenia) M-pliki mogą zawierać

Co to jest NODE.JS? Nowoczesne środowisko programistyczne

Sprawozdanie. (notatki) Sieci komputerowe i bazy danych. Laboratorium nr.3 Temat: Zastosowanie protokołów przesyłania plików

Programowalne układy logiczne

Zaawansowane Techniki WWW (HTML, CSS i NODE.JS)

Zagrożenia trywialne. Zagrożenia bezpieczeństwa aplikacji internetowych. Parametry ukryte. Modyfikowanie parametrów wywołania

Uniwersalny asynchroniczny. UART Universal Asynchronous Receier- Transmiter

Zagadnienia egzaminacyjne INFORMATYKA. Stacjonarne. I-go stopnia. (INT) Inżynieria internetowa STOPIEŃ STUDIÓW TYP STUDIÓW SPECJALNOŚĆ

Komunikacja za pomocą potoków. Tomasz Borzyszkowski

Wykład 3: Implementacja programów wbudowanych

Zagadnienia egzaminacyjne INFORMATYKA. stacjonarne. I-go stopnia. (INT) Inżynieria internetowa STOPIEŃ STUDIÓW TYP STUDIÓW SPECJALNOŚĆ

I Konkurs NCBR z obszaru bezpieczeństwa i obronności

SMS Kod Automatyczny

Aplikacje WWW - laboratorium

Zaawansowane bazy danych i hurtownie danych studia zaoczne II stopnia, sem. I

Programowanie Układów Logicznych kod kursu: ETD6203 W dr inż. Daniel Kopiec. Pamięć w układach programowalnych

1. W protokole http w ogólnym przypadku elementy odpowiedzi mają: a) Postać tekstu b) Postać HTML c) Zarówno a i b 2. W usłudze DNS odpowiedź

Czas wirtualny, złożoność algorytmów

Algorytmy równoległe: prezentacja i ocena efektywności prostych algorytmów dla systemów równoległych

Szkolenia specjalistyczne

Sterowniki Programowalne (SP) Wykład 11

Program jest więc strukturą statyczną zapisaną na jakimś nośniku. Natomiast proces jest wykonującym się programem.

Transkrypt:

Systemy wbudowane Wykład 5: Specyfikacja na poziomie systemowym Ogólny model systemu informatycznego Sieć komunikujących się procesów P1 P3 P2 Kiedy procesy się aktywują? Czy jest synchronizacja między procesami? Jakie protokoły komunikacyjne? 11/7/2011 S.Deniziak:Systemy wbudowane 2 1

Model obliczeniowy stosowany model czasu metody synchronizacji pomiędzy procesami metody komunikacji pomiędzy procesami sposoby aktywacji procesów Model obliczeniowy semantyka języka specyfikacji 11/7/2011 S.Deniziak:Systemy wbudowane 3 Metody komunikacji read/write: Z blokowaniem/bez blokowania. Z buforowaniem/bez buforowania Synchronicznie/asynchronicznie 11/7/2011 S.Deniziak:Systemy wbudowane 4 2

Model znacznikowy V zbiór wartości T zbiór znaczników e i zdarzenie: TxV (znacznik + wartość) s sygnał = zbiór zdarzeń (podzbiór 2 (TxV) ) S zbiór wszystkich sygnałów (S=2 (TxV) ) S N zbiór N sygnałów P proces = podzbiór S N (zbiór możliwych relacji pomiędzy sygnałami tzn. f: S i S o ) 11/7/2011 S.Deniziak:Systemy wbudowane 5 Modele z czasem znacznik = chwila czasowa Model z czasem ciągłym CT (Continuous Time): znaczniki są uporządkowane, wartości są funkcją czasu, np. Simulink, Spice (modelowanie układów liniowych). 11/7/2011 S.Deniziak:Systemy wbudowane 6 3

Modele z czasem, cd. Model z czasem dyskretnym DT (Discrete Time) wszystkie zdarzenia mają taki sam znacznik (zachodzą jednocześnie), wartości są funkcją czasu (ale tylko w określonych chwilach), np. SystemC, SystemView (symulatory układów cyfrowych tzw. cycle-based). 11/7/2011 S.Deniziak:Systemy wbudowane 7 Modele z czasem, cd. Model ze zdarzeniami dyskretnymi DE (Discrete Event) wszystkie zdarzenia są uporządkowane, zdarzenia pojawiają się tylko w określonych chwilach czasowych, np. VHDL, Verilog (symulatory czasowe układów cyfrowych). 11/7/2011 S.Deniziak:Systemy wbudowane 8 4

Przykład sop b0 b63 put b64 rq eop get get put rdy rq 11/7/2011 S.Deniziak:Systemy wbudowane 9 Modele z czasem, cd. Model SR (Synchronous/Reactive) szczególny przypadek modelu DT, zdarzenia są globalne dla całego systemu, np. FSM, CFSM, Statecharts. receiver b/put transmitter Idle sop rcv wait sp(save) eop[len=0] [len=64] rq[ne] eop[len>0] sv2 sv1 sp(save) sp(trans) send 11/7/2011 S.Deniziak:Systemy wbudowane 10 5

Modele bez czasu Znaczniki są częściowo uporządkowane Sieć procesów KPN (Kahn Process Networks) zdarzenia dla jednego sygnału są uporządkowane, zdarzenia dla różnych sygnałów są częściowo uporządkowane, komunikacja: odczyt z blokowaniem, zapis bez blokowania, nieskończony bufor FIFO, asynchroniczne przesyłanie komunikatów, nie można przewidzieć kolejności wykonywania procesów, wielkości transmisji, itp. np. SDL, Unix pipes. rq d RCV TRV 11/7/2011 S.Deniziak:Systemy wbudowane 11 Modele bez czasu, cd Data-flow (DF) Szczególny przypadek KPN, Komunikacja jest modelowana przez znaczniki a aktywacja procesów przez tzw. warunki odpalania procesu (firing rules), SDF (stała liczba konsumowanych i generowanych znaczników), DDF (zmienna liczba znaczników), BDF (krawędzie warunkowe), Np. SPW, System Studio. rq 1 d 64 1 1 RCV TRV 11/7/2011 S.Deniziak:Systemy wbudowane 12 6

Modele bez czasu, cd Communicating Sequential Processes (CSP) Komunikacja przez tzw. rendezvous (synchroniczne przesyłanie komunikatów) Np. Occam 11/7/2011 S.Deniziak:Systemy wbudowane 13 Modele bez czasu, cd Sieci Petri PN (Petri Nets) w odróżnieniu od DF nie ma uporządkowania znaczników (znaczniki są gromadzone w tzw. miejscach, skąd mogą być pobierane przez wiele odbiorników), modele rozszerzone, np. CPN (znaczniki mają wartości). if sop then true else if eop then false else en Inp sop [b,en] eop M U X if (en) then [b,false] else[0,true] sop eop b Trash RCV [b,e] n p Save Receive Inc Req if n=64 or e then else p^b r if n=64 or e then p Buf if n=64 or e then 0 else n+1 p Send p TRM 11/7/2011 S.Deniziak:Systemy wbudowane 14 7

Inne modele Graf zadań: Szczególny przypadek SDF (każdy proces zawsze konsumuje i produkuje po jednym znaczniku z/na każdej krawędzi) P1 P3 P2 P4 P5 Zastosowania: synteza DSP, telekomunikacja Warunkowy graf zadań 11/7/2011 S.Deniziak:Systemy wbudowane 15 Przykład: wbudowany serwer internetowy (1) TCP/IP System plików (tylko do odczytu) Obsługa protokołu HTTP (polecenia GET i POST) 11/7/2011 S.Deniziak:Systemy wbudowane 16 8

Przykład: wbudowany serwer internetowy (2) Inicjalizacja Oczekiwanie na żądanie HTTP Przetwarzanie żądania Problemy: - Jednoczesna obsługa wielu klientów - długi czas wykonania żądania Wykonanie żądania GET Wykonanie żądania POST Zamknięcie połączenia 11/7/2011 S.Deniziak:Systemy wbudowane 17 Przykład: wbudowany serwer internetowy (3) Init/ NextRequest TCP/IP Transmit Req=GET Process Request Req=POST HandleGet HandlePost Manage Connection 11/7/2011 S.Deniziak:Systemy wbudowane 18 9

Problemy Dostęp do wspólnych zasobów Zakleszczenia Zrównoleglenie obliczeń Transmisje 11/7/2011 S.Deniziak:Systemy wbudowane 19 Koniec 11/7/2011 S.Deniziak:Systemy wbudowane 20 10