Tentamen vid Institutionen för Datavetenskap, Linköpings universitet

Relevanta dokument
Tentamen vid Institutionen för Datavetenskap, Linköpings universitet

TENTAMEN I REALTIDSPROCESSER OCH REGLERING TTIT62

1. Compute the following matrix: (2 p) 2. Compute the determinant of the following matrix: (2 p)

Tentamen i Matematik 2: M0030M.

LUNDS TEKNISKA HÖGSKOLA Institutionen för Elektro- och Informationsteknik

1. Varje bevissteg ska motiveras formellt (informella bevis ger 0 poang)

8 < x 1 + x 2 x 3 = 1, x 1 +2x 2 + x 4 = 0, x 1 +2x 3 + x 4 = 2. x 1 2x 12 1A är inverterbar, och bestäm i så fall dess invers.

Hjälpmedel: Inga hjälpmedel förutom penna, suddgummi och glatt humör.

Tentamen vid Institutionen för Datavetenskap, Linköpings universitet. TDDD36 Säkra mobila System (Systemprogramvara)

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

Högskolan i Skövde (SK, JS) Svensk version Tentamen i matematik

TDDD82 Säkra mobila System (Systemprogramvara)

Realtidsprogrammering Ordinarie tentamen

Tentamen i TDIU16 Process- och operativsystemprogrammering

LUNDS TEKNISKA HÖGSKOLA Inst. for Elektro- och Informationsteknik. SIGNALBEHANDLING I MULTIMEDIA, ETI265 Inlämningsuppgift 1 (av 2), Task 1 (out of 2)

Pre-Test 1: M0030M - Linear Algebra.

Omtentamen i Realtidsprogrammering för Au3, D3, E3

EXTERNAL ASSESSMENT SAMPLE TASKS SWEDISH BREAKTHROUGH LSPSWEB/0Y09

Tentamen i Matematik 2: M0030M.

State Examinations Commission

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

Isolda Purchase - EDI

1. Förpackningsmaskin / Packaging machine

. Bestäm Rez och Imz. i. 1. a) Låt z = 1+i ( b) Bestäm inversen av matrisen A = (3p) x + 3y + 4z = 5, 3x + 2y + 7z = 3, 2x y + z = 4.

Workplan Food. Spring term 2016 Year 7. Name:

Tentamen vid Institutionen för Datavetenskap, Linköpings universitet. TDDD82/TDDD36 Säkra mobila System (Systemprogramvara)

denna del en poäng. 1. (Dugga 1.1) och v = (a) Beräkna u (2u 2u v) om u = . (1p) och som är parallell

Webbreg öppen: 26/ /

Aktivitetsschemaläggning för flerkärninga processorer

1 Find the area of the triangle with vertices A = (0,0,1), B = (1,1,0) and C = (2,2,2). (6p)

Webbregistrering pa kurs och termin

Tentamen i Realtidsprogrammering

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.

Mekanismer. (implementation)

DVG C01 TENTAMEN I PROGRAMSPRÅK PROGRAMMING LANGUAGES EXAMINATION :15-13: 15

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

Materialplanering och styrning på grundnivå. 7,5 högskolepoäng

Operativsystem ID2206 Tentamen TEN1 4.5 hp :00-18:00

(D1.1) 1. (3p) Bestäm ekvationer i ett xyz-koordinatsystem för planet som innehåller punkterna

Chapter 1 : Who do you think you are?

Tentamen i Realtidsprogrammering

Libers språklåda i engelska Grab n go lessons

Outline. Datorsystemtekni. Kravspecifikation. Kravspecifikation (forts.)

SVENSK STANDARD SS-EN ISO 19108:2005/AC:2015

Tentamen i Realtidsprogrammering

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

Make a speech. How to make the perfect speech. söndag 6 oktober 13

INSTITUTIONEN FÖR DATA- OCH INFORMATIONSTEKNIK

PORTSECURITY IN SÖLVESBORG

x 2 2(x + 2), f(x) = by utilizing the guidance given by asymptotes and stationary points. γ : 8xy x 2 y 3 = 12 x + 3

Försättsblad till skriftlig tentamen vid Linköpings Universitet Cover page for written exam at Linköping University

Unit course plan English class 8C

Skyddande av frågebanken

Kurskod: TAIU06 MATEMATISK STATISTIK Provkod: TENA 17 August 2015, 8:00-12:00. English Version

Synkronisering. Föreläsning 8

Realtidssystem. - Dödläge - EDAF85 - Realtidssystem (Helsingborg) Elin A. Topp. Föreläsning 5

Tentamen, Distribuerade System/Programvaruarkitektur

Operativsystem ID2200 Tentamen TEN1 3.8 hp :00-18:00

UTLYSNING AV UTBYTESPLATSER VT12 inom universitetsövergripande avtal

COMPUTABILITY BERÄKNINGSBARHET. Källa: Goldschlager, Lister: Computer Science A Modern Introduction 2. upplaga 1988, Prentice Hall

1. Find the volume of the solid generated by rotating the circular disc. x 2 + (y 1) 2 1

Schenker Privpak AB Telefon VAT Nr. SE Schenker ABs ansvarsbestämmelser, identiska med Box 905 Faxnr Säte: Borås

FÖRBERED UNDERLAG FÖR BEDÖMNING SÅ HÄR


2(x + 1) x f(x) = 3. Find the area of the surface generated by rotating the curve. y = x 3, 0 x 1,

Preschool Kindergarten

Tentamen MMG610 Diskret Matematik, GU

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

Vad kännetecknar en god klass. Vad kännetecknar en god klass. F12 Nested & Inner Classes

Support for Artist Residencies

and u = och x + y z 2w = 3 (a) Finn alla lösningar till ekvationssystemet

Lösenordsportalen Hosted by UNIT4 For instructions in English, see further down in this document

Reglerteknik AK. Tentamen 24 oktober 2016 kl 8-13

Measuring child participation in immunization registries: two national surveys, 2001

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

PARALLELL OCH SEKVENTIELL DATABEHANDLING. Innehåll

Operativsystem ID1200/06 (ID2200/06 6hp) Tentamen :00-18:00

Om oss DET PERFEKTA KOMPLEMENTET THE PERFECT COMPLETION 04 EN BINZ ÄR PRECIS SÅ BRA SOM DU FÖRVÄNTAR DIG A BINZ IS JUST AS GOOD AS YOU THINK 05

Quick Start Guide Snabbguide

Manhour analys EASA STI #17214

TDDD36 Säkra mobila System (Systemprogramvara)

Information technology Open Document Format for Office Applications (OpenDocument) v1.0 (ISO/IEC 26300:2006, IDT) SWEDISH STANDARDS INSTITUTE

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

S 1 11, S 2 9 and S 1 + 2S 2 32 E S 1 11, S 2 9 and 33 S 1 + 2S 2 41 D S 1 11, S 2 9 and 42 S 1 + 2S 2 51 C 52 S 1 + 2S 2 60 B 61 S 1 + 2S 2 A

Kurskod: TAMS28 MATEMATISK STATISTIK Provkod: TEN1 05 June 2017, 14:00-18:00. English Version

Retrieve a set of frequently asked questions about digital loans and their answers

Styrteknik : Programmering med IEC Styrteknik

Tentamen i Realtidsprogrammering för Au3, D3, E3

Pipelining i Intel 80486

Read Texterna består av enkla dialoger mellan två personer A och B. Pedagogen bör presentera texten så att uttalet finns med under bearbetningen.

Anders Persson Philosophy of Science (FOR001F) Response rate = 0 % Survey Results. Relative Frequencies of answers Std. Dev.

Studieteknik för universitetet 2. Books in English and annat på svenska

Schenker Privpak AB Telefon VAT Nr. SE Schenker ABs ansvarsbestämmelser, identiska med Box 905 Faxnr Säte: Borås

Tenta i Digitalteknik

Writing with context. Att skriva med sammanhang

Support Manual HoistLocatel Electronic Locks

Kurskod: TAIU06 MATEMATISK STATISTIK Provkod: TENA 31 May 2016, 8:00-12:00. English Version

STORSEMINARIET 3. Amplitud. frekvens. frekvens uppgift 9.4 (cylindriskt rör)

Hur fattar samhället beslut när forskarna är oeniga?

Transkript:

TENTAMEN TDDC47 Realtids- och processprogrammering Datum: 2008-12-12 Tid: 8-12 Lokal: KÅRA Jourhavande-lärare: Jonas Elmqvist (Tel: 013-28 26 75, 070-647 63 72) Hjälpmedel: Poängantal: Engelsk lexikon/english dictionary Miniräknare/Minicalculator 40p Betyg: F, 3, 4 and 5: U: - 19 p 3: 20-26 p 4: 27-33 p 5: 34-40 p INSTRUCTIONS: Write your anonymous ID number on each sheet of paper that you hand in. Further, pages should only contain one answer per page (answers to sub-questions can be on the same page). You are asked to only answer on the front page of the paper. Sort all the sheets that you hand in with respect to the number of the question. Make sure your answers are presented clearly and precisely. Points will not be given to answers that cannot be read due to bad handwriting. Your answers can be presented in Swedish or English. Your answers shall clearly show the motivation or method for the solution. A correct answer without any explanation will not be given any credits (figures can be of help when describing but should be accompanied by a text description). In those cases where you are in doubt about the question, write down your interpretation and your assumptions and answer the question based on the interpretation. Note that a correct answer embedded in errors may give reduction in points, so make sure your answers are to the point. Results are reported no later than January 5th, 2009. Good luck!!! Simin Nadjm-Tehrani Examiner TDDC47

Q1: Processer, synkronisering och inter-process kommunikation a) Betrakta följande kod för en process Pi som använder semaforen mutex. Anta att det finns 10 processer med liknande kod struktur i samma program, och att alla använder samma semafor. 1. Fungerar ömsesidiga uteslutningen om semaforen initialiseras till 0? 2. Finns det andra konsekvenser från denna initialisering? I så fall vilka? 3. Hur fungerar ömsesidig uteslutning om samma program initialiserar semaforen till 1? 4. Vad ska initialvärdet för mutex vara för att undvika att fler än 5 processer är i kritiska sektionen samtidigt? Motivera ditt svar! var mutex: semaphore; (* initialise *) & process Pi loop wait(mutex) critical_section signal(mutex) non-critical_section end end Pi b) Hur skiljer sig processprogrammering från parallellprogrammering? (1poäng) c) Betrakta program som är avsedda att köras på en CPU och som modelleras m.h.a. processbegreppet. Nämn 2 andra vanliga abstraktioner som kan användas för att modellera samma programvarusystem, och beskriv skillnader mellan syftet med dessa abstraktioner jämfört med processabstraktionen. d) Anta ett system består av tre parallella processer som delar tre resurser. Det finns 2 instanser av R 1 och R 3 var, samt 6 instanser av R 2. Följande tabell beskriver processernas maximala behov av olika resurs typer. Resurs( ) P A P B P C Process ( ) R 1 2 1 1 R 2 1 6 2 R 3 2 1 1 Betrakta systemet när resursallokeringsdiagramet nedan (figur 1) beskriver resursdelningstillståndet och besvara följande frågor med tanke på förekomster av baklås ( deadlock ): 1. Är systemet i ett säkert tillstånd? 2. Om process B begär (0,3, 1) instanser av resurstyper R 1 resp. R 2 och R 3, ska dessa resurser allokeras utan att systemet riskerar baklås i framtiden?

3. Hade resurstypen R 2 funnits i 2 exemplar (istället för 6), skulle samma resursallokeringsdiagram kunna direkt indikera låsning i nuvarande tillståndet? R 1 P C P A P B R 2 R 3 Figur 1. Resursallokeringsdiagram (5 poäng) Q2: Schemaläggning och hantering av delade resurser a) Ge ett exempel var för följande klasser av system (subsystem): (i) hårda realtidssystem som inte betraktas som inbyggda system, (ii) mjuka realtidssystem, och (iii) inbyggda system som inte är realtidssystem. Exemplen ska finnas inom industriproduktion. b) Ange om följande utsagor är sanna eller falska, och motivera ditt svar: 1. Det räcker med en process som svälter för att ett system ska vara i låsning. 2. När processer i en processmängd inte delar resurser så kan systemet inte låsa sig. 3. Det finns inga schemaläggningsalgoritmer som förebygger både låsning och svält. c) Den 26 februari 2008 kunde man läsa i Ny Teknik om automatiska truckar på Karolinska sjukhuset i Huddinge. Med hjälp av laserstrålar som reflekteras i väggarna kan varje vagn känna av var den befinner sig. Truckarna används för att hämta och köra ut mat, tvätt, kläder och annat i olika avdelningar. Spindeln i hela kommunikationsnätet är en dator som styr trådlöst. Den enklaste varianten på styrsystem på varje truck innehåller 5 beräkningsprocesser. Två processer hanterar förflyttning längs X- respektive Y-axeln och kräver max 2,5 ms var som beräkningstid. Dessa körs periodiskt var 40 ms. En process hanterar navigationen och har max beräkningstid motsvarande 20 ms. En fjärde process hanterar kommunikation med centraldatorn via trådlösa nätet. Denna process tolkar inkomna meddelanden och agerar på olika kommandon genom att sätta nya parametrar i de andra styrprocesserna. Den maximala beräkningstiden för kommunikationsprocessen uppskattas vara 8 ms och det minimala interankomstintervallet för meddelanden lär vara 40 ms. Den femte processen övervakar

kollisioner med oväntade objekt. Den körs som en periodisk process med samplingsintervallet 10 ms och tar max 1 ms att reagera för att stoppa trucken. 1. Anta att navigationsprocessen körs en gång var 50:e ms. Konstruera ett cykliskt schema för processmängden och ange minor - resp. major cycle. Kommentera fördelar och nackdelar i ditt framtagna cykliska schema. 2. Betrakta systemet med ovanstående processer, och anta nu att processmängden ska schemaläggas med EDF. Anta att processerna släpps periodiskt även i detta sammanhang. Vad händer om navigationsprocessen fastnar i ett fel läge och inte avslutar sin beräkning förrän efter 30 ms? Förklara hur andra processer påverkas av navigationsprocessens överskridning av sin maximala exekveringstid. d) Bevisa eller motbevisa följande påstående: När man använder takprotokollet immediate ceiling protocol tillsammans med en schemaläggningsalgoritm som använder fasta prioriteter så kan en process blockeras av en annan process högst en gång i sin livcyckel. Q3: Schemaläggning av reglerprocesser Betrakta en distribuerad reglerloop (enligt figuren nedan). Regulatorn F(s) är implementerad på en nod medan aktuatorn är implementerad på en separat nod. Fler processer än reglerprocessen körs på reglernoden och processerna är schemalagda enligt EDF på processorn. Kommunikation mellan noderna görs över ett CAN-nätverk (time-triggered input och output används inte). Figur 2. Distribuerad reglerloop a) Introducera och beskriv de icke försumbara fördröjningarna τ i i reglerloopen i figur 2. Förklara hur man estimerar dem och uppge vilka antaganden du gör. b) Definiera termen reglerfördröjning ( control delay ). (1 poäng) c) Ta fram en överföringsfunktion G c (s) som relaterar insignalen Y r (s) och utsignalen Y(s) på det slutna systemet enligt Y ( s) = G ( s) Y ( s) där eventuella tidsfördröjningar är inkluderade. c r

Q4: Real-time communication a) Ett distribuerat system som körs över en TTP buss brukar innehålla en tidsmässig brandvägg ( temporal firewall ). Vad menas med detta uttryck? b) När man använder CAN bussen i ett distribuerat system så kan beräkningar i en nod vara funktionellt beroende av en annan nods beräkning. Tydliggör vad som händer när ett fel som uppträder i en nod leder till att noden inte blir klar med sin beräkning i tid. Anta att resultatet (i form av ett meddelande) skickas så småningom, men med en avsevärd jitter. Hur påverkas responstiderna för andra meddelanden som är avsedda att skickas på CAN bussen? Betrakta både meddelanden som har högre prioritet och de som har lägre prioritet än det försenade meddelandet. Om ditt resonemang bygger på ytterliggare antaganden ange dessa!