uc:sendtilenven runat server id uc_sendtilenven
Ændre størrelse på tekst Print

Styresystemer og multiprogrammering (OSM)


Semesterangivelse: Forårs kursus Kurset udbydes i blok 3 Kurset udbydes i skemagruppe B Kurset giver 7,5 ETCS point

 


Udgave: Forår 2013 NAT
Point: 7,5
Blokstruktur: 3. blok
Skemagruppe: B
Fagområde: dat
Varighed: 9 uger
Institutter: Datalogisk Institut
Uddannelsesdel: Bachelor niveau
Kontaktpersoner: Robert Glück, e-mail: glueck@diku.dk
Andre undervisere: Jost Berthold, e-mail: berthold@diku.dk.
Skema- oplysninger:  Vis skema for kurset
Samlet oversigt over tid og sted for alle kurser inden for Lektionsplan for Det Naturvidenskabelige Fakultet Forår 2013 NAT
Undervisnings- form: Forelæsninger, opgaveregning, øvelser
Formål: Kurset har to hovedformål: (1) at introducere den studerende for komponenterne i et moderne styresystem (2) at give den studerende en teoretisk og praktisk indføring i multiprogrammering.
Indhold: Introduktionen af styresystemer vil omfatte de mekanismer og politikker, der anvendes i de enkelte komponenter, og vil desuden inddrage samspillet mellem de enkelte komponenter og applikationsprogrammel. Med udgangspunkt i procesbegrebet belyses styresystemets rolle som ressourceadministrator hvor de centrale emner er CPU skedulering, synkronisering, virtuelt lager og filsystemer. Desuden berøres styresystemers opbygning og historiske udvikling. Indføringen i multiprogrammering skal give en forståelse for problemerne og mulighederne omkring samtidig afvikling af samarbejdende processer/tråde. Denne del af kurset vil fokusere på hvordan forskellige typer af arbejdsopgaver løses ved hjælp af samarbejdende processer, samt hvilke synkroniseringsmekanismer (semaforer, barrierer, låse, monitorer), der bør anvendes. Desuden berøres formelle metoder til verifikation af multiprogrammer. Nøgleord CPU-skedulering, synkronisering, virtuelt lager, filsystemer, processer/tråde, semaforer/låse/monitorer, formel verifikation.
Kompetence- beskrivelse: Se formål
Målbeskrivelse: Ved kursets afslutning skal den studerende kunne: 1. Redegøre for opbygningen af styresystemer og deres rolle som ressourceadministrator af datamaskiner. 2. Beskrive virkemåden og samspillet af grundlæggende komponenter af et styresystem, som CPU skedulering, lagersystem, filsystem og I/O. 3. Analysere og udføre forskellige styresystem mekanismer, samt vurdere fordele og ulemper ved forskellige mekanismer og politikker til en given opgave. 4. Design og implementere systemer i C for fler-trådede programmer, herunder mekanismer til håndtering af baglås. 5. Sammenholde alternative metoder til multiprogrammering, skedulering, og synkronisering (semaforer, barrierer, låse, monitorer), samt argumentere for valg af samme. 6. Beskrive mulighederne og løse grundlæggende problemerne omkring afvikling af samarbejdende processer/tråde. 7. Redegøre for de basale sikkerhedsmekanismer i et styresystem og deres anvendelse til at opnå sikkerhed. 8. Forstå samspillet mellem datamaskinen, komponenterne i et moderne styresystem og applikationsprogrammel.
Lærebøger: Forventes at være: Silberschatz, Galvin & Gagne. Operating System Concepts, 8th edition, Wiley, 2009. Kernighan & Ritchie: The C Programming Language, 2. udgave, Prentice-Hall. Noter omkring multiprogrammering.
Tilmelding: 15. november - 1. december, 2012, via KUnet, www.kunet.dk
Faglige forudsætninger: Kendskab til imperativ programmering og maskinarkitektur, som f.eks. kan opnås ved at følge kurserne OOPD og Maskinarkitektur.
Eksamensform: For at kvalificere sig til eksamen, skal 5 godkendelsesopgaver med gruppeaflevering godkendes. Eksamen er en individuel tag-hjem eksamen på 4,5 dage med karakter efter 7-trinsskalaen og ekstern censur. Aflevering sker i Absalon.
Reeksamen: Som ordinær eksamen.
Eksamen: Tag-hjem opgave. Udleveres d. 2. april og afleveres d. 8. april 2013.
Reeksamen: Tag-hjem opgave. Udleveres d. 24. juni og afleveres d. 28. juni 2013.
Kursus hjemmeside:
Pensum: Silberschatz, Galvin & Gagne, Operating System Concepts, 8th edition, Wiley, 2009 [Kapitlerne nn]. Kernighan & Ritchie: The C Programming Language, 2. udgave, Prentice-Hall. Noter omkring multiprogrammering.
Undervisnings- sprog: Kun engelsk
Sidst redigeret: 31/10-2012



Københavns Universitet