Kursets mål er at sætte deltagerne studerende i stand til at benytte parallelle aktiviteter ved konstruktion af programmer samt give dem en grundlæggende forståelse for opbygningen af underliggende operativsystemer.
Læringsmål:
En studerende, der fuldt ud har opfyldt kursets mål, vil kunne:
Anvende processer og tråde hvor det er relevant ved udvikling af programmer.
Løse almindeligt forekommende synkroniserings- og kommunikationsproblemer ved benyttelse af sædvanlige mekanismer.
Designe simple tidstro systemer ved brug af parallelle processer.
Vurdere virkningen af forskellige procesafviklingsprincipper.
Programmere mod systemgrænsefladen til et konkret operativsystem.
Redegøre for opbygningen af sædvanlige operativsystemer.
Udvikle simple drivprogrammer.
Foretage mindre ændringer i specifikke operativsystemkomponenter.
Kursusindhold:
- Parallelprogrammering: Procesbegrebet og modeller af parallelitet. Synkronisering, race conditions, atomare aktioner. Kritiske regioner, semaforer, monitorer, meddelelelsesoverførsel. - Operativsystemer: Processer og tråde, oprettelse og afvikling, kommunikationsmekanismer, drivprogrammer, filsystemer, ressourceadministration og baglås, sikkerhed.