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

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

TDDD82 Säkra mobila System (Systemprogramvara)

TDDD36 Säkra mobila System (Systemprogramvara)

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

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

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

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.

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

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

Support Manual HoistLocatel Electronic Locks

Tentamen i Matematik 2: M0030M.

Michael Q. Jones & Matt B. Pedersen University of Nevada Las Vegas

Mekanismer. (implementation)

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

Viktig information för transmittrar med option /A1 Gold-Plated Diaphragm

Webbregistrering pa kurs och termin

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

Webbreg öppen: 26/ /

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

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

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

Pre-Test 1: M0030M - Linear Algebra.

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

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

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

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

Rastercell. Digital Rastrering. AM & FM Raster. Rastercell. AM & FM Raster. Sasan Gooran (VT 2007) Rastrering. Rastercell. Konventionellt, AM

State Examinations Commission

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

Isolda Purchase - EDI

Tentamen på kursen Distribuerade system. Lycka till!

Tentamen i Matematik 2: M0030M.

Authentication Context QC Statement. Stefan Santesson, 3xA Security AB

Datasäkerhet och integritet

Preschool Kindergarten

UTLYSNING AV UTBYTESPLATSER VT12 inom universitetsövergripande avtal

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

Workplan Food. Spring term 2016 Year 7. Name:

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

81152 TRANSFER CASE SHIFT HANDLE

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

Alias 1.0 Rollbaserad inloggning

Unit course plan English class 8C

Chapter 1 : Who do you think you are?


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

EXTERNAL ASSESSMENT SAMPLE TASKS SWEDISH BREAKTHROUGH LSPSWEB/0Y09

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

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

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

PORTSECURITY IN SÖLVESBORG

Plats för projektsymbol. Nätverket för svensk Internet- Infrastruktur

Styrteknik: Binära tal, talsystem och koder D3:1

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

2.45GHz CF Card Reader User Manual. Version /09/15

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

Uttagning för D21E och H21E

Föreläsning 4 IS1300 Inbyggda system

Kvalitetsarbete I Landstinget i Kalmar län. 24 oktober 2007 Eva Arvidsson

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

Item 6 - Resolution for preferential rights issue.

Examensarbete Introduk)on - Slutsatser Anne Håkansson annehak@kth.se Studierektor Examensarbeten ICT-skolan, KTH

Tentamen i TDIU16 Process- och operativsystemprogrammering

Application Note SW

Senaste trenderna från testforskningen: Passar de industrin? Robert Feldt,

f(x) =, x 1 by utilizing the guidance given by asymptotes and stationary points. cos(x) sin 3 (x) e sin2 (x) dx,

Kursutvärderare: IT-kansliet/Christina Waller. General opinions: 1. What is your general feeling about the course? Antal svar: 17 Medelvärde: 2.

D-RAIL AB. All Rights Reserved.

Boiler with heatpump / Värmepumpsberedare

Writing with context. Att skriva med sammanhang

EXPERT SURVEY OF THE NEWS MEDIA

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

SVENSK STANDARD SS :2010

6 th Grade English October 6-10, 2014

Övning 5 ETS052 Datorkommuniktion Routing och Networking

FANNY AHLFORS AUTHORIZED ACCOUNTING CONSULTANT,

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

Solutions to exam in SF1811 Optimization, June 3, 2014

Vässa kraven och förbättra samarbetet med hjälp av Behaviour Driven Development Anna Fallqvist Eriksson

1. Find an equation for the line λ which is orthogonal to the plane

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

Surfaces for sports areas Determination of vertical deformation. Golvmaterial Sportbeläggningar Bestämning av vertikal deformation

Skyddande av frågebanken

Användarhandbok. MHL to HDMI Adapter IM750

Byggdokument Angivning av status. Construction documents Indication of status SWEDISH STANDARDS INSTITUTE

F ξ (x) = f(y, x)dydx = 1. We say that a random variable ξ has a distribution F (x), if. F (x) =

Health café. Self help groups. Learning café. Focus on support to people with chronic diseases and their families

Tentamen MMG610 Diskret Matematik, GU

Problem som kan uppkomma vid registrering av ansökan

Lehigh Valley Hospital Schuylkill Portal User Q&A

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

Exam Concurrent and Real-Time Programming

Recitation 4. 2-D arrays. Exceptions

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

Support for Artist Residencies

Beijer Electronics AB 2000, MA00336A,

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

Hur man skyddar sig på internet

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

What Is Hyper-Threading and How Does It Improve Performance

Transkript:

TENTAMEN TDDD36 Säkra mobila System (Systemprogramvara) Datum: 2013-10-22 Tid: 8-12 Lokal: TER1 Jourhavande-lärare: Simin Nadjm-Tehrani (telefon 013-282411, 0702 282412) Hjälpmedel: Poängantal: Miniräknare, Lexikon 34p Betyg: 3, 4 and 5: U: - 16 p 3: 17-22 p 4: 23-28 p 5: 29-34 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. Your answers can be presented in Swedish or English. Make sure your answers include motivations and are presented precisely. A correct answer without any motivation will not be given any credits. Incorrect answers embedded in a partially correct one reduce the points given for that answer. Points will not be given to answers that cannot be read due to bad handwriting, or answers that do not consist of whole sentences to explain a topic. Hints: Try to dispose of your time on each question in proportion of the assignment points. 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. Figures can be of help when describing but should be accompanied by a text description. Results are reported no later than November 7th, 2013. Good luck! Simin Nadjm-Tehrani Examiner TDDD36, Systems Software

Q1: a) Är målet med bankirsalgoritmen att motverka låsning i ett system genom att under körningstid detektera en pågående låsning? Om så är fallet beskriv hur görs detta. Annars, beskriv på vilket sätt bankirsalgoritmen bidrar till att motverka låsning. Du behöver inte förklara hur algoritmen fungerar i detalj. (2 points) b) Consider two processes P1 and P2 that execute concurrently (assume that each process executes only once): Process P1 While true do{ X = 3; Y = 0; If Y > 1 then X = X - 1; else X = X + 2 } Process P2 While true do{ X = 3; Y = 2; If Y < 1 then X = X + 1 else X = X - 2 } 1. Assume that every statement (including the if..then..else statement) other than the While statement is implemented atomically. How many different interleavings of the executions of the two processes are possible? Motivate your answer! 2. Provide 2 different values for the variable X after two iterations of the while loop in each process, and present the interleavings of process traces leading to each value of X. (5 points)

d) Följande pseudokod påstås lösa problemet med ömsesidig uteslutning för två processer som delar en gemensam resurs via den kritiska sektionen. Process P1 Process P2 while (true) { while (true) { flag2 = down flag1 = down turn = 2 turn = 1 while (flag2 == down while (flag1 == down and turn == 2) { and turn == 1){ do nothing do nothing } } critical-section flag1 = up non-critical-section } } critical-section flag2 = up non-critical-section Är programmet en korrekt implementering av ömsesidig uteslutning? I så fall presentera ett bevis! I annat fall ange ett motbevis. (4 points) e) Betrakta ett program med följande två processer och anta att kod som omsluts av {// }// anses vara kritisk sektion (CS) för processerna. Process A Process B while (true) do { while (true) do { non_critical_section_a; {// start of CS {// start of CS if ((X mod 2) == 0) { X = X+1; Print(X); Z = X^2; } // end of CS Print(Z); } }// end of CS } non_critical_section_b } 1) Vad är den minimala mängden semaforer som krävs för att implementera ömsesidig uteslutning? För denna del kan du bortse från process kraschar. Motivera ditt svar! 2) Vi fortsätter med semaforen som en mekanism i denna del. Anta nu att Process A kan krascha i sin kritiska sektion. Om man önskar att under den omständigheten Process B skulle kunna fortsätta att köra, vad blir svaret till del 1) nu? (4 points) f) Ta ställning om följande påstående är sant eller falskt. Motivera ditt svar! 1) Man behöver minst två köer för att implementera en variant av monitor begreppet. 2) Monitorns stöd för att åstadkomma villkorssynkronisering är detsamma som stödet som semaforen erbjuder. (2 points)

Q2: a) Vad menas med begreppet bandbredd? Relatera detta begrepp till begreppet genomströmning i ett distribuerat system. (1 poäng) b) Consider an instant messaging system running on a mobile device that connects to a server where availability (online, offline, ) state for other users in the system is stored and can be retrieved. Decide which of the following properties is a functional property and which is an extra-functional property (also sometimes called a non-functional property), and motivate your answer! 1) An update about another user s state on the server should result in an update on the own device. 2) The maximum latency for an update of another user s state on the own device should be 5 seconds. 3) The application should make batch updates for consecutive messages (those that are produced by one user in a row with no reply from corresponding receiver), so that number of message transmissions is reduced and device battery can be saved. 4) The system should be scalable for up to 30 users, given a network bandwidth of 10Mb/s. (4 points) Q3: Att definiera och säkerställa prestanda i distribuerade system kräver att den önskade prestandan preciseras i form av interaktivitet (en. responsiveness), genomströmning, och lastbalansering. 1. Förklara vad menas med dessa termer. 2. För varje prestandakriterium ange ett exempel på möjliga åtgärder för ett system för att förbättra dess prestanda i det avseendet. (6 poäng) Q4: a) The following headlines appeared in the news in the past few months: Failing electronic circuit caused a total stop at Arlanda airport for several hours Google suffered a brief and rare outage on Friday when all of its services became inaccessible for up to five minutes.

In both cases the commentators have speculated about a single point of failure which refers to a fault source that is alone capable of leading to a (total) service outage. Explain a fault tolerance strategy that helps to avoid a system outage due to one single fault. (3 points) Q5: Förklara felmodellerna crash, omission, och Byzantine för processer som kör på en nod (CPU), och beskriv vilka paralleller finns för dessa felmoder i distribuerade system. (3 poäng)

b) Glossary: English to Swedish atomic atomisk (oavbrytbar) request begäran availability tillgänglighet response time responstid avoid undvika safety säkerhet bandwidth bandbredd scheduler schemaläggare broker medlare security säkerhet clock drift klockdrift serialisable - serialiserbar concurrency samtidighet shaping - formning consistency konsistens shared memory gemensamt minne deadlock låsning (baklås) starvation svält delay fördröjning sufficient condition- tillräckligt villkor deliberate avsiktlig synchronisation synkronisering dependability pålitlighet system call systemanrop diversity mångfald thread - tråd error felyttring throughput genomströmning event händelse trace spår failure haveri transparency transparens fault felkälla trust tillit fault tolerance feltolerans validation validering forecast förutse verification - verifiering inheritance arv vulnerability - sårbarhet integrity dataintegritet interleavings sammanflätningar interoperability interoperabilitet intrusion intrång latency - latens maintainability reparerbarhet malicious - illvillig middleware - mellanvara mutual exclusion ömsesidig uteslutning necessary condition nödvändigt villkor non-functional property ickefunktionell egenskap omission utelämnande performance prestanda preemptible avbrytbar prevent förebygga quality of service tjänstekvalitet race condition kapplöpningstillstånd release - släppning reliability tillförlitlighet rendundancy redundans replica kopia replication replikering

Swedish English arv - inheritance atomisk (oavbrytbar) atomic avbrytbar - preemptible avsiktlig - deliberate bandbredd - bandwidth begäran - request dataintegritet - integrity felkälla - fault feltolerans - fault tolerance felyttring - error fördröjning - delay förebygga - prevent formning - shaping förutse - forecast gemensamt minne - shared memory genomströmning - throughput händelse - event haveri - failure ickefunktionell egenskap - non-functional property illvillig - malicious interoperabilitet - interoperability intrång intrusion kapplöpningstillstånd race condition klockdrift - clock drift konsistens - consistency kopia - replica låsning (baklås) - deadlock latens - latency mångfald - diversity medlare - broker mellanvara - middleware nödvändigt villkor - necessary condition ömsesidig uteslutning - mutual exclusion pålitlighet - dependability prestanda - performance redundans - rendundancy reparerbarhet - maintainability replikering - replication responstid - response time säkerhet - safety säkerhet - security sammanflätningar - interleavings samtidighet - concurrency sårbarhet - vulnerability schemaläggare - scheduler serialiserbar - serialisable släppning release spår - trace svält - starvation synkronisering - synchronisation systemanrop - system call tillförlitlighet - reliability tillgänglighet - availability tillit - trust tillräckligt villkor - sufficient condition tjänstekvalitet - quality of service tråd - thread transparens - transparency undvika - avoid utelämnande - omission validering - validation verifiering - verification