Realtidssystem Z EDA300 Tentamen 15/ , kl i V-huset

Relevanta dokument
Realtidssystem. - Schemaläggning - EDAF85 - Realtidssystem (Helsingborg) Elin A. Topp. Föreläsning 6

Tentamen Grundläggande programmering

Realtidssystem. - Schemaläggning - EDA698 - Realtidssystem (Helsingborg) Elin A. Topp. Föreläsning 6

Tentamen i Algoritmer & Datastrukturer i Java

TENTAMEN I REALTIDSPROCESSER OCH REGLERING TTIT62

TENTAMEN TDDB53. Programmering i Ada för MI (provkod TEN2) den 7 april 2010 kl Institutionen för datavetenskap, IDA Olle Willén mars 2010

Omtentamen i Realtidsprogrammering för Au3, D3, E3

INSTITUTIONEN FÖR DATA- OCH INFORMATIONSTEKNIK

Realtidsprogrammering Ordinarie tentamen

Tentamen EDA698 Realtidssystem (Helsingborg)

Realtidssystem HT03. Vad är realtidssystem? Inbyggda system. Att programmera, Tasks (Uppgifter) Realtidssystem kräver analys

TENTAMEN I PROGRAMMERING. På tentamen ges graderade betyg:. 3:a 24 poäng, 4:a 36 poäng och 5:a 48 poäng

UPPGIFT 1 UPPGIFT 2 UPPGIFT 3

Tentamen SSY 065, lördag 14/4, 08:30-12:30, M. Examinator: Martin Fabian, (772) 3716 Tider för lärarens närvaro: 09:30, 11:30

PROGRAMMERINGSTEKNIK TIN212

Tentamen omfattar 40 poäng fördelade på 7 uppgifter. 20 poäng krävs för betyget 3, 30 poäng för betyget 4 och 36 poäng för betyget 5.

OBJEKTORIENTERAD PROGRAMVARUUTVECKLING. Övningstentamen 1

Tentamen ID1004 Objektorienterad programmering October 29, 2013

Tentamen i Realtidsprogrammering för Au3, D3, E3

Anmälningskod: Lägg uppgifterna i ordning. Skriv uppgiftsnummer (gäller B-delen) och din kod överst i högra hörnet på alla papper

Tentamen i kurserna Beräkningsmodeller (TDA181/INN110) och Grundläggande Datalogi (TDA180)

Tentamen Lösningar EDA698 Realtidssystem

Tentamen för TDA540 Objektorienterad Programmering. Institutionen för Datavetenskap CTH HT-17, TDA540. Dag: , Tid:

Tentamen i Robotteknik MPR160 och MPR210, 20 oktober 1997

Lösningar till tentamen i EIT070 Datorteknik

Realtidsprogrammering

Tentamen Datastrukturer för D2 DAT 035

Tentamen i EDA320 Digitalteknik för D2

Föreläsning 5 Innehåll

Tentamen i Digitala system - EITA15 15hp varav denna tentamen 4,5hp

Tentamen i TMA 982 Linjära System och Transformer VV-salar, 27 aug 2013, kl

TENTAMEN OOP

OMTENTAMEN I PROGRAMSPRÅK -- DVG C kl. 08:15-13: 15

Systemkonstruktion Z2

FOTA - 3 COTS och objektorientering i realtidstillämpningar Annika Ohlsson Ericsson Microwave Systems

Tentamen i Programmering

Systemkonstruktion Z3 (Kurs nr: SSY-046)

Grundläggande programmering med C# 7,5 högskolepoäng. Provmoment: Ladokkod: Tentamen ges för: TEN1 NGC011 ADAEK17, ASYST17 samt öppen för alla

Objektorienterad programmering i Java I. Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6

Tentamen i Digitala system - EITA15 15hp varav denna tentamen 4,5hp

if (n==null) { return null; } else { return new Node(n.data, copy(n.next));

Tentamen i Programmering grundkurs och Programmering C

Bakgrund. Bakgrund. Bakgrund. Håkan Jonsson Institutionen för systemteknik Luleå tekniska universitet Luleå, Sverige

Bakgrund och motivation. Definition av algoritmer Beskrivningssätt Algoritmanalys. Algoritmer. Lars Larsson VT Lars Larsson Algoritmer 1

OBJEKTORIENTERAD PROGRAMVARUUTVECKLING

Tentamen ssy080 Transformer, Signaler och System, D3

Tentamen, EDAA10 Programmering i Java

Lösning till tentamensskrivning i Diskret Matematik för CINTE, CL2 och Media 1, SF1610 och 5B1118, onsdagen den 17 augusti 2011, kl

Tentamen i Grundläggande programmering STS, åk 1 lördag

Chalmers tekniska högskola Datum: kl Telefonvakt: Christoffer Standar LMA033a Matematik BI

STOCKHOLMS UNIVERSITET HT 2008 Statistiska institutionen Johan Andersson

STOCKHOLMS UNIVERSITET HT 2008 Statistiska institutionen Johan Andersson

Tentamen i Robotteknik MPR160, 16 december 2000

KTH, NADA, Vahid Mosavat. 1. Flervalsfrågor (5p)

Tentamen i. för D1 m fl, även distanskursen. lördag 26 februari 2011

Chalmers Tekniska Högskola Tillämpad Fysik Igor Zoric

KOMPLETTERANDE HEMTENTAMEN TDDB53

TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 5. Laboration 4 Lådplanering Exempel på grafik, ett avancerat program Frågor

KOMPLETTERANDE HEMTENTAMEN 2 TDDB53

Tentamen i. Programmering i språket C

Tentamen i. TDDC67 Funktionell programmering och Lisp

Datorsystemteknik för E/D

Det finns en referensbok (Java) hos vakten som du får gå fram och läsa men inte ta tillbaka till bänken.

Tentamen ssy080 Transformer, Signaler och System, D3

TMV166/186 Linjär Algebra M/TD 2009/2010

Datastrukturer och algoritmer

Dugga Datastrukturer (DAT036)

Omtentamen i Datakommunikation för E2

Hitta k största bland n element. Föreläsning 13 Innehåll. Histogramproblemet

Tentamen i. för D1 m fl, även distanskursen. fredag 13 januari 2012

TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 5. Laboration 4 Lådplanering Exempel på layout, ett GUI-baserat program Frågor

Tentamen i Grundläggande programmering STS, åk 1 fredag

Tentamen Mekanik MI, TMMI39, Ten 1

Tentamen i TDP004 Objektorienterad Programmering Lösningsförslag

IEK415 Industriell ekonomi E

STOCKHOLMS UNIVERSITET HT 2007 Statistiska institutionen Johan Andersson

D2 och E3. EDA321 Digitalteknik-syntes. Fredag den 13 januari 2012, fm i M-salarna

2. (a) Skissa grafen till funktionen f(x) = e x 2 x. Ange eventuella extremvärden, inflektionspunkter

Realtidssystem, device drivers. Föreläsning 10

Lösningar till tentamen i EIT070 Datorteknik

Tentamen i kurserna Beräkningsmodeller (TDA181/INN110) och Grundläggande Datalogi (TDA180)

DAI2 (TIDAL) + I2 (TKIEK)

Tentamen. DD2385 Programutvecklingsteknik vt 2013 Onsdagen den 22 maj 2013 kl Hjälpmedel: penna, suddgummi, linjal

Föreläsning 5 Innehåll. Val av algoritm och datastruktur. Analys av algoritmer. Tidsåtgång och problemets storlek

Tentamen i Grundläggande Programvaruutveckling, TDA548

Operativsystem ID1200/06 Tentamen :00-18:00

Tentamen den 17 mars 2016 Datorteknik, EIT070

STOCKHOLMS UNIVERSITET VT 2009 Statistiska institutionen Jörgen Säve-Söderbergh

Tommy Färnqvist, IDA, Linköpings universitet

TENTAMEN I DATAVETENSKAP

Provmoment: Ladok-kod: A133TG Tentamen ges för: TGIEA16h, TGIEL16h, TGIEO16h. Tentamens Kod: Tentamensdatum: Tid: 14-18

Tentamen för TDA540 Objektorienterad Programmering. Institutionen för Datavetenskap CTH HT-16, TDA540. Dag: , Tid:

Tentamen PC-teknik 5 p Lösningar och kommentarer

TENTAMEN I REALTIDSPROCESSER OCH REGLERING TTIT62

Typsystem. DA2001 (Föreläsning 23) Datalogi 1 Hösten / 19

Programmerbara kretsar och VHDL 2. Föreläsning 10 Digitalteknik, TSEA22 Oscar Gustafsson Institutionen för systemteknik

6. a) Visa att följande vektorer är egenvektorer till matrisen A = , och ange motsvarande

Institutionen för elektro- och informationsteknologi, LTH

Datorteknik. Föreläsning 5. Realtidssystem och realtidsprogrammering. Institutionen för elektro- och informationsteknologi, LTH.

STOCKHOLMS UNIVERSITET HT 2007 Statistiska institutionen Johan Andersson

Transkript:

Realtidssystem Z EDA300 Tentamen 15/12 2005, kl. 08.30 12.30 i V-huset Examinator: Docent Jan Jonsson Förfrågningar: Docent Jan Jonsson Telefon: 031 772 5220 Hjälpmedel: Utdrag ur Ada 95 Reference Manual R. Riehle, Ada Distilled Tvåsidig lathund, Ada vs. Java Typgodkänd kalkylator Omfattning: Tentamenstesen omfattar fem sidor (inklusive försättsblad) och innehåller sju uppgifter som sammanlagt kan ge maximalt 60 poäng. Betygsgränser: 24 35 poäng betyg 3 36 47 poäng betyg 4 48 60 poäng betyg 5 Lösningar: Anslås fredag 16/12 2005, kl. 09.00 på kurshemsidan. Resultat: Anslås torsdag 5/1 2006, kl. 09.00 på institutionens anslagstavla. Rättningsgranskning: Torsdag 5/1 2006, kl. 13.00 14.00 i rum 4128, Rännvägen 6 B (plan 4). Granskning vid annat tillfälle kan göras efter överenskommelse med examinator. VIKTIGT ATT TÄNKA PÅ 1. Motivera alla svar! Bristande motivering kan ge poängavdrag även om svaret är korrekt. 2. Redovisa alla beräkningar ordentligt! I så fall behöver en enkel felräkning som inte ger ett uppenbart felaktigt svar ge poängavdrag. 3. Om vissa förutsättningar för en uppgift saknas, eller om du anser att det är oklart vilka förutsättningar som gäller, så ange vilka förutsättningar du antar. 4. Skriv tydligt! Kan jag inte läsa vad det står, så är det fel... Lycka Till!

UPPGIFT 1 Ange om nedanstående påståenden är Sanna eller Falska. Korrekt svar ger 0.5 poäng, felaktigt svar ger -0.5 poäng och obesvarad fråga ger 0 poäng. Motivering av ett korrekt svar krävs ej, men om sådan finnes ger en övertygande motivation ytterligare 0.5 poäng medan en felaktig/klen motivation ger -0.5 poäng. Kvalitetsgaranti: resultatet på denna uppgift kan ej bli mindre än 0 poäng. (6 poäng) a) Med minnesskydd i realtidskärnan kan man förhindra att någon process kommer åt kod och data som tillhör en annan process. b) En aperiodisk process konsumerar i genomsnitt alltid mer processorkapacitet än en periodisk process. c) Med ett nödvändigt schemaläggningstest avses ett test sådant att om en given processuppsättning är schemaläggningsbar så ger testet alltid utslaget sant. d) Via annex Real-Time i Ada 95 kan programmet få en klocka med bättre noggrannhet än vad kalenderklockan kan erbjuda. e) Genom att använda prioritetstak tillsammans med skyddade objekt i Ada 95 blir det enklare att undvika deadlocksituationer i programvaran. f) Den GNU Ada95 korskompilator som används i kursens laborationer genererar kod för Intel 8086 mikroprocessor. UPPGIFT 2 En trevlig egenskap hos Ada 95 är möjligheten att skriva kod för avbrottshantering direkt i högnivåspråket. a) Redogör för det generella förfarande som används för att få en procedur (subrutin) skriven i Ada 95 att ta hand om ett avbrott från en I/O-krets. Ge i förekommande fall exempel på hur koden i Ada 95 ser ut för ett visst steg i förfarandet. (5 poäng) b) Hur kan man, med hjälp av det i kursens laborationer använda utvecklingssystemet (GNU Ada95), få veta vilka avbrott och tillhörande prioritetsnivåer som finns tillgängliga i laborationssystemets hårdvara? (1 poäng) UPPGIFT 3 I de flesta schemaläggningsteorier används värsta-fallets exekveringstid (eng. worst-case execution time, WCET) för att modellera beräkningskravet hos en realtidsprocess. En av tidigaste metoderna för WCET-analys presenterades av Shaw i slutet av 80-talet. a) Beskriv kortfattat Shaws metod för WCET-analys. (3 poäng) b) Förklara varför det är önskvärt att analysens WCET-värden är pessimistiska. (1 poäng) c) Ta fram WCET för funktionen Calculate (se nedan) genom att använda Shaws metod. Antag att varje tilldelning, retursats, och jämförelseoperation tar 1 µs att utföra. Ett anrop till en funktion kostar 1 µs plus WCET för funktionen i fråga. Varje additions- och subtraktionsoperation kostar 2 µs. Varje multiplikations- och divisionsoperation kostar 5 µs. Övriga språkkonstruktioner kan antas ta 0 µs att utföra. (8 poäng)

type Matrix is array (1..8,1..8) of Natural; function Calculate(M : in Matrix) return Natural is F : Natural := 0; C : Natural := 0; function Select(X, Y, Z : in Natural) return Natural is R : Natural; begin if Y < Z then R := Y; else if X < Z then R := Z; else R := X; return R; end Select; begin for i in 1.. 6 loop for j in i+1.. 7 loop F := F + Select(M(i,j-1),M(i,j),M(i,j+1)); C := C + 1: end loop; end loop; return F / C; end Calculate; UPPGIFT 4 Betrakta ett realtidssystem med periodiska processer som exekverar enligt frekvensprioriterad (eng. rate-monotonic = RM) schemaläggning. a) Beskriv Liu & Laylands tillräckliga schemaläggningstest för RM schemaläggning. (2 poäng) b) Ange under vilka förutsättningar som Liu & Laylands schemaläggningstest för RM gäller. (2 poäng) c) För att bevisa korrektheten hos schemaläggningstestet för RM använde sig Liu & Layland av ett teorem som visat sig vara generellt användbart vid analys av schemaläggningsbarhet av processer med statiska prioriteter. Beskriv innebörden av detta teorem. (3 poäng) Antag nu att det givna systemet består av tre processer. För varje process P i gäller att dess deadline D i är lika med perioden T i. Samtliga processer ankommer första gången vid tidpunkt 0. Processernas respektive utnyttjandegrader U i = C i /T i är U 1 =0.60, U 2 =0.15, U 3 =0.10. d) Om varken exekveringstiderna C i eller perioderna T i för processerna är kända, kan man då avgöra om processerna är schemaläggningsbara med RM? Motivera ditt svar. (3 poäng)

UPPGIFT 5 Betrakta ett realtidssystem med tre periodiska processer och ett run-time system där processerna exekveras enligt svarstidskritisk (eng. earliest-deadline-first ) schemaläggning, d v s dynamiska processprioriteter används. Nedanstående tabell visar C i (värsta-fallets exekveringstid), D i (svarstidskrav el. deadline ) och T i (periodtid) för de tre processerna. Samtliga processer ankommer vid tiden t =0. Alla värden är i millisekunder. C i D i T i P 1 3 4 4 P 2 1 4 10 P 3 3 16 20 a) Visa att Liu & Laylands utnyttjandegradstest för svarstidskritisk schemaläggning inte är tillämpligt i detta fall. (1 poäng) b) Visa huruvida processerna är schemaläggningsbara eller ej genom att tillämpa den teknik som kallas beräkningsbehovsanalys (eng. processor-demand analysis ). (5 poäng) UPPGIFT 6 I senaste numret av ELFAs tidning Antenn rapporteras om en intressant realtidstillämpning. Forskare vid universitetet i Tokyo har konstruerat en robothand som har förmågan att ta lyra, till och med i situationer där bollen kastas i 300 km/h enligt konstruktörerna. Antenn skriver vidare: Robothanden har tre metallfingrar och kan genom särskilda fotosensorer i handflatan läsa av kastbanan för en boll även i hög hastighet. Bilden av den annalkande bollen analyseras av särskilt utvecklade bildbehandlingskretsar; givare i de tre fingrarnas leder får handen att röra sig. Tack vare att varje led kan röra sig 180 grader på mindre än en tiondels sekund kan robothanden fånga bollen blixtsnabbt. Enligt forskarteamet ger deras resultat en föraning om hur robotar skulle kunna användas i situationer som kräver snabb reaktionsförmåga, som vida överstiger dagens industrirobotar. Du hittar mer information om tekniken bakom robothanden och även demonstrationsfilmer på denna länk: http://www.k2.t.u-tokyo.ac.jp/fusion/miraikancatching. Beakta nu en tillämpning där robothanden är riktad uppåt för att fånga en boll som släpps från en punkt rakt ovanför handen. Det rör sig alltså inte om någon horisontell kastparabel utan enbart om fritt fall.

a) Antag att robothandens bildbehandlingskretsar noggrant kan bestämma den momentana hastigheten på bollen när den befinner sig 6 meter ovanför handen. Beräkna den deadline (räknat från den tidpunkt då bollen passerar 6-metersläget), vid vilken robothandens fingrar måste fånga den fallande bollen om den släpps från en punkt på 11 meters höjd rakt ovanför handen. Alla avstånd mäts från den punkt där robothandens tre fingar möts för att hålla bollen (se ovanstående bild). (5 poäng) Värt att veta: Givet en acceleration a och en begynnelsehastighet v 0 har vid tidpunkt t tillryggalagts en sträcka s = at 2 /2+v 0 t. b) Identifiera, trots avsaknaden av detaljerad kännedom om den faktiska implementeringen av robothanden, vilka komponenter i robothanden och dess styrsystem som kan tänkas utgöra flaskhalsar i systemet. Det vill säga, vilka komponenter som bör ha störst inverkan på möjligheten att klara den deadline som erhållits i deluppgift a). (3 poäng) UPPGIFT 7 Betrakta ett realtidssystem med fyra periodiska processer och ett run-time system som tillämpar avbrytbar (eng. preemptive ) schemaläggning. Processerna exekveras enligt svarstidsprioriterad (eng. deadline-monotonic = DM) schemaläggning. Nedanstående tabell visar C i (värsta-fallets exekveringstid), D i (svarstidskrav el. deadline ) och T i (periodtid) för de fyra processerna. Samtliga processer ankommer vid tiden t = 0. Alla värden är i millisekunder. C i D i T i P 1 2 6 6 P 2 3 12 16 P 3 3 15 20 P 4 4 28 28 De fyra processerna är inte oberoende av varandra utan delar tre exklusiva resurser som skyddas av de binära semaforerna S a,s b, resp. S c. Processerna använder resurserna på följande sätt: Process P 1 låser resurserna som skyddas av S a och S c. Process P 2 använder resurserna som skyddas av S a och S b. Process P 3 använder bara resursen som skyddas av S b. Process P 4 använder bara resursen som skyddas av S c. Nedanstående tabell visar H i,j, den tid (i millisekunder) som process P i maximalt låser semaforen S j under sin exekvering. H i,a H i,b H i,c P 1 1 -? P 2 1 2 - P 3-3 - P 4 - -? Som framgår av ovanstående tabell är två värden ospecificerade: H 1,c och H 4,c.Tamed lämplig schemaläggningsanalys fram de maximala värden på dessa två parametrar för vilka systemet fortfarande är schemaläggningsbart. (12 poäng)