Principper for Samtidighed og Styresystemer - Afslutning

intranet.cs.aau.dk

Principper for Samtidighed og Styresystemer - Afslutning

Principper for Samtidighed og StyresystemerAfslutningRené Rydhof HansenMAJ 2011PSS’2011 (Forelæsning 15) Afslutning MAJ 2011 1 / 14


I dagKursusopsummeringEksamenMini-ProjekterPSS’2011 (Forelæsning 15) Afslutning MAJ 2011 2 / 14


Part IIKursusopsummeringPSS’2011 (Forelæsning 15) Afslutning MAJ 2011 3 / 14


Kursusmål (studieordning)Den studerende skal ved den afsluttende prøve kunne:dokumentere kendskab til og overblik over de berørte temaer ogbegreber inden for samtidighed og operativsystemerbenytte korrekt fagterminologi og notation i såvel skrift som taledokumentere forståelse for opbygning, strukturering, funktionalitet ogvirkemåde af operativsystemeranvende berørte emner til udvikling af systemnære simpleprogrammer, der benytter sig af samtidighed og synkroniseringPSS’2011 (Forelæsning 15) Afslutning MAJ 2011 4 / 14


Hvorfor?Iflg. studieordningen:“Alle interessante systemer anvender i en eller andenudstrækning parallelitet og samtidige processer.”Systemnær programmering ofte en forudsætning for indlejredesystemerFundamentale begreber... sjovt!PSS’2011 (Forelæsning 15) Afslutning MAJ 2011 5 / 14


KursusindholdFiler og FilsystemerProcesser og trådeGensidig udelukkelseSamtidighedDeadlocks og deadlockhåndteringHukommelsesstyringHardwareunderstøttelseStyresystemkernen og InterruptsDevice driverePSS’2011 (Forelæsning 15) Afslutning MAJ 2011 6 / 14


KursusindholdFiler og FilsystemerHvad og hvordan er et filsystem en abstraktionGrundlæggende organisationsprincipper for filsystemerHard links vs. symbolic linksVirtuelle filsystemerGrundlæggende egenskaber ved og operationer på filsystemerAllokeringsstrategier for diskblokkeAPI/interface/systemkald for filsystemerImplementation af katalogerPSS’2011 (Forelæsning 15) Afslutning MAJ 2011 6 / 14


KursusindholdProcesser og trådeDefinitionGrundlæggende træk ved procesoprettelse under UNIXPSS’2011 (Forelæsning 15) Afslutning MAJ 2011 6 / 14


KursusindholdGensidig udelukkelseDefinition og brugMetoder til opnåelse af gensidig udelukkelsePSS’2011 (Forelæsning 15) Afslutning MAJ 2011 6 / 14


KursusindholdSamtidighedRelativ tidSynkroniseringPSS’2011 (Forelæsning 15) Afslutning MAJ 2011 6 / 14


KursusindholdDeadlocks og deadlockhåndteringDeadlock-begrebetLøsningsstrategier og algoritmerPriority inversion: problem og løsningerLivelock og starvation (husk: Sultne ’soffer)PSS’2011 (Forelæsning 15) Afslutning MAJ 2011 6 / 14


KursusindholdHukommelsesstyringLagerhierarkiet og lokalitetPaging (og segmentering)Organisationsprincipper for sidetabellerSwapping, demand pagingSidefejl og sideerstatningsalgoritmerOPT, LRU, FIFO, ClockRammeallokeringWorking set modellenThrashingPSS’2011 (Forelæsning 15) Afslutning MAJ 2011 6 / 14


KursusindholdHardwareunderstøttelseInstruction-fetch løkkenMMUCachingPSS’2011 (Forelæsning 15) Afslutning MAJ 2011 6 / 14


KursusindholdStyresystemkernen og InterruptsUser- og kernel-modeException (fault, traps, interrupts)I/O (specielt: interruptbaseret I/O)Håndtering af systemkaldProces- og tråd-realiseringScheduleringPSS’2011 (Forelæsning 15) Afslutning MAJ 2011 6 / 14


KursusindholdDevice drivereDefinition og brugGrænsefladerTyperImplementation (Linux)I/O Schedulering (FIFO, CBF, SCAN, CSCAN)PSS’2011 (Forelæsning 15) Afslutning MAJ 2011 6 / 14


EvalueringMasser af begreber og koncepterPraktisk erfaring kun i opgaver/mini-projektOverfladisk (primær) litteraturPSS’2011 (Forelæsning 15) Afslutning MAJ 2011 7 / 14


Part IIIEksamenPSS’2011 (Forelæsning 15) Afslutning MAJ 2011 8 / 14


EksamenDatoer8–9. juni 201114–16. juni 2011Mundtlig eksamen med forberedelse (ca. 20 min.)Ekstern censur (Christian W. Probst, DTU)7-trinsskalaenHovedspørgsmål (kendt) og sidespørgsmål (ukendt(e))Spørgsmål om device drivere udgår ved godkendt mini-projekt.PSS’2011 (Forelæsning 15) Afslutning MAJ 2011 9 / 14


Hovedspørgsmål1. Processer og tråde: begreber og implementation. Proces, procesbillede,tilstandsmodeller, proceskontrolblok, forskelle på tråde ogprocesser.2 Multithreading. Anvendelse, realisering, fordele og ulemper,anvendelsesområder, implementation af multi-threading(kerneniveau vs. brugerniveau), proces- og tråd-kontrolblok,trådskift.3 Semaforer. Anvendelse, realisering, mutex, race condition, definition ogbrug af semaforer, producer/consumer, implementation afsemaforer, hardwareunderstøttelse (test-and-set, swap,exchange), udsultning (starvation), deadlocks, priorityinversion, dining philosophers.4 Deadlockhåndtering. Definition af deadlock, nødvendige ogtilstrækkelige betingerlser for deadlock, deadlock prevention,sikre tilstande, deadlock avoidance, deadlock detection andrecovery, banker’s algorithm.PSS’2011 (Forelæsning 15) Afslutning MAJ 2011 10 / 14


Hovedspørgsmål (fortsat)5 Lageradministration i primær lager. Fast inddeling, dynamisk inddeling,virtuelt lager, demand paging, fragmentering(intern/ekstern), shared memory, copy-on-write, memorymapped I/O.6 Virtuelt lager, adresseoversættelse, sidetabeller. Adresserum, paging,adresseoversættelse (logisk til fysisk), pagefaults oghåndtering af samme, sidetabeller (et- og to-niveau),inverteret sidetabel, MMU.7 Virtualt lager, sideerstatning og rammeallokering. Paging ogsidetabeller, sideerstatning (hvad og hvornår),sideerstatningsalgoritmer (OPT, LRU, FIFO, Clock) samtfordele og ulemper, fast-ramme allokering, dynamiskramme-allokering, working-set.PSS’2011 (Forelæsning 15) Afslutning MAJ 2011 11 / 14


Hovedspørgsmål (fortsat)8 Filsystemer. Navnerum, realisering af filer og mapper, operationer påfiler, metadata, åbning af filer, file descriptors, kontinuertallokering, kædet allokering, mapped allokering, indekseretallokering, samt fordele og ulemper.9 Interrupts og styresystemkernen. Definition og forklaring (exceptions,traps, faults), realisering af systemkald, modeskift,kontekstskift, interruptstyret I/O (vs. anden I/O).10 Device drivere. (udgår ved godkendt mini-projekt) Definition ogbeskrivelse, grænseflader (kerne vs. device driver), typer afdevice drivere, implementation af device drivere, I/Omanager og I/O schedulering (for blok devices: FIFO, CBF,SCAN, C-SCAN).PSS’2011 (Forelæsning 15) Afslutning MAJ 2011 12 / 14


Afsluttende bemærkningerSpørgetime?Svar på mini-projektTak for denne gang og god læselyst!PSS’2011 (Forelæsning 15) Afslutning MAJ 2011 13 / 14


PSS’2011 (Forelæsning 15) Afslutning MAJ 2011 14 / 14

More magazines by this user
Similar magazines