Presentation laddar. Vänta.

Presentation laddar. Vänta.

Next previous OCTOPUS en kort repetition Farthållare Objektorienterad Realtidsprogrammering 2000 Objektorienterad Realtidsprogrammering 2000 Föreläsning.

Liknande presentationer


En presentation över ämnet: "Next previous OCTOPUS en kort repetition Farthållare Objektorienterad Realtidsprogrammering 2000 Objektorienterad Realtidsprogrammering 2000 Föreläsning."— Presentationens avskrift:

1 next previous OCTOPUS en kort repetition Farthållare Objektorienterad Realtidsprogrammering 2000 Objektorienterad Realtidsprogrammering 2000 Föreläsning 11 Tisdag 6/6 2000

2 previous next 2 OCTOPUS: Farthållare OCTOPUS Kravspec –Vi konstruerar bla användningsfall –Användningsfallsdiagram Systemarkitektur –Dela upp systemet på applikationsdel hårdvara hårdvaruwrapper(s)

3 previous next 3 OCTOPUS: Farthållare... Delsystem analysfas –skapa objektmodeller statisk struktur –funktionell modell funktionalitet –dynamisk modell operationer mellan "applikationsgränser" ta hänsyn till realtidsspecifika aspekter analysera händelser, tillstånd, mm

4 previous next 4 OCTOPUS: Farthållare... Delsystem designfas Delsystem implementationsfas

5 previous next 5 OCTOPUS: Farthållare Farthållare Som exempel skapar "vi" en farthållare –huvudsyfte: hålla konstant fart –farthållaren konstrueras för en automatväxlad låda kan operera då högsta växeln ilagd föraren skall när som helst kunna ”återta kommandot” opereras från speciell meny Awad figur 1-14

6 previous next 6 OCTOPUS: Farthållare Användningsfall Vi identifierar användningsfall –På systemnivå U1-U3 –Autonoma U4-U5 –Vissa nästlade eller relaterade till föregående, tex U6, U10- U12 –Exceptions U7-U9 användningsfallsdiagram Awad figur 10-1 Tolv användningsfall Awad figur s

7 previous next 7 OCTOPUS: Farthållare Systemkontextmodell (mjukvaru-)systemet och dess relationer till omgivningen/hårdvaran Awad figur 10-2

8 previous next 8 OCTOPUS: Farthållare Hårdvara Vissa ”hårdvaruregler” Två avbrott INT0 och INT1, den första ”triggas av” rotationspuls och den senare av 10ms timer RealtidsOS med kvasiparallella processer, preemption Oset kan –schedulera process –schedulera process med fördröjning –stänga av respektive slå på avbrottsmöjlighet –stänga av respektive slå på kontextbyte Awad figur 10-3 och 10-4

9 previous next 9 OCTOPUS: Farthållare Analys av applikationens delsystem Vi "behöver" bara ett delsystem i applikationen Objektmodell, delsystem Awad figur 10-6 Delsystemdiagram Awad figur 10-6 Beskrivning av omgivning Awad tabell 10-1 och 10-2

10 previous next 10 OCTOPUS: Farthållare Funktionell modell Operationerna O1-O7 Awad figur s

11 previous next 11 OCTOPUS: Farthållare Dynamisk modell I den dynamiska modellen analyserar vi –händelser –tillstånd –därefter gör vi en fördjupad analys av både händelser och tillstånd tillsammans –vi tittar också på interaktionen mellan objekten

12 previous next 12 OCTOPUS: Farthållare Analys av händelser Identifiera händelser Ordna händelser i hierarkier Beskriv händelser Awad figur s

13 previous next 13 OCTOPUS: Farthållare Analys av tillstånd Vilka tillstånd har dom ingående objekten? Vilka är objektens associationer? Hur sker tillståndsövergångar? Vilka "aktiviteter" sker? Awad figur

14 previous next 14 OCTOPUS: Farthållare Utvidgad analys av händelser och tillstånd Vi undersöker/avgör vilka händelser som är kritiska, viktiga respektive kan ignoreras samt är neutrala i ett visst tillstånd exemplet Awad tabell 10-6 metod Awad s 86-87

15 previous next 15 OCTOPUS: Farthållare... Vi ser om vi kan slå ihop händelser också exemplet Awad tabell 10-7 till 10-9 metod Awad s 87-88

16 previous next 16 OCTOPUS: Farthållare Delsystem-omgivning: interaktionsdiagram Några typiska scenarier när objekt i omgivningen interagerar Awad figur till 10-13

17 previous next 17 OCTOPUS: Farthållare Analys och design av hårdvaruwrapper Vi tittar på applikationsobjekten och relaterar dem till –logisk vy –fysisk vy –avbildning av vy Awad s

18 previous next 18 OCTOPUS: Farthållare Objektmodell och andra beståndsdelar av hårdvaruwrappern Dom två avbrotten INT0 och INt1 generarar alla primitiva händelser antingen via avbrottsservicerutinerna ISPRINT0 och ISPRINT1 eller indirekt genom att ”ticka” OS:et Objektmodell figur Awad tabell till 10-11

19 previous next 19 OCTOPUS: Farthållare Funktionell modell för hårdvaruwrapper Awad s

20 previous next 20 OCTOPUS: Farthållare Dynamisk modell för hårdvaruwrapper Precis som för delsystemen analyserar vi –händelser –tillstånd –och interaktion för hårvaruwrappern

21 previous next 21 OCTOPUS: Farthållare... analys av händelser Vi undersöker vilka dom primitiva händelserna är Vi grupper också händelserna Awad tabell Awad figur 10-16

22 previous next 22 OCTOPUS: Farthållare... analys av tillstånd för vissa klasser gör vi tillståndsdiagram Awad figur till 10-18

23 previous next 23 OCTOPUS: Farthållare... analys av scenarier För att bena ut hur instanser av klasser i wrappern reagerar på frågor från tillämpningen och interagerar med hårdvara och operativsystem så konstruerar vi sekvensdiagram Awad figur 1-19 till 10-20

24 previous next 24 OCTOPUS: Farthållare Design av hårdvaruwrappern Hårdvaruwrappern drivs av två avbrott –INT0 –INT1 Dom genererar alla primitiva händelser antingen direkt eller via avbrottsservicerutinerna –ISPRINT0 –ISPRINT1

25 previous next 25 OCTOPUS: Farthållare Design av händelsetrådar Händelsetrådsar, Awad figur 6.13 Synkron kontra asynkron –Välja ut vad som ska vara vad i händelsetråden, Awad figur 6.14 Kvalificerade händelsetrådar, Awad figur 6.16 Objektgrupper –Maximal mängd, Awad figur 6.17 –Överlagra händelsetrådar, Awad figur 6.18 –“fair set”, Awad figur 6.19 –Balansering, Awad figur 6.20

26 previous next 26 OCTOPUS: Farthållare... design av hårdvaruwrappern Följande figur visar händelsetråden för dom primitiva hårdvaruhändelserna rotation pulse, take measurement och poll input Dom kommer från antingen ISPRINT0 eller ISPRINT1 och är alla synkrona Awad figur 10-21

27 previous next 27 OCTOPUS: Farthållare... design av hårdvaruwrappern Nästa figur visar i mer detalj hur interaktion för CES1/CSA1 (Command Event Set 1/Control Signal Assignment 1) svarar mot 15.2 i figur (dvs poll input till Command Interface) Awad figur Resten av dom primitiva händelserna är mjuka, throttle update, pulse tick och blink tick. Dessa genereras indirekt av operativsystemet Awad figur 10-23

28 previous next 28 OCTOPUS: Farthållare... Nästa figur, Awad figur 10-24, slår ihop händelsetrådarna från dom tidigare figurerna i kvalificerad form Trådarna grupperas vilket resulterar i två objektgrupper WG1 och WG2 Även om vissa av dom genererade applikationshändelserna naturligt definierar rötterna till flera objektgrupper så spar vi definitionerna av dessa tills dess att vi designar applikationens delsystem

29 previous next 29 OCTOPUS: Farthållare... En skiss av processernas funktioner och avbrottshanterande rutiner följer i Awad s

30 previous next 30 OCTOPUS: Farthållare Design av applikationens delsystem Från designen av hårdvaruwrappern får vi insikt i vilka händelser som kan skickas till applikationens delsystem Från kunskaper från scenarier och objektmodeller konstruerar vi händelsetrådar för varje händelse Awad figur visar alla händelser hörande till händelsegruppen Command Awad figur visar händelsetrådarna för övriga händelser

31 previous next 31 OCTOPUS: Farthållare... Vi delar upp det hela på två grupper Awad figur Awad figur –Icke kommandoorienterade objektgrupper –Kommandoorienterade objektgrupper

32 previous next 32 OCTOPUS: Farthållare Översikt av processen Hårdvaruwrappern skickar endast vidare händelsen rotation pulse, vilket medför att G3 styrs av avbrottsrutinen för INT0 Pss styrs G1 av INT1 G2, G4 och G5 använder OS-processer Awad s

33 previous next 33 OCTOPUS: Farthållare Delade objekt och synkronisering Den valda grupperingen och att dom exekverar via oberoende exekveringsvägar resulterar i en del delade objekt För dessa analyserar vi om ”hanteringen” är kritisk, om avbrottsmöjlighet skall stängas av eller om kontextbyte skall stängas av Awad tabell 10-13

34 previous next 34 OCTOPUS: Farthållare Utkast av koden Slutligen tittar vi på utkast av koden för delsystemet Awad s


Ladda ner ppt "Next previous OCTOPUS en kort repetition Farthållare Objektorienterad Realtidsprogrammering 2000 Objektorienterad Realtidsprogrammering 2000 Föreläsning."

Liknande presentationer


Google-annonser