Slide 1 Lindalsbakken 4 9560 Hadsund Sandtidssystemer del 2 Forlæsningsplan MM1:Introduktion, definition.

Slides:



Advertisements
Lignende præsentationer
Lovlig sagsbehandling
Advertisements

Miniprojekter, efterår 2013 Strategisk ledelse. 1. Fra agil entreprenør til trusted stabil samarbejdspartner Lille Dansk virksomhed som vokser meget.
Tre klare mål 1.Folkeskolen skal udfordre alle elever, så de bliver så dygtige, de kan –Mindst 80 pct. af eleverne skal være gode til at læse og regne.
Scientific Investigation
1 Problemkompleksitet 2 Problemers kompleksitet En ineffektiv algoritme: køretiden vokser eksponentielt med input- størrelsen Et problem, der ikke kan.
17. Lagerstyring Lagertyper Produktionsvirksomhed Handelsvirksomheder
Modul 1 - Processer.
Et væksthus for børn og voksne
Kredsløbstræning
Introduktion ved Anne Reuss
Prisfastsættelse i praksis Flervareproduktion med og uden omkostningsmæssige sammenhænge Erhvervsøkonomi HD.
Et projekt til undersøgelse af udviklingsmetodologi.
Formularer (Access, del 3)
EE Gruppe 319 P3 - Efteråret 2005 Præsentation Intro Forstærkeren CD Line Pick-up Kanalvælger Volumenkontrol Tonekontrol Effektforstærker Demonstration.
VERDENS BEDSTE NYHEDER HVAD SIGER DE LAVT HÆNGENDE FRUGTER? Interview med en forældre fra min datters Vesterbro-vuggestue.
Et projekt til undersøgelse af udviklingsmetodologi.
Visioner for udvikling af brugen af it i laboratoriespecialerne Nu i et nyt perspektiv…! 1 Dansk Selskab for Klinisk Biokemi ∙ Middelfart ∙
Problemliste Listen laves vilkårligt – herefter udvælges det problem der har 1. prioritet
1 Intro nedarvning (eng.: inheritance) Nedarvningshierarkier Intro polymorfisme (eng.: polymorphism) Abstract / virtual / override / sealed Intro interfaces.
Koordinatsystemet Y-aksen 2. aksen X-aksen 1. aksen.
1 Effektiv forrentning Kjeld Tyllesen PEØ, CBS Erhvervsøkonomi / Managerial Economics Kjeld Tyllesen, PEØ, CBS.
GP 4, 19/ Grundlæggende programmering Efterår 2001 Forelæsning 4 onsdag 19/ kl. 9:15 – 12:00.
Slide 1 Lindalsbakken Hadsund Sandtidssystemer del 4 Forlæsningsplan Del 1:Introduktion, definition.
Slide 1 Lindalsbakken Hadsund Sandtidssystemer Del 5 Forlæsningsplan Del 1:Introduktion, definition.
Forlæsningsplan Del 1: Introduktion, definition af sandtidssystemer og gennemgang af analyse og design metoder. Kort intro til AVR platform. Del 2: Scheduleringsprincipper:
Slide 1 Lindalsbakken Hadsund Sandtidssystemer Del 3 Forlæsningsplan Del 1:Introduktion, definition.
Introduktion til Microsoft CRM Christian Cletus Bjørn Eilertsen.
Økonometri 1: Specifikation og dataproblemer1 Økonometri 1 Specifikation, og dataproblemer 4. november 2005.
Ildebefindende i diagnostisk afdeling
Hanne-Pernille Stax, ph.d
Introduktion til Access (Access, del 1)
Opslagsfelter (Access, del 6). RHS – Informationsteknologi 2 Udgangspunkt Vi er ofte i den situation, at valg af en type for et felt ikke begrænser vores.
Relativ vigtighed for elektroniske ressourcer,24,22,20,18,16,14,12,10 Indeks FARM nem at bruge Info om anvendelse af elektroniske.
1 Dagens gang Repeter systemvalg Gennemgang af klasser og strukturer (kap. 3+4 OOA+D) Tavle opgave Gruppe opgave til næste gang.
Økonometri 1: Dummy variable
1 Bevisteknikker. 2 Bevisteknikker (relevant både ved design og verifikation) Teorem: Der findes uendeligt mange primtal Bevis: Antag at der findes et.
Økonometri 1 Gentagne tværsnit og panel data I. 2 Gentagne tværsnit og paneldata: Oversigt Observationer over individuelle enheder og tid: Wooldridge.
Emergency call button Stabilt og simpelt 1. Agenda Områder af speciel interesse Gennemgang Hvad har jeg lært? Spørgsmål 2.
Skanderborg-Odder Center for Uddannelse. Incitament til at søge Hold Fast midler:  Lektiecafé sidst på dagen virker ikke så optimalt: elever udebliver/er.
Sandsynligheder Udfald og hændelser Sandsynligheder Additionsreglen
Swapping og paging Flytning af processer (swapping) eller dele af processer (paging) mellem arbejdslager og fjernlager. Baggrund: På den ene side skal.
MMP Model og Metode til Programudvikling – MMP 1 Kursusindhold: Modellering af postkontor Objekt Orienteret Programudvikling - OO* Unified Modelling.
Scenarieanalyse og realoptioner
Udeskolekursus Tårnby Kommune, august 2011
1 Sortering I elementære metoder. 2 Plan Terminologi Elementære metoder til sortering -sortering ved udvælgelse -sortering ved indsættelse -Shellsort.
Statistik for geografer
Opfølgning på obligatorisk opgave 1 ONK1. Ingeniørhøjskolen i Århus Slide 2 af 14 Overordnet Generelt rigtigt fine opgaver –Mange fyldt med gode overvejelser.
MSBuild & Team Build i C#/C++ solutions VSTS ERFA d. 25 November.
”Lineær Programmering - Minimering”
1 Dagens gang Sidste uges opgaver OA+D: Adfærd Nye opgaver.
Fundamentale datastrukturer
Skanderborg-Odder Center for Uddannelse.  Baggrund for at søge Hold Fast midler  Hold Fast – introduktion  Hold Fast – introduktion: elevkommentarer.
1 Design, analyse og verifikation. 2 Design Bevisteknikker Design ved hjælp at matematisk induktion Analyse O-notation Logaritmer Binær søgning Verifikation.
Opslagsfelter (Access, del 6). RHS – Informationsteknologi – Udgangspunkt Vi er ofte i den situation, at valg af en type for et felt ikke begrænser.
Introduktion til Access (Access, del 1). RHS – Informationsteknologi – Fra design til udvikling Vi ved nu, hvordan vi finder et design for en database,
Proces og projekt metrikker. Proces metrikker er metrikker målt henover alle projekter og over lange tidsperioder Projekt metrikker er metrikker der bruges.
Økonometri 1 Gentagne Tværsnit og Paneldata II 20. november 2006.
Økonometri 1: Specifikation og dataproblemer1 Økonometri 1 Specifikation, og dataproblemer 9. november 2004.
Carsten Stig Poulsen1 HA 4. semester Markedsanalyse 3. gang Torsdag d. 23. april 2009.
Ekspertvurdering Ekspertvurdering / Heuristisk evaluering
Systematisk problemløsning i kriminalitetsbekæmpende funktioner
1 Læringsstil, samt Projektplanlægning og projektstyring Mål: At i får kendskab til jeres egen læringsstil. At I får et grundlæggende kendskab til projektplanlægning.
Opgave 10 Erhvervsøkonomi / Managerial Economics
Økonometri 1: Inferens i den multiple regressionsmodel1 Økonometri 1 Inferens i den multiple regressionsmodel 10. marts 2003.
Økonometri 1: F151 Økonometri 1 Specifikation og dataproblemer 10. november 2006.
GP 4, 27/ Grundlæggende programmering Forår 2002 Forelæsning 4 onsdag 27/ kl. 9:15 – 12:00.
Økonometri 1: Den simple regressionsmodel Økonometri 1 Den simple regressionsmodel 7. september 2004.
Dagens gang Komponenter Projektetablering Opgave i komponenter til næste gang.
Præsentationens transcript:

Slide 1 Lindalsbakken Hadsund Sandtidssystemer del 2 Forlæsningsplan MM1:Introduktion, definition af sandtidssystemer og gennemgang af analyse og design metoder. Kort intro til AVR platform. MM2:Scheduleringsprincipper: Statiske/dynamiske f.eks. round robin/dynamic priority. Scheduleringskriterier: Generelt og for enkelte scheduleringsprincipper. MM3:Schedulerbarhedskriterier ved fixed priority schedulering. MM4:Schedulerbarhedskriterier ved dynamic priority schedulering. MM5:Aperiodiske tasks og lidt køteori. RETTELSE TIL DAGENS OPGAVER: I opgave 2 skal T(1) = 4!

Slide 2 Lindalsbakken Hadsund Sandtidssystemer del 2 Scheduling: Indledning Fra task struktureringen haves tidskarakteristikker for følgende tasksæt {  (1),..,  (N)} –ready times r(i,j) –computation times c(i,j) –starting times S(i,j) –Completion times C(i,j) –deadlines d(i,j) –jobs J(i,j) –index (i,j) referer til det j te job i den i te task, f.eks.  (j) Naturen af de enkelt tasks kendes: periodisk (T(j)) eller aperiodisk (Tmin(j)) Problemet der skal løses er fordeling af CPU tid mellem de enkelte tasks Scheduler –Bestemmer ifølge en schedule hvad der skal ske hvornår –Schedule  skema/kalender Scheduleringsteori –Hvordan designes en schedule for et givent tasksæt? –Hvordan garanteres at den fundne schedule er feasible? Tænk! –Vil man altid have alle tidsdetaljer? –Vil man altid forsøge at skaffe alle tidsdetaljer?

Slide 3 Lindalsbakken Hadsund Sandtidssystemer del 2 Scheduling: Principper Preemptible eller non-preemptible –Hardware afhængighed –Hardware uafhængighed Scheduler kategorisering: –Fast schedule: Schedule fastsættes før run-time, simple og effektive, men begrænset fleksibilitet –Round robin: CPU-tid i faste slots som tildeles periodisk, simpel og fleksibel, men mindre effektiv –Faste prioriteter: CPU-tid fordeles til den højeste prioritet mellem aktive tasks, simpel og fleksibel, medium effektiv –Dynamiske prioriteter: CPU-tid fordeles i forhold til run-time kriterier, kompleks, fleksibel og effektiv Process tilstande Tænk! –Er der andre relevante process tilstande? –Hvad er udfordringerne? Ready Running Blocked SchedulePreempt Block Unblock

Slide 4 Lindalsbakken Hadsund Sandtidssystemer del 2 Scheduling: Antagelser Simplificering af problemerne –Antag alle tasks er periodiske r(i, j+1) = r(i, j) + T(i) –Antag alle relative dead-lines konstante d(i, j) = r(i, j) + d(i) –Antag alle computation times konstante c(i, j) = c(i) Problemet der ønskes løst er at alle dead- lines skal overholdes –C(i, j) ≤ d(i, j) = r(i, j) + d(i) Tænk! –Er der andre problemer der skal løses i sandtidssystemer? –Kan det virkelig være så svært?

Slide 5 Lindalsbakken Hadsund Sandtidssystemer del 2 Tidsfunktionen: Introduktion Tid R(t) Hændelser/Events R(t): Angiver den resterne CPU tid, som er reserveret til tasks og endnu ikke afviklet. Busy Idle R(t) > 0 kaldes busy perioder. R(t) = 0 kaldes idle perioder. Tænk! - Vil man i praksis lave disse beregninger?

Slide 6 Lindalsbakken Hadsund Sandtidssystemer del 2 Tidsfunktionen: Udnyttelse for én task 1 Tid R(t) Hændelser/Events For én task skal c være mindre end T for at systemet er stabilt. U = c/T < 1 Tænk! - Hvad kunne sådan et enkelt task system være? - Er det relevant at beskæftige sig med på det teoretiske og praktiske plan?

Slide 7 Lindalsbakken Hadsund Sandtidssystemer del 2 Tidsfunktionen: Udnyttelse for én task 2 Tid R(t) Hændelser/Events Et enkelt task system er ustabilt, hvis c er større end T. U = c/T > 1 Mængden af reserveret tid vokser mod uendeligt.

Slide 8 Lindalsbakken Hadsund Sandtidssystemer del 2 Tidsfunktionen: Udnyttelse for flere tasks Udnyttelse totalt Reservationsfunktionen (dårligt navn) angiver den totale mængde reserveret tid til et givent tidspunkt –o(i) = første ready tid for task i Begrænsning af reservationsfunktionen, da 0 ≤ o(i) < T(i) Begrænsning af tidsfunktionen ved anvendelse af reservationsfunktionen

Slide 9 Lindalsbakken Hadsund Sandtidssystemer del 2 Tidsfunktionen: Systemafgrænsning Er udnyttelsen under 100% (U<1) Gælder uanset afviklingsrækkefølge Første trin i en validering af om alle dead- lines i et system nåes Er udnyttelsen over 100% (U>1) Tænk! –Hvad mangler i beregningerne?

Slide 10 Lindalsbakken Hadsund Sandtidssystemer del 2 Round Robin Scheduling Tid Aktiv task Task 1 kommer for sent Hændelser/Events d(1) = T(1) = 4 og c(1) = 2 d(2) = T(2) = 12 og c(2) = 4 d(3) = T(3) = 64 og c(3) = 6 U = 2/4 + 2/12 + 6/64 = 0,76

Slide 11 Lindalsbakken Hadsund Sandtidssystemer del 2 Fixed Priority Scheduling Tid Aktiv task Task 2 kommer for sent Hændelser/Events d(1) = T(1) = 4, c(1) = 2 og prio(1) = 1 d(2) = T(2) = 12, c(2) = 4 og prio(2) = 3 d(3) = T(3) = 64, c(3) = 6 og prio(3) = 2 U = 2/4 + 2/12 + 6/64 = 0,76

Slide 12 Lindalsbakken Hadsund Sandtidssystemer del 2 Rate Monotonic Scheduling Tid Aktiv task Hændelser/Events Tænk! - Hvor realistisk er et eksempel som dette?

Slide 13 Lindalsbakken Hadsund Sandtidssystemer del 2 RMS og Fast Scheduling Tid Aktiv task Tid Aktiv task Task 2 kommer for sent Events d(1) = T(1) = 2 og c(1) = 1 d(2) = T(2) = 3 og c(2) = 5/4 U = 1/2 + (5/4)/3 = 11/12 Rate Monotonic Scheduling Fast Scheduling Tænk! - Fordele/Ulemper ved fast schedulering?

Slide 14 Lindalsbakken Hadsund Sandtidssystemer del 2 Fast Schedulering Der behandles i dette kursus kun fast schedulering, hvor –Alle tidsenheder er givet som et multiplum af Tu (lille tidsenhed) –Alle tider en absolut kendte Dermed kan Scheduleren ses som en tilstandstabel af tidsenheder med følgende indhold –Aktiv task –Kontekst skift –Idle Kontrol af skedulerbarhed (Denglish) –Endeligt antal jobs kan undersøges ved inspektion –Uendeligt antal jobs kan undersøges ved antagelse af overordnede perioder (Der må ikke trækkes arbejde med fra én periode til den næste) LCM – Least Common Multiplier CM – Multiplum af LCM Jobs –T(1) = 2, c(1) = 1 og d(1) = 2 –T(2) = 3, c(2) = 5/4 og d(2) = 3 Mulig periode –Tu = ¼ –LCM = 24 Resultatet kaldes ofte cyclic scheduling Tænk! –Hvordan implementeres systemer som dette? –Er det noget man ofte anvender? Aktiv task Tid LCM

Slide 15 Lindalsbakken Hadsund Sandtidssystemer del 2 Fast Scheduling et større eksempel Jobs –T(1) = 50 ms, c(1) = 25 ms og d(1) = 25 ms –T(2) = 1 s, c(2) = 100 ms og d(2) = 0,5 s –T(3) = 10 s, c(3) = 2 s og d(3) = 4 s Mulig periode –Tu =25 ms –LCM = 160 Udnyttelse –U = 1/2 + 1/10 + 2/10 = 0,80 Tid Aktiv task 1 s2 s3 s4 s5 s Task 3 kommer for sentTask 3 har udført 400 ms Tænk! -Kunne dette være fundet mere simpelt? -Hvad kunne task 1 være?

Slide 16 Lindalsbakken Hadsund Sandtidssystemer del 2 Round Robin: Hvor svært kan det være Der behandles i dette kursus Round- Robin, hvor –Tidsenheder, ready og dead-line, er kun delvis kendte i forvejen –Kun perioder og relative dead-lines er kendte i forvejen Dermed udvides antallet af mulige scenarier rigtig meget –Worst case scenarier –Best case scenarier –Average case scenarier Kontrol af skedulerbarhed (Denglish) –Hvis worst case er skedulerbar er alle andre scenarier det også Tænk! –Worst case kan vi være sikker på at finde det scenarie? –Hvad anvendes i den virkelige verden? –Hvad med kontekst skift? Theorem (Et af de vigtigste!) –Antag at job J fra task  (i) er ready til t = 0 i en round-robin scheduler, så vil job J ikke afslutte senere end hvis CPUen til t = 0 tildeles  (i+1) og alle andre task samtidig er ready Non-preemptible round-robin –Dead-linen for hver task skal mindst være lige så stor som summen af alle task beregningstiderne Tænk! –Kan det theorem nu også være rigtigt? –Er theoremet anvendeligt i praksis?

Slide 17 Lindalsbakken Hadsund Sandtidssystemer del 2 Round Robin: Anvendelse af teorien Tid Aktiv task Hændelser/Events d(1) = T(1) = 3, c(1) = 1 d(2) = T(2) = 4, c(2) = 1 d(3) = T(3) = 10, c(3) = 4 Task 1Task 2Task 3 Orden: 1, 2, 3 og Tc = 0 Ok Tænk! - Kunne dette være fundet mere simpelt? - Hvad hvis det havde været non- preemptible?