UNIVERSITETET I OSLO

Like dokumenter
UNIVERSITETET I OSLO

Det matematisk-naturvitenskapelige fakultet

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

Det matematisk-naturvitenskapelige fakultet

UNIVERSITETET I OSLO

Front page. OS - Memory management. INF Introduksjon til operativsystemer og datakommunikasjon Digital eksamen

Oppsummering: Linjesvitsjing kapasiteten er reservert, og svitsjing skjer etter et fast mønster. Linjesvitsj

UNIVERSITETET I OSLO

Tillatte hjelpemidler: ingen hjelpemidler er tillatt. Faglærer kommer til eksamenslokalet noe tid etter at eksamen har startet.

oppgavesett 4 INF1060 H15 Øystein Dale Hans Petter Taugbøl Kragset September 22, 2015 Institutt for informatikk, UiO

Kommunikasjonsnett. Et kommunikasjonsnett er utstyr (maskinvare og programvare) for utveksling av informasjon

Detaljerte funksjoner i datanett

Litt mer detaljer om: Detaljerte funksjoner i datanett. Fysisk Lag. Multipleksing

UNIVERSITETET I OSLO

Løsningsforslag Gruppeoppgaver, januar INF240 Våren 2003

Dagens temaer. Kort repetisjon. Mer om cache (1) Mer om cache (2) Read hit. Read miss. Write hit. Hurtig minne. Cache

Detaljerte Funksjoner i Datanett

Gjennomgang av kap Kommunikasjonsformer Typer av nettverk Adressering og routing Ytelse Protokoller

Definisjon av prosess

Oppgave 8.1 fra COD2e

TDT4258 Eksamen vår 2013

Tildeling av minne til prosesser

Eksamen DAT 103. Oppgave 2. Kandidatnr.: 145 1) B 2) B 3) A 4) A 5) D 6) C 7) B 8) A 9) A 10) D

INF2270. Input / Output (I/O)

Singletasking OS. Device minne Skjerm minne. Brukerprogram. Brukerdata/heap. Stack. Basis for flerprosess-systemer.

Dagens program. Operativsystemer Prosesser og systemkall i UNIX Hente prosessens nummer Starte prosesser Vente på prosesser Utføre programmer

Fakultet for informasjonsteknologi,

Tildeling av minne til prosesser

HØGSKOLEN I SØR-TRØNDELAG

! Ytelsen til I/O- systemer avhenger av flere faktorer: ! De to viktigste parametrene for ytelse til I/O er:

ITF20205 Datakommunikasjon - høsten 2011

Computer Networks A. Tanenbaum

D: Ingen trykte eller håndskrevne hjelpemiddel tillatt. Bestemt, enkel kalkulator tillatt.

INF2270. Input / Output (I/O)

Lars Vidar Magnusson. October 11, Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28

Linklaget. Olav Lysne. (med bidrag fra Stein Gjessing og Frank Eliassen) Oppsummering 1

Faglig kontakt under eksamen: Orestis Gkorgkas

Computer Networks A. Tanenbaum

Innhold. Virtuelt minne. Paging i mer detalj. Felles rammeverk for hukommelseshierarki Hukommelseshierarki-2 1

Introduksjon til nettverksteknologi

Scheduling og prosesshåndtering

UNIVERSITETET I OSLO

CPU-Scheduling. Fag: Operativsystemer

2EOLJDWRULVNRSSJDYHQU L GDWDNRPPXQLNDVMRQ + VWHQ.,QQOHYHULQJVIULVWRNWREHU *MHQQRPJnVWRUVGDJRNWREHU

Skisse til løsning for eksamensoppgave i TDT4186 Operativsystemer

Sentrale deler av pensum i INF

Nettlaget. Nettlagets oppgaver

EKSAMEN. Operativsystemer. 1. Læreboken "A Practical Guide to Red Hat Linux" av Mark Sobell 2. Maks. tre A-4 ark med selvskrevne notater.

TDT4110 IT Grunnkurs: Kommunikasjon og Nettverk. Læringsmål og pensum. Hva er et nettverk? Mål. Pensum

EKSAMENSOPPGAVE I FAG TDT4186 OPERATIVSYSTEMER. Faglig kontakt under eksamen: Svein Erik Bratsberg og Arvid Staupe

oppgavesett 4 INF1060 H16 Hans Petter Taugbøl Kragset Øystein Dale Christian Resell 27. september 2016 Institutt for informatikk, UiO

D: Ingen trykte eller håndskrevne hjelpemiddel tillatt. Bestemt, enkel kalkulator tillatt.

Høgskolen i Telemark EKSAMEN Operativsystem og nettverk inkludert denne forsiden og vedlegg. Merknader:

Eksamensoppgave i TDT4258 Energieffektive datamaskinsystemer

Generelt om permanent lagring og filsystemer

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring

Eksamensoppgave i TDT4258 Energieffektive Datamaskinsystemer

INF1060: avsluttende eksamen

Tildeling av minne til prosesser

Sentrale deler av pensum i INF240. Hensikt. Pål Spilling og Kjell Åge Bringsrud

HØGSKOLEN I SØR-TRØNDELAG

Høgskolen i Telemark EKSAMEN Operativsystem og nettverk inkludert denne forsiden og vedlegg. Merknader:

IT Grunnkurs Nettverk 3 av 4

EKSAMEN. Emne: Datakommunikasjon

Kjenn din PC (Windows7)

EKSAMENSFORSIDE Skriftlig eksamen med tilsyn

Filsystemet fra innsiden

HØGSKOLEN I SØR-TRØNDELAG

Høgskolen i Molde Institutt for Informatikk Prøveeksamen 1 in115: Nettverksdrift Svarskisse:

Eksamensoppgave i TDT4258 Energieffektive Datamaskinsystemer

IN 147 Program og maskinvare

TDT4225 Lagring og behandling av store datamengder

Eksempler på ikke-blokkerende systemkall:

UNIVERSITETET I OSLO

Kjenn din PC (Windows 7)

1. Introduksjon til operativsystemer

HØGSKOLEN I SØR-TRØNDELAG

Filer i Linux og Bourne-again shell

Løsningsforslag til oppgaver i datakommunikasjons-delen i inf1060, uke 48, 2004.

Eksamensoppgave i TDT4186 Operativsystemer

Prosesstabeller (PCB - Prosess Control Block) Se på PD: kommandoene ps og top Bakgrunnsprosesser Opprettelse av prosesser:

Patrick Fallang (Dataingeniør) Lab Oppgave: Kjenn Din Egen PC (XP)

Input/Output. når tema pensum. 13/4 busser, sammenkobling av maskiner /4 PIO, DMA, avbrudd/polling

Litt mer detaljer om: Detaljerte funksjoner i datanett. Fysisk Lag. Multipleksing

Operativsystemet Internt

Løsningsforslag uke 48

Oppsummering av digitalteknikkdelen

UNIVERSITETET I OSLO

Innhold. Innledning til Input/Output. Ulike typer Input/Output. Input/Output internt i datamaskinen. Input/Output mellom datamaskiner

kan adressere et større område som RAM enn det som faktisk er tilgjengelig. Siden data kan plasseres i RAM og/eller på harddisken brukes begrepet

Into da BIOS<3. Bak Skallet

Oppgave 2: Gå til roten (/) av systemet. Finn minst tre forskjellige måter å gå tilbake til hjemmekatalogen din på.

EKSAMEN. Emne: Datakommunikasjon

Løsningsforslag Gruppeoppgaver, 28. april 2. mai. 1. Metningskontroll ( Congestion control ) og ressursallokering.

Oversikt. Introduksjon Kildekode Kompilering Hello world Hello world med argumenter. 1 C programmering. 2 Funksjoner. 3 Datatyper. 4 Pekere og arrays

UNIVERSITETET I OSLO

Her velger dere først System and Security og deretter System.

IT Grunnkurs Nettverk 2 av 4

Lagene spiller sammen

Transkript:

UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF1060 Introduksjon til operativsystemer og datakommunikasjon Eksamensdag: 6. desember 2010 Tid for eksamen: 14.30 18.30 Oppgavesettet er på 9 sider. Vedlegg: Ingen Tillatte hjelpemidler: Ingen Kontroller at oppgavesettet er komplett før du begynner å besvare spørsmålene. Oppgave 1 Operativsystemer (ca. 40 %) Svar på følgende oppgaver om operativsystemer. Tegn gjerne figurer. 1a Ressurshåndterer Vi sier ofte at operativsystemet virker som en ressurshåndterer (resource manager). Forklar hva vi mener med dette. 1b Prosesser Programmet vist i figur 1 bruker flere viktige funksjoner for å håndtere prosesser. Forklar hva som skjer i kodeblokkene merket A, B og C. Som et minimum, inkluder hvilken prosess som kjører hvilken blokk, hva de forskjellige blokkene gjør, hvilke PID verdier som skrives ut (ikke eksakte nummere, men hvilken prosess sin PID det er) og hvordan/hvor de forskjellige prosessene terminerer. 1c CPU scheduling Hva er en avbrytbar (preemptive) CPU scheduler? Forklar hovedideen bak moderne hierarkiske CPU schedulere som vi har i operativsystemer i dag (du kan bruke et konkret eksempel eller forklare generelt). 1d Forskjellige typer operativsystemer Diskuter de forskjellige egenskapene og beskriv de viktigste forskjellene mellom typiske batch operativsystemer og interaktive/sanntids (real-time) operativsystemer. 1e Virtuelt minne og paging Forklar ideen bak virtuelt minne med paging for å håndtere minnet. (Fortsettes på side 2.)

Eksamen i INF1060, 6. desember 2010 Side 2 <...includes...> extern char **environ; int main(void) { pid_t pid, n; int status = 0; A: if ((pid = fork()) == -1) {printf("error\n"); exit(1);} if (pid!= 0) B: { B: printf("pid1=%d, PID2=%d\n", (int) getpid(), (int) pid); B: printf("going to sleep (wait)...\n"); B: n = wait(&status); B: printf("returned PID3=%d, status=0x%x\n", (int) n, status); B: exit(0); B: } else C: { C: char *argv[] = {"/usr/bin/gcc", "-o", "test", "/home/inf1060/test.c", 0}; C: printf("pid4=%d, PID5=%d\n", (int) getpid(), (int) pid); C: execve("/usr/bin/gcc", argv, environ); C: printf("finished\n"); C: exit(1); C: } } Figur 1: Et lite fork program 1f Sideutbyttingsalgoritmer Anta at du har et system med 3 fysiske siderammer (page frames) med minne. En applikasjon kjører (alene) og refererer minnet i følgende sekvens (referanse streng, rekkefølgen av sideakesser): 6, 2, 4, 6, 5, 1, 6, 3, 5, 6, 5, 1, 5 Hvor mange sidefeil (page faults) oppstår for hver av de følgende sideutbyttingsalgoritmer (page replacement algorithms): 1) first-in-first-out (FIFO), 2) second chance (clock) og 3) least recently used (LRU)? 1g Minnehåndtering Anta at du har 1 MB fysisk minne som du må håndtere. Forklar hvordan Buddy systemet virker og gi et eksempel på hvordan minnet partisjoneres når du mottar forespørsler for først en 200 KB blokk og deretter en 50 KB blokk. 1h Disk scheduling I figur 2 kan du se et bilde av noen diskblokkers plassering på disken. Anta at du akkurat har lest en blokk lagret i spor (track) nummer 10 og at diskhodet var på vei mot høyere spornummere (mot høyre). I ankommende rekkefølge har forespørselkøen følgende forespørsler: A, B, C, D, E, F, G and H. De korresponderende datablokkene er lagret i henholdsvis sporene 2, 21, 14, 8, 5, 24, 12 and 7. Anta videre at søketiden på disken er gitt av formelen 10 t ms hvor t er antall spor hodet må bevege seg over (for eksempel et søk fra spor 2 til spor 4 er et søk på 2 spor). Hvis du skal utføre alle forespørslene i køen, i hvilken rekkefølge utføres forespørslene og hva blir den totale søketiden hvis du bruker 1) First-Come-First-Serve, 2) Shortest-Seek-Time-First og 3) SCAN? Bruk kvadratrotverdiene gitt i tabell 1. (Fortsettes på side 3.)

Eksamen i INF1060, 6. desember 2010 Side 3 Figur 2: Diskblokkplassering 1 = 1.00 2 = 1.41 3 = 1.73 4 = 2.00 5 = 2.23 6 = 2.45 7 = 2.65 8 = 2.83 9 = 3.00 10 = 3.16 11 = 3.32 12 = 3.46 13 = 3.61 14 = 3.75 15 = 3.87 16 = 4.00 17 = 4.12 18 = 4.24 19 = 4.36 20 = 4.47 21 = 4.58 22 = 4.69 23 = 4.80 24 = 4.90 25 = 5.00 Tabell 1: Kvadratrotverdier 1i Pipes Hva er en pipe og hva brukes den til? Forklar hvordan den virker. Oppgave 2 Flervalgsoppgaver i operativsystemer (ca. 10 %) I denne oppgaven skal du bare velge ETT alternativ uten å gi noen forklaring. 2a Systemkall Et systemkall er en funksjon... 1.... som kalles av operativsystemet for å kjøre tjenester på brukernivå 2.... som kalles av en brukernivå-applikasjon for å kjøre operativsystemtjenester 3.... som kalles når det oppstår en sidefeil (page fault) 4.... som starter enhets (device) drivere 5.... som eksekveres når et avbrudd (interrupt) oppstår 2b Master boot record Master boot record... 1.... lagrer records (meldinger) under prosessen med å starte maskinen 2.... er lagret på en kjent lokasjon på disken og inneholder boot programmet 3.... er lagret på en kjent lokasjon på disken og inneholder hovedsidetabellen (master page table) 4.... er lagret på en ukjent lokasjon på disken og inneholder hovedsidetabellen (master page table) 5.... er den første (hoved) record (meldingen) som beskriver hver fil i filsystemet NTFS (Fortsettes på side 4.)

Eksamen i INF1060, 6. desember 2010 Side 4 2c Monolitiske operativsystemkjerner En monolitisk operativsystemkjerne... 2d 1.... er den delen av operativsystemet som håndterer monolitiske filer 2.... har minimal funksjonalitet hvor den nødvendige ekstra funksjonaliteten utføres i separate prosesser 3.... er den delen av operativsystemt som håndterer interrrupts 4.... er en kjerne hvor all funksjonalitet er linket inn i et enkelt objekt 5.... er den delen av operativsystemet som håndterer enhets (device) drivere Prosesstilstander Til hvilken tilstand går en kjørende prosess som må vente på at en I/O forespørsel skal bli ferdig? 2e 1. READY 2. RUNNING 3. TERMINATED 4. I/O 5. BLOCKED CPU scheduling Prosesser som kjører i en sanntidsklasse (real-time class) i Linux eller Windows... 2f 1.... er prosesser som utfører oppgaver relatert til sanntids-hendelser (som opptak av video) 2.... er høy-prioritets-prosesser som får spesiel behandling 3.... er lav-prioritets-prosesser som får spesiel behandling 4.... kan bli avbrutt av brukerprosesser 5.... kan aldri avbrytes Scheduler innovakasjon Hvilke av disse hendesene gjør at CPU scheduleren starter (CPU scheduler invocation)? 1. Funksjonskall 2. Prosess-terminering 3. Iterering av en løkke 4. Funksjoner som returnerer 5. Oppslag i buffer-cache en (Fortsettes på side 5.)

Eksamen i INF1060, 6. desember 2010 Side 5 2g Absolutt adressering Absolutt adressering er en måte å... 2h 1.... adressere diskblokker på disken direkte ved hjelp av blokknummer 2.... adressere minne ved hjelp av relative adresser i programmet 3.... adressere diskblokker ved hjelp av pekere 4.... gi datakommunikasjonssystemet i operativsystemet en IP adresse uten hjelp av oversettelsesfunksjoner 5.... adressere minne direkte ved hjelp av en hardware adresse Signaler Et signal... 2i 1.... er et software-generert avbrudd (interrupt) som sendes til en prosess 2.... er et hardware-generert avbrudd (interrupt) som sendes til en prosess 3.... vil alltid drepe en prosess 4.... er en mekanisme i operativsystemet for å signalere når en I/O operasjon er ferdig 5.... er en mekanisme i operativsystemet for å signalere når en prosess forandrer tilstand File Allocation Table Hvilken metode bruker filsystemet File Allocation Table (FAT) for å håndtere data blokker til en fil lagret på disken? 2j 1. linking i media (chaining in media) 2. linking i en tabell (chaining in map) 3. tabell av pekere (table of pointers) 4. extents 5. records Unntak (exceptions) Et unntak er... 1.... en mekanisme for å stoppe den kjørende prosessen når det har oppstått et forhåndsdefinert synkront event (for eksempel et system kall) 2.... en prosesstilstand 3.... en scheduleringsalgoritme som muliggjør det å prioritere høyere-prioritets prosesser 4.... en operasjon i filsystemet for å unngå å bytte ut et element i buffer-cachen 5.... en mekanisme for å stoppe den kjørende prosessen når det har oppstått et forhåndsdefinert asynkront event (for eksempel en ferdig disk operasjon) (Fortsettes på side 6.)

Eksamen i INF1060, 6. desember 2010 Side 6 Oppgave 3 Datakommunikasjon (ca. 40 %) Svar på følgende oppgaver om datakommunikasjon. Tegn gjerne figurer. 3a Internet Beskriv kort hva vi forstår med Internet. I tillegg, gi en overordnet beskrivelse av hva slags problemer som kan oppstå når vi sender pakker gjennom flere nett for å komme fram til mottakerstasjonen. 3b Referansemodeller Hvorfor har man laget såkalte referansemodeller for datakommunikasjons-systemer, hva slags struktur har disse modellene og hvilke hovedfunksjoner er beskrevet? Beskriv likheter og forskjeller mellom ISOs OSI modell og Internets TCP/IP modell. Hva er den viktigste forskjellen mellom de fire nederste og de tre øverste lagene i OSI-modellen? 3c Fysiske egenskaper ved overføring Anta at du skal sende en pakke med lengde 4000bit over en datalinje som er 1000km lang. Signalet forflytter seg på linja med en hastighet lik 2/3 av lyshastigheten, dvs. 200.000km/s. Beregn hvor lang tid det tar fra starten av sendingen av pakka til slutten på mottaket av pakka gitt at båndbredden på datakanalen er 10Mbit/s. 3d Lokalnett (LAN) Hvilke nett-topologier finner man gjerne i lokalnett og hvordan har man organisert linklaget i OSIstacken for å kunne innlemme lokalnett-spesifikasjonene? 3e Broer vs. Rutere Gjør rede for hva som er forskjellen mellom en bro og en ruter. 3f Svitsjeteknikker Gjør rede for forskjellen mellom linjesvitsjing og pakkesvitsjing. Hva er fordeler og ulemper med de to teknikkene? Anta at vi har en linje med overføringskapasitet (båndbredde) på 1 Mbit/s som skal deles av et antall brukere. Hver brukerstasjon benytter 100Kbit/s når den er aktiv, og stasjonene er aktive 10% av tiden til vilkårlige tidspunkter. Gjør rede for utnyttelsen av overføringskapasiteten ved bruk av henholdsvis linjesvitsjing og pakkesvitsjing 3g Nettlaget Hva forstår vi med gruppekringkasting (multicast) på nettlaget, og hvordan realiseres dette? 3h Kontrollinformasjon Beskriv, uten å gå i detalj, hvordan det generelle formatet for rammer, pakker og meldinger ser ut. Gjør videre rede for hvordan kontrollinformasjonen hektes på og av for hvert lag i avsender- og mottakersystemene. (Fortsettes på side 7.)

Eksamen i INF1060, 6. desember 2010 Side 7 3i Forbindelsesorientert vs. forbindelsesløs Hva slags funksjonalitet ytes av henholdsvis forbindelsesorienterte og forbindelsesløse tjenester for dataoverføring? Beskriv fordeler og ulemper ved disse to tjenestekategoriene. 3j Overførings-syntaks Hva menes med en overførings-syntaks og hvorfor trenger man en slik spesifikasjon? Oppgave 4 Flervalgsoppgaver i datakommunikasjon (ca. 10 %) I denne øvelsen, velg ETT av alternativene i delpørsmålene nedenfor uten å gi noen forklaring. 4a Aksessnettverk Et aksessnettverk er et nettverk som... 1.... knytter sammen forskjellige land 2.... tillater rask aksess 3.... kontrollerer aksessrettighetene til nettverks-brukerne 4.... knytter sammen forskjellige verdensdeler 5.... kopler endesystemene til Internettet 4b Telefon-nettet Et telefon-nett er et eksempel på et... nettverk. 1.... pakkesvitsjet 2.... linjesvitsjet 3.... meldings-svitsjet 4.... datagram-svitsjet 5.... ingen av de ovenforstående 4c Asymmetric Digital Subscriber Line (ADSL) Mesteparten av båndbredden for ADSL bærer... 1.... tale-kommunikasjon 2.... oppstrøms data 3.... nedstrøms data 4.... kontroll-data 5.... video data (Fortsettes på side 8.)

Eksamen i INF1060, 6. desember 2010 Side 8 4d Flytkontroll Flytkontroll er nødvendig for å hindre... 4e 1. bitfeil 2. overflyt av sender-bufferet 3. overflyt av mottaker-bufferet 4. kollisjon mellom sender og mottaker 5. forstyrrelse av dataflyten på overføringslinja Koaksialkabel Hva er hoved-faktoren som gjør koaksialkabel mindre mottagelig for støy enn tvunnet parkabel? 4f 1.... Indre leder 2.... Diameteren på kabelen 3.... Skjerming (ytre leder) 4.... Isolerende materiale 5.... Den elektriske impedansen Optisk fiber Optisk fiber er, i motsetning til kopper-ledning, høyst motstandsdyktig mot... 4g 1. høyfrekvent overføring 2. lavfrekvent overføring 3. elektromagnetisk interferens 4. refraksjon 5. refleksjon Bro En bro videresender eller filtrerer en ramme ved å sammenlikne informasjonen i sin adressetabell med rammens... 1.... lag 2 kilde-adresse 2.... kilde-nodens fysiske adresse 3.... lag 2 destinasjons-adresse 4.... lag 3 destinasjons-adresse 5.... port-nummer (Fortsettes på side 9.)

Eksamen i INF1060, 6. desember 2010 Side 9 4h Svitsjing I hvilken type svitsjing følger alle pakkene i en melding de samme kanalene til en sti ( path )? 1.... Datagram pakkesvitsjing 2.... Virtuell krets pakkesvitsjing 3.... Meldings-svitsjing 4.... Segment-svitsjing 5.... Ingen av de ovenforstående 4i UDP Hvilke(n) av følgende funksjoner utfører UDP? 1. Prosess-til-prosess kommunikasjon 2. Vertsmaskin-til-vertsmaskin kommunikasjon 3. Ende-til-ende pålitelig data-overføring 4. Flytkontroll 5. Alle de ovenforstående 4j Pålitelig levering Definisjonen av pålitelig levering innbefatter...: 1.... feilfri levering 2.... mottak av den komplette meldingen 3.... levering i rett rekkefølge 4.... levering uten duplikater 5.... Alt det ovenforstående Good luck!