SZEREGOWANIE ZADAŃ CYKLICZNYCH Z WYKORZYSTANIEM ALGORYTMÓW PRIORYTETOWYCH ON SCHEDULING OF CYCLIC TASKS USING PRIORITY ALGORITHMS

Podobne dokumenty
WikiWS For Business Sharks

BADANIA OPERACYJNE. Podejmowanie decyzji w warunkach niepewności. dr Adam Sojda

Proces narodzin i śmierci

Weryfikacja hipotez dla wielu populacji

Analiza rodzajów skutków i krytyczności uszkodzeń FMECA/FMEA według MIL STD A

Rozwiązywanie zadań optymalizacji w środowisku programu MATLAB

5. OPTYMALIZACJA GRAFOWO-SIECIOWA

Projekt 6 6. ROZWIĄZYWANIE RÓWNAŃ NIELINIOWYCH CAŁKOWANIE NUMERYCZNE

PODSTAWA WYMIARU ORAZ WYSOKOŚĆ EMERYTURY USTALANEJ NA DOTYCHCZASOWYCH ZASADACH

KRZYWA BÉZIERA TWORZENIE I WIZUALIZACJA KRZYWYCH PARAMETRYCZNYCH NA PRZYKŁADZIE KRZYWEJ BÉZIERA

1. Szeregowanie w systemach czasu rzeczywistego

STATYSTYKA MATEMATYCZNA WYKŁAD 5 WERYFIKACJA HIPOTEZ NIEPARAMETRYCZNYCH

Analiza danych OGÓLNY SCHEMAT. Dane treningowe (znana decyzja) Klasyfikator. Dane testowe (znana decyzja)

Zadanie 1. Udowodnij, że CAUS PRAM. Załóżmy przetwarzanie przyczynowo spójne. Dla każdego obrazu historii hv i zachodzi zatem:

Definicje ogólne

Urządzenia wejścia-wyjścia

Zaawansowane metody numeryczne

Treść zadań 1 8 odnosi się do poniższego diagramu przestrzenno-czasowego.

Zmodyfikowana technika programowania dynamicznego

SYSTEM ZALICZEŃ ĆWICZEŃ

STATECZNOŚĆ SKARP. α - kąt nachylenia skarpy [ o ], φ - kąt tarcia wewnętrznego gruntu [ o ],

Praca podkładu kolejowego jako konstrukcji o zmiennym przekroju poprzecznym zagadnienie ekwiwalentnego przekroju

Zaawansowane metody numeryczne Komputerowa analiza zagadnień różniczkowych 1. Układy równań liniowych

Portfele zawierające walor pozbawiony ryzyka. Elementy teorii rynku kapitałowego

Regulamin promocji 14 wiosna

XXX OLIMPIADA FIZYCZNA ETAP III Zadanie doświadczalne

) będą niezależnymi zmiennymi losowymi o tym samym rozkładzie normalnym z następującymi parametrami: nieznaną wartością 1 4

SZACOWANIE NIEPEWNOŚCI POMIARU METODĄ PROPAGACJI ROZKŁADÓW

Pomiary parametrów akustycznych wnętrz.

Stanisław Cichocki Natalia Nehrebecka. Zajęcia 4

WPŁYW PARAMETRÓW DYSKRETYZACJI NA NIEPEWNOŚĆ WYNIKÓW POMIARU OBIEKTÓW OBRAZU CYFROWEGO

Regulamin promocji zimowa piętnastka

Stanisław Cichocki. Natalia Nehrebecka. Wykład 6

ZESZYTY NAUKOWE INSTYTUTU POJAZDÓW 2(88)/2012

Natalia Nehrebecka. Zajęcia 4

KURS STATYSTYKA. Lekcja 6 Regresja i linie regresji ZADANIE DOMOWE. Strona 1

Zestaw zadań 4: Przestrzenie wektorowe i podprzestrzenie. Liniowa niezależność. Sumy i sumy proste podprzestrzeni.

7.8. RUCH ZMIENNY USTALONY W KORYTACH PRYZMATYCZNYCH

Stanisław Cichocki. Natalia Nehrebecka. Wykład 7

MATEMATYKA POZIOM ROZSZERZONY Kryteria oceniania odpowiedzi. Arkusz A II. Strona 1 z 5

STARE A NOWE KRAJE UE KONKURENCYJNOŚĆ POLSKIEGO EKSPORTU

Twierdzenie Bezouta i liczby zespolone Javier de Lucas. Rozwi azanie 2. Z twierdzenia dzielenia wielomianów, mamy, że

Systemy Ochrony Powietrza Ćwiczenia Laboratoryjne

Regulamin promocji upalne lato


Programowanie Równoległe i Rozproszone

METODA UNITARYZACJI ZEROWANEJ Porównanie obiektów przy ocenie wielokryterialnej. Ranking obiektów.

Statystyka Inżynierska

8. Optymalizacja decyzji inwestycyjnych

Symulator układu regulacji automatycznej z samonastrajającym regulatorem PID

Evaluation of estimation accuracy of correlation functions with use of virtual correlator model

APROKSYMACJA QUASIJEDNOSTAJNA

ZESZYTY NAUKOWE INSTYTUTU POJAZDÓW 5(96)/2013

Stanisław Cichocki. Natalia Nehrebecka. Wykład 6

ZAŁĄCZNIK NR 1C KARTA USŁUGI Utrzymanie Systemu Kopii Zapasowych (USKZ)

Badanie współzależności dwóch cech ilościowych X i Y. Analiza korelacji prostej

Prawdopodobieństwo geometryczne

Zastosowanie symulatora ChemCad do modelowania złożonych układów reakcyjnych procesów petrochemicznych

OPTYMALIZACJA WARTOŚCI POLA MAGNETYCZNEGO W POBLIŻU LINII NAPOWIETRZNEJ Z WYKORZYSTANIEM ALGORYTMU GENETYCZNEGO

OKRESOWA EMERYTURA KAPITAŁOWA ZE ŚRODKÓW ZGROMADZONYCH W OFE

WYZNACZENIE CHARAKTERYSTYK DYNAMICZNYCH PRZETWORNIKÓW POMIAROWYCH

RÓWNOLEGŁY ALGORYTM POPULACYJNY DLA PROBLEMU GNIAZDOWEGO Z RÓWNOLEGŁYMI MASZYNAMI

Pokazać, że wyżej zdefiniowana struktura algebraiczna jest przestrzenią wektorową nad ciałem

WPŁYW POSTACI FUNKCJI JAKOŚCI ORAZ WAG KRYTERIÓW CZĄSTKOWYCH NA WYNIKI OPTYMALIZACJI ZDERZENIA METODĄ GENETYCZNĄ

Przykład 5.1. Kratownica dwukrotnie statycznie niewyznaczalna

Model ASAD. ceny i płace mogą ulegać zmianom (w odróżnieniu od poprzednio omawianych modeli)

Statyczna alokacja kanałów (FCA)

Współczynnik przenikania ciepła U v. 4.00

Proste modele ze złożonym zachowaniem czyli o chaosie

W praktyce często zdarza się, że wyniki obu prób możemy traktować jako. wyniki pomiarów na tym samym elemencie populacji np.

3. ŁUK ELEKTRYCZNY PRĄDU STAŁEGO I PRZEMIENNEGO

TRANZYSTOR BIPOLARNY CHARAKTERYSTYKI STATYCZNE

Diagonalizacja macierzy kwadratowej

STATYSTYCZNA ANALIZA WYNIKÓW POMIARÓW

NOWA EMERYTURA Z FUNDUSZU UBEZPIECZEŃ SPOŁECZNYCH

WSKAŹNIK OCENY HIC SAMOCHODU OSOBOWEGO W ASPEKCIE BEZPIECZEŃSTWA RUCHU DROGOWEGO

Plan wykładu: Typowe dane. Jednoczynnikowa Analiza wariancji. Zasada: porównać zmienność pomiędzy i wewnątrz grup

Zapis informacji, systemy pozycyjne 1. Literatura Jerzy Grębosz, Symfonia C++ standard. Harvey M. Deitl, Paul J. Deitl, Arkana C++. Programowanie.

NAFTA-GAZ marzec 2011 ROK LXVII. Wprowadzenie. Tadeusz Kwilosz

AUTOMATYKA I STEROWANIE W CHŁODNICTWIE, KLIMATYZACJI I OGRZEWNICTWIE L3 STEROWANIE INWERTEROWYM URZĄDZENIEM CHŁODNICZYM W TRYBIE PD ORAZ PID

Analiza struktury zbiorowości statystycznej

Określanie mocy cylindra C w zaleŝności od ostrości wzroku V 0 Ostrość wzroku V 0 7/5 6/5 5/5 4/5 3/5 2/5 Moc cylindra C 0,5 0,75 1,0 1,25 1,5 > 2

Wykład IX Optymalizacja i minimalizacja funkcji

Statystyka. Zmienne losowe

(M2) Dynamika 1. ŚRODEK MASY. T. Środek ciężkości i środek masy

Problemy jednoczesnego testowania wielu hipotez statystycznych i ich zastosowania w analizie mikromacierzy DNA

kosztów ogrzewania lokali w budynku wielolokalowym.

mgr inż. Wojciech Artichowicz MODELOWANIE PRZEPŁYWU USTALONEGO NIEJEDNOSTAJNEGO W KANAŁACH OTWARTYCH

WSPOMAGANE KOMPUTEROWO POMIARY CZĘSTOTLIWOŚCI CHWILOWEJ SYGNAŁÓW IMPULSOWYCH

Rozkład dwupunktowy. Rozkład dwupunktowy. Rozkład dwupunktowy x i p i 0 1-p 1 p suma 1

KONSTRUKCJA OPTYMALNYCH PORTFELI Z ZASTOSOWANIEM METOD ANALIZY FUNDAMENTALNEJ UJĘCIE DYNAMICZNE

Sprawozdanie powinno zawierać:

ELEKTROCHEMIA. ( i = i ) Wykład II b. Nadnapięcie Równanie Buttlera-Volmera Równania Tafela. Wykład II. Równowaga dynamiczna i prąd wymiany

I. Elementy analizy matematycznej

ZASTOSOWANIE ANALIZY HARMONICZNEJ DO OKREŚLENIA SIŁY I DŁUGOŚCI CYKLI GIEŁDOWYCH

Dr inż. Robert Smusz Politechnika Rzeszowska im. I. Łukasiewicza Wydział Budowy Maszyn i Lotnictwa Katedra Termodynamiki

PROGNOZOWANIE SPRZEDAŻY Z ZASTOSOWANIEM ROZKŁADU GAMMA Z KOREKCJĄ ZE WZGLĘDU NA WAHANIA SEZONOWE

BADANIE PROCESU EKSPLOATACJI W ASPEKCIE NIEZAWODNOŚCIOWO- EKONOMICZNYM

OKRESOWA EMERYTURA KAPITAŁOWA ZE ŚRODKÓW ZGROMADZONYCH W OFE

RÓWNOWAGA STACKELBERGA W GRACH SEKWENCYJNYCH

Transkrypt:

LECH JAMROŻ, JERZY RASZKA SZEREGOWANIE ZADAŃ CYKLICZNYCH Z WYKORZYSANIEM ALGORYMÓW PRIORYEOWYCH ON SCHEDULING OF CYCLIC ASKS USING PRIORIY ALGORIHMS S t r e s z c z e n e A b s t r a c t W artykule przedstawone jest zagadnene szeregowana zadań cyklcznych w systemach czasu rzeczywstego. Oprogramowane aplkacyjne systemów, najczęścej składa sę z tego typu zadań o różnych ogranczenach czasowych, które ne mogą być przekroczone. Stosowaną metodą szeregowana nezależnych zadań cyklcznych jest przydzelane m prorytetów. Stratega doboru prorytetów oraz zasada posługwana sę nm określona jest algorytmem szeregowana. Rozważane są prorytetowe algorytmy RMS, DMS oraz EDF, dla których przedstawone są warunk szeregowalnośc. Słowa kluczowe: szeregowane, algorytmy prorytetowe, zadana cyklczne hs paper s devoted to the schedulng of cyclc tasks n real-tme systems. he applcaton programs of such systems have been defned as those contanng cyclc tasks that have deadlnes that cannot be mssed. he prorty algorthms: RMS, DMS and EDF for schedulng set of ndependent cyclc tasks are consdered. here are several rules basng on whch the prortes are assgned to the tasks and then the tasks are beng scheduled. Schedulablty constrans are consdered whch guarantee the deadlnes of cyclc tasks. Keywords: schedulng, prorty algorthms, cyclc tasks Dr nż. Lech Jamroż, dr nż. Jerzy Raszka, Instytut Informatyk, Wydzał Fzyk, Matematyk Informatyk, Poltechnka Krakowska.

142 1. Wstęp Wele aplkacj wykorzystywanych w systemach czasu rzeczywstego składa sę ze zboru zadań wykonywanych cyklczne (np. odczyt danych sensorycznych, pętle sterowana, montorowane). Aplkacje te są zorentowane ne tylko na poprawność dostarczanych wynków, ale równeż na koneczność zagwarantowana, żeby każda perodyczna nstancja była regularne aktywowana z prawdłową częstotlwoścą kończyła swoje oblczena przed upływem neprzekraczalnego termnu (deadlne). W welu przypadkach zapewnene punktualnośc przewdywalnośc systemów można uzyskać poprzez podzał oprogramowana aplkacyjnego na nezależne zadana cyklczne, wykonywane z rożnym ogranczenam czasowym [2, 3, 7, 10]. W celu uporządkowana zboru tych zadań nadaje sę m prorytety, które mogą zapewnć spełnene żądanych uwarunkowań czasowych. Stratega doboru prorytetów oraz zasada posługwana sę nm w wykonywanu zadań określona jest algorytmem szeregowana. Ze względu na sposób podejmowana decyzj, wyróżnamy dwe podstawowe stratege szeregowana: szeregowane statyczne (pre-run-tme schedulng) oraz szeregowane dynamczne (run-tme schedulng). Szeregowane statyczne odbywa sę przed uruchomenem systemu jego rezultatem jest Plan Aktywacj Procesów (PAP), nterpretowany jako pewna funkcja określająca zadane, które w danej chwl ma być wykonywane (PAP może być pamętany w postac tablcy lub lsty). Warunkem stosowalnośc metody jest aproryczna znajomość zadań wraz z ch charakterystykam czasowym. Przykładem tej strateg szeregowana są algorytmy RMS oraz DMS [1, 2, 8]. Szeregowane dynamczne odbywa sę na beżąco w trakce pracy systemu. Podstawą dzałana tego szeregowana są prorytety, określające względną ważność zadań. Metoda może być stosowana, gdy charakterystyk czasowe zadań ne są z góry znane. Przykładem tej strateg szeregowana jest algorytm EDF [6, 3]. Ze względu na przyczynę podejmowana decyzj szeregujących wyróżna sę: szeregowane wymuszane czasem (clock drven schedulng) oraz szeregowane wymuszane zdarzenam (event drven schedulng). Dla szeregowana wymuszanego czasem decyzje szeregujące podejmowane są w specyfcznych, często z góry ustalonych chwlach czasu. Gdy parametry zadań są znane a pror, plan szeregowana można ułożyć w postac tablcy (szeregowane cyklczne). W przypadku szeregowana wymuszanego zdarzenam, decyzje szeregujące podejmowane są na beżąco, kedy zachodzą ścśle określone zdarzena np. zadane staje sę gotowe do wykonana, zmena sę jego prorytet albo następuje zwolnene procesora przez zadane beżące. Procedura szeregująca najczęścej jest uaktywnana gdy wystąpło przerwane sprzętowe lub proces beżący wykonał wywołane systemowe. Algorytm prorytetowy może pracować w trybe wywłaszczana (preemptve schedulng) lub ne wywłaszczana (non-preemptve schedulng) [11]. Krytyczne zadana aperodyczne (wywoływane przerwanam) traktuje sę jako cyklczne o pewnej maksymalnej częstotlwośc wznawana. Zadana sporadyczne uruchamane są w neregularnych odstępach czasowych, czas kolejnej aktywacj oblczany jest w trakce aktywacj beżącej Problem szeregowana cyklcznych zadań zależnych można rozwązać poprzez mplementowane protokołu synchronzacj [4, 5, 11].

2. Model zadana cyklcznego 143 Algorytmy szeregowana zadań cyklcznych operają sę na podstawowym modelu zadna, w którym czas dyskretny begne od chwl początkowej t 0 [6]. Zadane (task) Z = (p,, d,, r ) scharakteryzowane jest przez następujące parametry: p czas wykonana zadana (processng tme), okres (perod) występowana zadana, d względne ogranczene czasowe zadana (relatve deadlne), względny ostateczny termn zakończena zadana. r faza zadana, czas perwszego wywołana (release tme). Względne ogranczene czasowe zadana oznacza lmt czasu, przed upływem którego procesor pownen zakończyć jego wykonane. Zwykle take ogranczene czasowe jest mnejsze lub równe okresow występowana zadana. Okres występowana zadana, czas jego wykonana p oraz względne ogranczene czasowe d pownny spełnać warunek: p < d < (1) Parametry czasowe zadana cyklcznego przedstawono na rysunku 1. Rys. 1. Parametry czasowe zadana cyklcznego Fg. 1. mng parameters of cyclc task Własnośc zadań cyklcznych: wszystke zadana są cyklczne ze znanym okresem pomędzy kolejnym wystąpenam, zadana są od sebe nezależne, dopuszcza sę ch wywłaszczane, wszystke nstancje zadana mają nezmenny czas wykonana p, zadana wykonywane są cyklczne z założoną częstotlwoścą, określoną na podstawe wymagań danej aplkacj (np. wolna, szybka pętla oblczeń). Implementacją zadana nazywamy sekwencyjny program uruchamany w dyskretnych chwlach t takch, że t +1 = t +. Każde wywołane zadana powoduje jego wykonane w chwl t e określonej przez algorytm szeregujący. Jeżel t określa moment -tego wywołana zadana, to wykonywane mus rozpocząć sę ne wcześnej nż w chwl t a zakończyć ne późnej nż w chwl t d = t + d. Początek -tego wykonana zadana mus spełnać warunek t t e t d p. W algorytmach prorytetowych często zakładamy, że = d, wówczas t d = t +. Instancje (kolejne wystąpena) zadana cyklcznego są regularne aktywowane ze stałą częstotlwoścą mają ten sam najdłuższy czas wykonywana WCE (Worst Case

144 Executon me). Wszystke nstancje zadana mają tą samą wartość względnego ostatecznego termnu zakończena. Współczynnk wykorzystana procesora U [7]: n p U = (2) = 1 opsuje obcążene procesora podczas wykonywana zboru zadań cyklcznych. Dla różnych algorytmów szeregowana, współczynnk może przyjmować różne granczne wartośc, dla których dany zbór zadań jest szeregowalny (tzn. może wykonać wszystke swoje oblczena w zadanych ogranczenach czasowych). Jeżel współczynnk wykorzystana procesora jest wększy od 1, to dany zbór zadań może ne być szeregowany przez żaden algorytm prorytetowy [8]. Celem algorytmu szeregowana zadań jest take ustalene kolejnośc ch wykonywana, aby żadne zadane ne przekroczyło swojego grancznego termnu zakończena. Jeżel stneje taka kolejność to zbór zadań jest szeregowalny. Ewentualne włączane nowego zadana do systemu odbywa sę według ścśle określonej procedury (mode change protocol). W przypadku występowana zadań sporadycznych, w prowadzonych analzach zadana te są uwzględnane, lecz są one traktowane tak jak zadana cyklczne, o okrese równym mnmalnemu czasow pomędzy kolejnym wystąpenam tego samego zadana sporadycznego. 3. Klasyfkacja algorytmów prorytetowych Podstawową deą prorytetowych algorytmów szeregowana jest przyjęce określonej reguły przydzelana każdemu zadanu prorytetu. W danej chwl jest uruchamane zadane o najwyższym prorytece. Najczęścej mplementowane algorytmy szeregowana zadań cyklcznych to: 1. RMS (Rate Monotonc Schedulng) statyczny algorytm monotonczny w częstotlwośc, 2. DMS (Deadlne Monotonc Schedulng) statyczny algorytm monotonczny we względnym ogranczenu czasowym, 3. EDF (Earlest Deadlne Frst) dynamczny algorytm najwcześnejsza lna krytyczna najperw, 4. CES (Cyclc Executve Schedulng) - statyczny algorytm wykonywane cyklczne. 3.1. Algorytm RMS Algorytm RMS jest algorytmem statycznym. Dzałane algorytmu oparte jest na systeme prorytetów przydzelanych do poszczególnych zadań w ten sposób, że m krótszy okres, tym wyższy prorytet. Stosowane tej zasady wynka z faktu, że zadana występujące częścej zazwyczaj są ważnejsze od zadań występujących rzadzej. Ponadto ogranczena czasowe oraz najgorszy przypadek czasu odpowedz dla zadań występujących częścej są krótsze, co dodatkowo uzasadna stosowane tej metody.

145 Zbór nezależnych, wywłaszczalnych zadań cyklcznych ze względnym ogranczenam czasowym równym ch okresom tj. d =, może meć poprawny harmonogram na jednym procesorze utworzony przez algorytm RMS, jeśl współczynnk wykorzystana procesora spełna następujący warunek koneczny [8]: n p 1 (3) = 1 Powyższy warunek na szeregowalność zadań wynka z faktu, że łączny stopeń wykorzystana czasu pracy procesora przez wszystke zadana ne może być wększy nż 100%. Warunek wystarczający pozwalający na weryfkację spełnena warunków czasu rzeczywstego (real tme) gwarantujący, że n zadań zostane wykonanych przed upływem ch ogranczena czasowego został podany przez Lu C. Laylanda J. (1973 r.) wyraża sę wzorem [8]: U gr n p 1/ n n(2 1) (4) = 1 = Dla dużych wartośc n, U gr = ln 2 0,69, co oznacza, że każdy zbór zadań cyklcznych, dla którego współczynnk wykorzystana procesora jest 0,69 zawsze będze szeregowalny [1]. Jeśl dla danego zboru zadań współczynnk wykorzystana procesora U meśc sę w przedzale U gr U 1, to zbór ten może ne być szeregowalny. Wówczas dla rozstrzygnęca należy rozważyć przypadek najgorszy (worst case), którego wszystke zadana podlegające szeregowanu wchodzą jednocześne w stan gotowośc. Jeżel każde z rozważanych zadań zostane zakończone przed upływem swego ogranczena czasowego, to dany zbór zadań jest szeregowalny. Z kole warunek koneczny wystarczający na szeregowalność zboru zadań został podany przez Sha L. (1988 r.) wyraża sę zależnoścą [1]: gdze 1 p j j l k p :1 n, mn + 1 ( k, l) R j 1 j lk j l = k (5) R = ( k, l) :1 k, l = 1,... k Powyższe testy szeregowalnośc różną sę złożonoścą oblczenową. est (4) posada złożoność oblczenowa rzędu O(n). Złożoność oblczenowa testu (5) jest wększa zależna od danych nstancj zadań [7]. W przypadku występowana zadań zależnych, warunek (4) staje sę łagodnejszy, poneważ w prawdłowo funkcjonującym systeme ne pownna wystąpć sytuacja, w której aktywne są wszystke zadana. Wynka to z sekwencj następujących po sobe zadań, a węc spełnene tego warunku jest łatwejsze do osągnęca. Algorytm RMS spośród prorytetowych algorytmów statycznych, wyznacza uszeregowane optymalne, w tym sense że jeżel ne są utrzymywane ogranczena czasowe, to żaden nny algorytm z tej klasy równeż ch ne dotrzymuje [2].

146 3.2. Algorytm DMS Dzałane statycznego algorytmu DMS oparte jest na systeme prorytetów, przydzelanych na podstawe względnego ogranczena czasowego według zasady: mnejsza wartość ogranczena czasowego, wększy prorytet. Przyjmowane jest założene, że p d. Warunek wystarczający na stnene rozwązana dopuszczalnego wyraża sę zależnoścą [1]: gdze p I :1 n : 1 d + d (6) 1 d I = p j j= 1 j Szeregowane zadań według algorytmu DMS, jeżel stneje, to jest optymalne [1]. 3.3. Algorytm EDF Systemy, w których podczas pracy prorytet przydzelany zadanu, może zostać zmenony nazywamy systemam z dynamcznym prorytetowanem. Przykładem dynamcznego przydzału prorytetu jest algorytm EDF wykorzystujący zasadę, zgodne z którą najwyższy prorytet otrzymuje zadane, któremu najwcześnej kończy sę ogranczene czasowe. Algorytm EDF jest ogólnym algorytmem szeregującym zbory zadań w oparcu o jeden procesor, przy czym żądany termn wykonana każdego z zadań jest równy jego okresow, ponadto zadana ne są wywłaszczalne. Zbór zadań jest szeregowalny, jeżel spełnone są następujące warunk [6]: n = 1 p 1 (7) 1 L 1 : 2 n, L, 1 < L < : L p + p j j= 1 j (8) Warunek (7) odzwercedla wymagane, aby średne obcążene procesora w systeme jednoprocesorowym ne przekraczało 100%, warunek ten dotyczy szeregowana zarówno zdań wywłaszczalnych, jak newywłaszczalnych dowolnym algorytmem szeregującym. Warunek (8) jest specyfczny dla algorytmu EDF zapewna, że obcążene procesora w przedzale czasu o długośc z zakresu ( 1, ) rozpoczynającym sę w chwl wywołana zadana Z ne przekracza 100%. Zbór zadań jest szeregowalny algorytmem EDF, gdy spełnone są warunk (7) (8) [6]. W systemach z dynamcznym prorytetowanem przydzelene prorytetu rozpoczęce wykonywana zadana jest realzowane wówczas, kedy pojawa sę nowe zadane lub kończy sę wykonywane aktualnego zadana. Zaletą metody dynamcznego przydzału prorytetu EDF, w porównanu do metod statycznego przydzału RMS DMS jest lepsze wykorzystane procesora. Natomast jej wadą jest wększe obcążene procesora czynnoścam szeregowana podczas pracy. Podstawą dzałana algorytmu EDF jest regularne

147 aktualzowane termnów zakończena zadań. Czynność ta wykonywana jest po wystąpenu każdego przerwana obsługwanego przez moduł szeregujący przerwana zegarowego, pojawena sę nowego zadana lub zakończena wykonywana zadana aktualnego. Pojawające sę w systeme neokresowe zadana traktowane są przez algorytm analogczne do zadań okresowych. Jedyną różncą jest brak cyklcznego ch wykonywana. Reguły FIFO LIFO oraz LS (Least Slack me Frst) są równeż algorytmam dynamcznego przydzału prorytetów [12]. 3.4. Algorytm CES Podejśce do szeregowana według algorytmu CES polega na specyfcznym wywoływanu zestawu procedur zgodne z utworzoną tablcą wykonywana cyklcznego. ablca obejmuje główny cykl systemu (major cycle) podzelony zwykle na pośredne cykle o stałej długośc. Pośredne cykle (mnor cycles) decydują o mnmalnym cyklu w systeme, natomast główny cykl określa cykl maksymalny [12]. Procedura szeregująca wywoływana jest w cyklu mnmalnym. Cyklem głównym jest najmnejsza wspólna welokrotność z cykl poszczególnych zadań ( 1, 2,..., n ). Plan szeregowana zadań sporządzany jest dla cyklu głównego, w którym wszystke zadana przyporządkowane do procesora pownny być wykonane tak, aby ch ogranczena czasowe ne zostały przekroczone. Względny żądany termn zakończena zadana jest równy jego okresow. Cechy charakterystyczne algorytmu to determnzm (ze względu na utworzoną tablcę) brak wywłaszczeń. Opracowane tablcy wykonywana cyklcznego jest ogólne trudne (problem NP trudny), żmudna aktualzacja, powstaje problem z włączenem zadań o długm okrese a także zadań sporadycznych. Cechy szeregowana według algorytmu CES: Wyelmnowany jest zestaw procesów (zadań) z systemu. Każdy z pośrednch cyklów jest sekwencją wywołań procedur; Procedury współdzelą wspólną przestrzeń adresową skąd mogą wymenać dane; Dane ne muszą być chronone (np. przez semafory), poneważ ne stneje współbeżny dostęp do zasobów; Wszystke okresy zadań muszą być welokrotnoścą cyklu pośrednego. Mogą pojawć sę problemy z włączenem zadań o długm okrese. Główny cykl jest zarazem maksymalnym cyklem w systeme bez konecznośc włączana dodatkowych modułów szeregujących. Podejśce to praktyczne unemożlwa zastosowane nnych, bardzej elastycznych metod szeregowana [12]. 4. Wynk badań symulacyjnych Do badań symulacyjnych wybrano algorytmy RMS EDF, które porównano wg wybranych wskaźnków, ocenając dla nch wykonywalność zadań (możlwość uszeregowana) oraz stopeń wywłaszczana zadań. Symulację przeprowadzono, przyjmując dla wszystkch zadań zerową fazę zgodność zakończena cyklu z przedzałem ogranczena czasowego, czyl odpowedno r = 0 = d dla = 1,..., n oraz przedzały czasu symulacj od początkowego czasu t 0 = 0 do czasowych ogranczeń t max >> max( ). 1... = n

148 W zwązku z przyjętym założenam zadana zdefnowane ogólne w pkt. 2, opsano uproszczoną postacą Z = (p, ). W celu porównana stopna wykonywalnośc wywłaszczana zadań, uwzględnono w zadanym przedzale w symulacj [t 0, t max ]: p rzeczywsty czas trwana tylko dla wykonanego zadana, p W czas trwana zadana od jego początku aż do zakończena (uwzględna także ewentualne wywłaszczene przez zadane o wyższym prorytece np p k na rys. 2). Do każdego przypadku zestawu n zadań oblczono na postawe uzyskanych symulacyjne czasów p p W, odpowedno: U z wartość wskaźnka określającego względny stopeń wykonywana wszystkch zadań, U w wartość wskaźnka ocenającego względny stopeń wszystkch wykonanych zadań z ch wywłaszczanem. Względność czasów wykonywana odnesono do czasu cyklu, przez analoge do ogólne przyjętego wskaźnka U wykorzystana procesora (2). W uzyskanych wynkach także w celach porównawczych ujęto wartość wskaźnka U. Rys. 2. Parametry czasowe zadana w warunkach wywłaszczana Fg. 2. mng parameters wth preempton of task Wynk szeregowana przykładu testującego dla dwóch zadań {Z 1 ( 1, p 1 ), Z 2 ( 2, p 2 )} = = {(2, 5), (4, 7)} współczynnka wykorzystana procesora U = 0,97 przedstawa rys. 3. Pogrubona przedłużona lna ponowa oznacza przekroczene przez zadane Z 2 ogranczena wynkającego z założonego czasu cyklu 2. {Z1(1, p1), Z2(2, p2)} = {(2, 5), (4, 7)} Rys. 3. Przykład testujący ex00 Fg. 3. est of example ex00

149 Dla kolejnych czterech przykładów symulacj procesów przyjęto trzy zadana, ch dane przedstawa tabela 1, a wybrany przykład uszeregowana przestawa rys 4. Zborcze wynk dla wszystkch przykładów przedstawono na rys. 5. Dane przykładów Przykład Z 1 ( 1, p 1 ) Z 2 ( 2, p 2 ) Z 3 ( 3, p 3 ) ex01 {5, 2} {7, 3} {12, 2} ex02 {7, 3} {11, 3} {15, 3} ex03 {11, 3} {14, 6} {19, 5} ex04 {11, 4} {14, 6} {19, 5} a b e l a 1 Z = {5, 2}, {7, 3}, {12, 2} Rys. 4. Przykład ex01 Fg. 4. Example ex01 Rys. 5. Wynk przykładów Fg. 5. Examples of results

150 5. Wnosk W artykule przedstawono przegląd podstawowych algorytmów prorytetowych do szeregowana zadań cyklcznych w systemach czasu rzeczywstego. Algorytmy ze stałym prorytetam są łatwejsze w mplementacj. W przypadku przecążena zachowane algorytmów RMS, DMS jest bardzej przewdywalne, ne wykonają sę zadana o nższym prorytece. Algorytmy ze stałym prorytetam umożlwają poprawne szeregowane, pommo przekroczonego teoretycznego współczynnka wykorzystana procesora. System z wykonywanem cyklcznym wg algorytmu CES jest w pełn determnstyczny, mogą pojawać sę jednak problemy z aktualzacją tablcy oraz z włączenem zadań o długm okrese wykonywana lub zadań sporadycznych. Wększość systemów czasu rzeczywstego o twardych ogranczenach czasowych wykorzystuje szeregowane statyczne. Dynamczne przydzelane prorytetów według algorytmu EDF jest mnej przewdywalne, może występować nwersja prorytetów. Szeregowane dynamczne daje zazwyczaj lepsze średne wykorzystane procesora. Potwerdzają to uzyskane wynk, dla których dynamczny algorytm EDF w stosunku do statycznego algorytmu RMS dla tych samych danych zadań, uzyskał mnejszy stopeń wywłaszczana U w przy równocześne wększym stopnu wykonywalnośc U z. L t e r a t u r a [1] A u d s l e y N.C., Deadlne Monotonc Schedulng, YCS 146, Department of Computer Scence, Unwersty of York, 1990. [2] B u h r R., B a l e y D., An Introducton to Real-me Systems, Prentce Hall, 1999. [3] G a j P., K w e c eń A [red]., Systemy nformatyczne z ogranczenam czasowym, Wydawnctwo Komunkacj Łącznośc, Warszawa 2006, 115-126. [4] J a m r oż L., R a s z k a J., Performance model of cyclc processes, Czasopsmo echnczne, 1-NP/2010, Wydawnctwo PK, Kraków 2010. [5] J a m r oż L., R a s z k a J., he use of a max-plus algebra n a schedulng of cyclc processe, Zeszyty Naukowe Poltechnk Śląskej, Automatyka, No. 151, 2008. [6] J e s t r a t j e w A., K w e c eń A., [w:] Systemy czasu rzeczywstego. Projektowane aplkacj, Gaj P. (red.), Wydawnctwo Komunkacj Łącznośc, Warszawa 2005. [7] L u J., Real me Systems, Prentce Hall, 2000. [8] L u C., L a y l a n d J., Schedulng Algorthms for Multprogrammng n a Hard-Real-me envronment, Journal of the ACM, No. 1, 1973. [9] S m u t n c k Cz., Algorytmy Szeregowana, Akademcka Ofcyna Wydawncza Ext, Warszawa 2002. [10] S z m u c., Specyfkacja projektowane oprogramowana systemów czasu rzeczywstego, Uczelnane Wydawnctwo Naukowo-Dydaktyczne, AGH, Kraków 2000. [11] a n e n b a u m A., Rozproszone systemy operacyjne, PWN, Warszawa 1997. [12] U ł a s e w c z J., Systemy czasu rzeczywstego, Wydawnctwo BC, Warszawa 2007.