Tentamen på kursen Distribuerade system. Lycka till!

Relevanta dokument
Tentamen, Distribuerade System/Programvaruarkitektur

Mekanismer. (implementation)

Försättsblad till skriftlig tentamen vid Linköpings Universitet

Tentamen i Algoritmer & Datastrukturer i Java

Försättsblad till skriftlig tentamen vid Linköpings Universitet

Tentamen ID1004 Objektorienterad programmering October 29, 2013

Försättsblad till skriftlig tentamen vid Linköpings Universitet

Synkronisering. Föreläsning 8

Tentamen den 18 mars svar Datorteknik, EIT070

Jag läser kursen på. Halvfart Helfart

Skriv i mån av plats dina lösningar direkt i tentamen. Skriv ditt kodnummer längst upp på varje blad.

Tentamen i. Programmering i språket C

TENTAMEN. Kurskod/Kurs: 5DV013, Datakommunikation och datornät. Ansvariga lärare: Jerry Eriksson Anders Broberg

KOM IHÅG ATT NOTERA DITT TENTAMENSNUMMER NEDAN OCH TA MED DIG TALONGEN INNAN DU LÄMNAR IN TENTAN!!

Skriftlig tentamen i kurserna TDDD12 och TDDB48 Databasteknik kl

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

Tentamen i EDAF oktober Skrivtid: Skriv bara på ena sidan av pappret tentorna kommer att scannas in, och endast framsidorna rättas.

IE1204/IE1205 Digital Design

Grundkurs i programmering, 6 hp (725G61) Dugga 1 tillfälle 3

Tentamen MVE301 Sannolikhet, statistik och risk

Programmering II (ID1019) :00-11:00

Dugga Datastrukturer (DAT036)

Tentamen i Sannolikhetslära och statistik Kurskod S0008M

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

Instruktioner - Datortentamen TDDD73 Funktionell och imperativ programmering i Python

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

Distribuerade system och realtidssystem Rapport - Designförslag

TENTAMEN: Design och konstruktion av grafiska gränssnitt DAT215/TIG091

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

Tentamen Datastrukturer (DAT036)

Tentamen i IE1204/5 Digital Design måndagen den 15/

Grundläggande logik och modellteori

Omtentamen i Datakommunikation för E2

Tentamen i: Affärssystem och tjänsteorienterad arkitektur

Provmoment: Omtentamen 1 (dvs salstentamen 2) för kursen under LP4, TS1A, 21TS1U (VT14P4) Tentamen ges för: För fastighetsmäklare (FM12)

An English version of the questions is found at the back of each page.

Tentamen ges för: FEA, kvällskurs, Marknadsföring grundkurs 7,5hp. Underkänt 0-29 poäng Godkänt poäng Väl godkänt poäng

Tentamen Datastrukturer för D2 DAT 035

Tentamen, InteraktionsDesign, 7,5 ECTS

Kurskatalog 2010 INNEHÅLLSFÖRTECKNING

Försättsblad till skriftlig tentamen vid Linköpings Universitet

Distribuerade affärssystem

Tentamen i IE1204/5 Digital Design onsdagen den 5/

Föreläsning 15: Parallella subrutiner. Parallellitet. Varför parallella underprogram?

Tentamen i TDIU16 Process- och operativsystemprogrammering

CAN ett kommunikationsprotokoll för realtidssystem MOP 12/13 1

TENTAMEN. TDDD12 Databasteknik TDDD46 Databasteknik. 16 augusti 2010, kl 14-18

Tentamen den 14 januari 2015 Datorarkitekturer med operativsystem, EDT621, 7,5 poäng

SKOLFS. beslutade den XXX 2017.

Programkonstruktion. Tentamen,

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

Tentamen MVE301 Sannolikhet, statistik och risk

Tentamen i Objektorienterad modellering och design Helsingborg

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

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

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

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

Grundläggande programmering med C# 7,5 högskolepoäng. Provmoment: Ladokkod: Tentamen ges för:

Viktigt! Glöm inte att skriva tentamenskod på alla blad du lämnar in.

Totalt antal poäng på tentamen: 50 För att få respektive betyg krävs: U<20, 3>=20, 4>=30, 5>=40

Inga hjälpmedel är tillåtna

Varför är logik viktig för datavetare?

Föreläsning 13 Innehåll

Tentamen ID1004 Objektorienterad programmering May 29, 2012

TENTAMEN FÖR KURS DAV C03, DATAKOMMUNIKATION II 5p Sid 1 av 6 Torsdag kl

Logik för datavetare DVK:Log Tisdagen 28 oktober Institutionen för dataoch systemvetenskap David Sundgren

Matematisk statistik TMS064/TMS063 Tentamen

TDDI60 Tekniska databaser

Föreläsning 1: Intro till kursen och programmering

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

Grundläggande informationssäkerhet 7,5 högskolepoäng

Trådar. Aktiva objekt

Datavetenskapligt program, 180 högskolepoäng

JavaScript del 3 If, Operatorer och Confirm

TDDC30/725G63. Objektorienterad programmering i Java, datastrukturer och algoritmer

Föreläsning 1: Intro till kursen och programmering

TDDC74 Programmering: Abstraktion och modellering. Provkod TEN1, Tid: kl 14-18, , Kåra

Viktigt! Glöm inte att skriva Tentamenskod på alla blad du lämnar in.

Tentamen i: Affärssystem och tjänsteorienterad arkitektur

PARALLELL OCH SEKVENTIELL DATABEHANDLING. Innehåll

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

Provmoment: Omtentamen 2 (dvs salstentamen 3) för kursen under LP4, TS1A, 21TS1U (VT14P4) Tentamen ges för: För fastighetsmäklare (FM12)

Tenta i Grundläggande programmering DD klockan

Tentamen ISGB01, ISGB24. Databasdesign 7,5 Poäng

Del av projektuppgiften. Systemarkitektprogrammet

Matematisk problemlösning

Algoritmer, datastrukturer och komplexitet

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

Tentamen Datastrukturer (DAT037)

Tentamen, InteraktionsDesign, 7,5 ECTS

Filosofisk logik Kapitel 15 (forts.) Robin Stenwall Lunds universitet

729G04 Programmering och diskret matematik

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

Programmering II (ID1019) :00-12:00

BFL102/TEN1: Fysik 2 för basår (8 hp) Tentamen Fysik mars :00 12:00. Tentamen består av 6 uppgifter som vardera kan ge upp till 4 poäng.

TDDC74 Programmering, abstraktion och modellering. Tentamen

STOCKHOLMS UNIVERSITET HT 2008 Statistiska institutionen Johan Andersson

Tentamen, EDA501 Programmering M L TM W K V

Introduktion till algoritmer - Lektion 4 Matematikgymnasiet, Läsåret Lektion 4

Transkript:

Tentamen på kursen Distribuerade system Tid: 24/10-06, kl. 9-15 Lärare: Jonny Pettersson Besök: Ca 11.00 Totalt: 60 poäng Betyg 3: 30 poäng Betyg 4: 39 poäng Betyg 5: 48 poäng Inga hjälpmedel tillåtna. Börja varje uppgift på ett nytt blad. Skriv ditt namn och uppgiftens nummer längst upp till höger på varje blad. Skriv endast på den ena av bladets sidor. Svaren ska lämnas in i nummerordning. Kom ihåg att besvara frågorna tydligt och väl strukturerat. Lycka till!

UPPGIFT 1 (2 + 1 + 2 + 1 poäng) Vid design av distribuerade system kan man använda sig av olika typer av modeller, två sådana typer av modeller är arkitekturmodeller och fundamentala modeller. a) Vad är syftet med en arkitekturmodell? b) Ge ett exempel på en arkitekturmodell samt ge en kort beskrivning av din modell. c) Vad är syftet med en fundamental modell? d) Ge ett exempel på en fundamental modell samt ge en kort beskrivning av din modell. UPPGIFT 2 (1 + 1 + 4 + 4 poäng) När man analyserar eller designar distribuerade system som använder sig av ett middleware finns det ett antal frågor man bör ställa sig. Bland annat bör man fundera på hur processer kan utbyta data i en heterogen miljö (med avseende på bland annat nätverk, hårdvara och mjukvara) och hur felhantering kan ske i en distribuerad miljö. a) Vad är ett middleware? b) Ange kortfattat två skäl till varför det kan vara bra att använda ett middleware. c) Diskutera kortfattat kring varför man bör fundera på hur processer kan utbyta data i en heterogen miljö, samt hur man kan hantera problem som man måste lösa vid datautbyte i en heterogen miljö (ge två exempel). d) Diskutera kortfattat kring varför man bör fundera på hur felhantering kan ske i en distribuerad miljö, samt hur man kan hantera fel som uppstår i en distribuerad miljö (ge två exempel). UPPGIFT 3 (5 x 2 poäng) I distribuerade system är det svårt att säkerställa att alla ingående delar har en gemensam uppfattning om tid. Två orsaker till det är att mjukvaruklockor drar sig och att det är svårt att synkronisera klockor över nätverk. a) Vad beror det på att mjukvaruklockor drar sig? b) Beskriv Berkley-algoritmen för synkronisering av klockor över nätverk samt ange om den används för extern eller intern synkronisering. I många distribuerade system är inte den exakta tiden för en händelse intressant utan det är ordningen mellan händelser som har betydelse. Då kan man istället använda sig av happened-before (HB) relationer samt logiska klockor eller vektorklockor. c) Vad menas med happened-before (HB) relationer? d) Vad är logiska klockor och hur fungerar de (visa med ett exempel)? e) Vad är vektorklockor och hur fungerar de (visa med ett exempel)?

UPPGIFT 4 (3 + 1 + 2 poäng) Nedan visas Ricart och Agrawala s algoritm för tillträde till en kritisk sektion där endast en process i taget får förekomma. Antag att systemet, som algoritmen används i, är asynkront, att processer inte kraschar och att tillförlitlig meddelandeöverföring används. a) Vilka tre krav kan man ställa på en godtycklig algoritm för tillträde till en kritisk sektion där endast en process i taget får förekomma? Ange och beskriv varje krav. b) För att Ricart och Agrawala s algoritm ska fungera krävs att alla deltagare är överens om i vilken ordning access till den kritiska sektionen ska ske. I algoritmen används logiska klockor och dessa enbart räcker inte för att uppfylla detta krav. Hur löser man detta? c) I många system är det vanligt att varje process använder en kritisk sektion många gånger innan någon annan process vill använda den. Förklara varför Ricart och Agrawala s algoritm är ineffektiv i detta fall och ge ett förslag på hur man kan förändra algoritmen för att förbättra prestandan. On initialization state := RELEASED; To enter the section state := WANTED; Multicast request to all processes; request processing deferred here T := request s timestamp; Wait until (number of replies received = (N 1)); state := HELD; On receipt of a request <T i, p i > at p j (i j) if (state = HELD or (state = WANTED and (T, p j ) < (T i, p i ))) then queue request from p i without replying; else reply immediately to p i ; end if To exit the critical section state := RELEASED; reply to any queued requests; UPPGIFT 5 (2 poäng) Förklara skillnaden mellan sequential consistency och linearizability, samt varför den första är mer praktiskt lämplig att implementera.

UPPGIFT 6 (3 + 1 + 1 + 1 + 1 + 1 poäng) a) Beskriv hur optimistic concurrency control fungerar. b) I vilka situationer kan denna metod vara att föredra framför lås. Transaktionerna T och U i en server definieras på följande sätt: T: (T 1 ) x = read(i); (T 2 ) write(j, 40); U: (U 1 ) write(i, 50); (U 2 ) write(j, 60); Initialt är i = 10 och j = 20. Antag att transaktionerna T och U är aktiva samtidigt och att optimistic concurrency control används. Ange och motivera resultatet för varje av nedanstående fall. c) T s begäran av commit kommer först och bakåtvalidering används. d) U s begäran av commit kommer först och bakåtvalidering används. e) T s begäran av commit kommer först och framåtvalidering används. f) U s begäran av commit kommer först och framåtvalidering används. UPPGIFT 7 (4 + 4 +2 poäng) I säkerhetsarbetet pratar man bland annat om följande begrepp: Hotanalys Säkerhetspolicy Implementation Drift och underhåll a) Redogör kortfattat för varje begrepp. b) Redogör för hur de påverkar varandra. c) Motivera varför man kan säga att säkerhet handlar om riskhantering. UPPGIFT 8 (4 poäng) SSL består av fyra olika protokoll. Redogör för vilka de är och beskriv kortfattat vad de uträttar.

UPPGIFT 9 (6 x 0.5 + 1 poäng) Givet följande säkerhetsnivåer ordnade på följande sätt Kvalificerat hemligt (KH) Hemligt (H) Icke-klassificerat (P) där KH är högsta nivån och P är lägsta nivån, samt följande kategorier Användarklasser och kategorier Marinen {M} Flygvapnet {FV} Armén {A} Subjekt (KH) (H) (P) M FV A Andersson 1234 X X Jonsson 2345 X X X X Lundberg 3456 X X Johansson 4567 X X X Objekt (KH) (H) (P) M FV A Försvarsstrategier X X X X Marinens organisationsstruktur X X Arméns organisationsstruktur X X Telesystem X X Stomnät X X X Avgör om följande sex påståenden är sanna eller falska för ovanstående subjekt och objekt: a) Andersson 1234 dom Försvarsstrategier b) Jonsson 2345 dom Försvarsstrategier c) Andersson 1234 dom Marinens organisationsstruktur d) Lundberg 3456 dom Telesystem e) Johansson 4567 dom Stomnät f) Jonsson 2345 dom Arméns organisationsstruktur Följdfråga: g) I denna uppgift har du tillgång till information om säkerhetsnivåer, kategorier och klassificeringar. Hur ser då klassificeringen ut för denna information? Motivera ditt svar.