Norges Tekniske Høgskole Institutt for Datateknikk og Telematikk Datamaskingruppen Studieåret 1995/96

Fag 45214 Datamaskinarkitektur

Øving 10

\underline{Oppgave 1:}

Forklar de følgende begreper som beskriver prinsipper for program-utførelse på multiprosessorer, og fokuser på mulighetene for kommunikasjon mellom ulike deler av programmet.

a) Multiprogrammering

b) Multiprosessering i MIMD modus

c) Multiprosessering i MPMD modus

d) Multitasking

e) Multithreading

f) Program-oppdeling (Eng: program partitioning)

\underline{Oppgave 2:}

Forklar hvorfor gjensidig utelukkelse (Eng: mutual exclusion), “nonpreemption”, “wait for”, og sirkulær venting (Eng: circular wait) er nødvendig, men ikke tilstrekkelig for at vranglås skal oppstå i et system. Forklar dessuten hva begrepene vranglås “prevention”, “avoidance”, “detection”, og “recovery” betyr. Foreslå gjerne norske ord for disse begrepene.

\underline{Oppgave 3:}

Forklar operasjoner for de forskjellige mater-slave kjernene som er listet opp under. Finn fordeler og ulemper ved hver konfigurasjon.

a) Enkel, fast master-slave kjerne

b) Enkel, flytende master-slave kjerne

c) Enkel, master kjerne med hjelpere

d) Multiple, samarbeidende mastere for å utføre forskjellige delsystems-funksjoner

e) En “multithreaded” UNIX kjerne