F7 Flashcards
Var sparas adressen till nästa instruktion?
Programräknaren
Vad är fetch och execute stage?
Läsa in nästa instruktion, exekvera nästa instruktion
Hur ser ett instruction format ut?
OP-kod & adress
Hur ser ett integer format ut?
Pos/neg & värde
Vilka interna CPU-register har vi?
Programräknaren, instruktionsregistret, Ackumulatorn
Anledning för en interrupt?
Programfel som t.ex en overflow etc.
En timer som avbryter en process efter överstigen tid
I/O som meddelar något
Hårdvarufel
Huvudsyfte med ett OS?
Kontrollerar exekvering av program
Ett interface mellan program och hårdvara
Resurshantering
En process huvudkomponenter?
Programkoden
Nödvändiga filer för exekvering. Variabler, data etc.
PCB
Vad är syftet med en Thread?
Att köra processor individuellt genom att delegera ut scheduling resurshantering. Det tar kortare tid att skapa, terminera, byta mellan och kommunicera mellan en tråd kontra en process.
Vad delar Threads med varandra inom samma process?
PCB
Vilken typ av Thread använder ett modernt OS?
Multi-thread
Vilka komponenter har en Thread?
Status
Sparad kontext för när den inte körs
Exekveringstack
Åtkomst till all resurser och minne av sina processer
Vad betyder concurrency?
Kommunikation mellan processer
* Dela resurser
* Synkronisering av flera processer
* Tilldelning av processortid
Att något körs parallellt samtidigt. OS & program t.ex.
Svårigheterna med concurrency?
Dela globala resurser
Operativsystem som hanterar resursfördelning på bästa sätt
Svårt att lokalisera programmeringsfel
Vad är OS-systemets största bekymmer?
Håll koll på olika processer
Tilldela och deallokera resurser – Processortid – Minne
Skydda data och resurser
Processen måste vara oberoende av hastighet för utförande av andra samtidiga processer
Vad innebär Memory Management?
Dela upp minnet för att rymma flera processer
Minne måste allokeras för att säkerställa ett rimligt utbud av färdiga processer för att förbruka tillgänglig processortid
Vad innebär relocation i Memory Management?
Att minneshanteraren håller koll på fysiska minnesadresser åt programmeraren. Processer och program kan flyttas från main memory och sedan tillbaka.
Vad innebär protection i Memory Management?
Processer ska inte kunna referera till minnesplatser i en annan process utan tillstånd
Kravet på minnesskydd måste vara uppfyllt av processorn (hårdvaran) snarare än av operativsystem (mjukvara)
Vad innebär sharing i Memory Management?
Tillåta flera processer att komma åt samma del av minnet
Bättre att ge varje process tillgång till samma kopia av programmet snarare än att ha sitt eget separata exemplar
Vad innebär logical organization i Memory Management?
Program skrivs i moduler
Moduler kan skrivas och sammanställas
oberoende av varandra
Olika grader av skydd ges till moduler (skrivskyddad, körbara)
Dela moduler mellan processer
Vad innebär physical organization i Memory Management?
Minne tillgängligt för ett program plus dess data kan vara otillräckliga
Overlaying gör att olika moduler kan tilldelas samma minnesregion
Programmerare vet inte hur mycket plats kommer att finnas tillgängligt
Vad är equal-size partitioning?
Alla processer vars storlek är mindre än eller lika till partitionsstorleken kan laddas in i en tillgänglig partition
Om alla partitioner är fulla kan systemet byta ut en process från en partition
Vad är fixed partitioning?
Oavsett storlek så tar en process upp en hel partition. Varje patition kan ha en kö
Vad är dynamic partitioning?
Partioner är av en viss längd och processer kan allokera så mycket den behöver istället för att ockupera hela partitionen.