Minnehåndtering. Lars Vidar Magnusson. October 4, 2011. Lars Vidar Magnusson () Forelesning i Operativsystemer 04.10.2011 October 4, 2011 1 / 20



Like dokumenter
Minnehåndtering i operativsystemer

Tildeling av minne til prosesser

Lars Vidar Magnusson. October 11, Lars Vidar Magnusson () Forelesning i Operativsystemer October 11, / 28

Minnehåndtering i operativsystemer

Tildeling av minne til prosesser

Tildeling av minne til prosesser

Dagens temaer. Kort repetisjon. Mer om cache (1) Mer om cache (2) Read hit. Read miss. Write hit. Hurtig minne. Cache

Innhold. Virtuelt minne. Paging i mer detalj. Felles rammeverk for hukommelseshierarki Hukommelseshierarki-2 1

Deadlocks og mer om concurrencymekanismer

Oversikt. Historie Struktur Moderne UNIX systemer Moderne UNIX kernel struktur 1 UNIX. 2 Linux. 3 Process. 4 Process models

Mer om C programmering og cuncurrency

Introduksjon til kurset og dets innhold

Kapittel 9: Følge Instruksjoner Prinsipper for Datamaskinens Virkemåte

Håndtering av minne i et OS

Internminne og Cache. RAM = Random Access Memory

Generelt om operativsystemer

Oppsummering av digitalteknikkdelen

Concurrency. Lars Vidar Magnusson. September 20, Lars Vidar Magnusson () Forelesning i Operativsystemer September 20, / 17

Intensitetstransformasjoner og Spatial Filtrering

TDT4160 Datamaskiner Grunnkurs Gunnar Tufte

Oversikt. Introduksjon Kildekode Kompilering Hello world Hello world med argumenter. 1 C programmering. 2 Funksjoner. 3 Datatyper. 4 Pekere og arrays

kan adressere et større område som RAM enn det som faktisk er tilgjengelig. Siden data kan plasseres i RAM og/eller på harddisken brukes begrepet

ITPE/DATS 2400: Datamaskinarkitektur og Nettverk

Grunnleggende Datastrukturer

Litt om Javas class-filer og byte-kode

TDT ITGK - Hardware. Kapittel 9: Følge Instruksjoner - Prinsipper for Datamaskinens Virkemåte. Terje Rydland - IDI/NTNU

I dag. Minne typar Minne mot bussar (fysisk grensesnitt generelt) Meir buss

UNIVERSITETET I OSLO

Eksamen DAT 103. Oppgave 2. Kandidatnr.: 145 1) B 2) B 3) A 4) A 5) D 6) C 7) B 8) A 9) A 10) D

Kapittel 7, Minne RAM DIMM, SIMM ROM, PROM, EPROM, EEPROM FLASH DIM SUM. Cache Virtuelt minne

Internminnet. Håkon Tolsby Håkon Tolsby

Læringsmål og pensum. Oversikt. Systemprogramvare Operativsystemer Drivere og hjelpeprogrammer. To hovedtyper programvare

Filer i Linux og Bourne-again shell

Filer i Linux og Bourne-again shell

Tilkobling og Triggere

Internminnet. Håkon Tolsby Håkon Tolsby

Tråder og concurrency i Linux

public static <returtype> navn_til_prosedyre(<parameter liste>) { // implementasjon av prosedyren

Operativsystemet Internt

Dagens temaer. Virtuell hukommelse. Sidetabell. Virtuell hukommelse (forts.)

Dagens temaer. Virtuell hukommelse (kapittel 9.9 i læreboken) Pentium-arkitekturen i mer detalj INF 1070

Vi anbefaler at du setter deg litt inn i maskinen på forhånd. Det er en DELL Optiplex 620.

Martin Olsen, Lars- Petter Ahlsen og Jon- Håkon Rabben

Repetisjon - Modul 1

Operativsystemer og grensesnitt

Kapittel 9: Følge Instruksjoner Prinsipper for Datamaskinens Virkemåte. Oversatt av Rune Sætre,

Fakultet for informasjonsteknologi,

Introduksjon til nettverksteknologi

Dagens tema C, adresser og pekere

Ark 3 av 26. printf("i adresse %08x ligger b med verdien %d.\n", &b, b); printf("i adresse %08x ligger a med verdien %d.

Lars Vidar Magnusson

Hashtabeller. Lars Vidar Magnusson Kapittel 11 Direkte adressering Hashtabeller Chaining Åpen-adressering

NOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse. INF 5110, 10/5-2011, Stein Krogdahl

! Ytelsen til I/O- systemer avhenger av flere faktorer: ! De to viktigste parametrene for ytelse til I/O er:

Dagens tema. Mer om cache-hukommelse Kapittel 6.5 i Computer Organisation and Architecture ) RAM. Typer, bruksområder og oppbygging 2008 ROM

Faglig kontakt under eksamen: Orestis Gkorgkas

NOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse

Repetisjon: Statiske språk uten rekursive metoder (C1 og C2) Dagens tema Kjøresystemer (Ghezzi&Jazayeri 2.6, 2.7)

Dagens tema Kjøresystemer (Ghezzi&Jazayeri 2.6, 2.7)

TDT4160 Datamaskiner Grunnkurs Gunnar Tufte

Dagens temaer. Mer om adresseringsmodi. Indeksert adressering med offset og auto-inkrement eller dekrement. Register-indirekte adressering

Maskinvaredelen av INF 103: oversikt og innhold (1)

Del 2. Bak skallet. Avsette minne til et spesifikt OS Teste harddisk under oppstart Sette opp system logger

Semantikk. Dagens tema Kjøresystemer (Ghezzi&Jazayeri 2.6, 2.7) Semantikk. Semantikk. En måte å svare på: gi semantikken til språket!

Dagens temaer. Dagens emner er hentet fra Englander kapittel 10 (side ) Mer om adresseringsmodi. RISC og CISC-prosessorer.

INF2270. Minnehierarki

Funksjonalitet og oppbygning av et OS (og litt mer om Linux)

Forelesning 4 torsdag den 28. august

AVSLUTTENDE EKSAMEN I. TDT4160 Datamaskiner Grunnkurs. Torsdag 29. November 2007 Kl

UNIVERSITETET I OSLO

hukommelse (kapittel 9.9 i læreboken) Dagens temaer Input-Output INF 1070

ThinkPad X Series. Delenummer: 67P4585. h Datamaskin. h Batteri

UNIVERSITETET I OSLO

Punkt, Linje og Kantdeteksjon

Forelesning ISA-nivået Kap 5.1

6105 Windows Server og datanett

Dagens temaer. Fra kapittel 4 i Computer Organisation and Architecture. Kort om hurtigminne (RAM) Organisering av CPU: von Neuman-modellen

Digital logic level: Oppsummering

1 Kursintroduksjon. Dagens plan. Hovedmål. MEVIT3326/4326 Kritisk informasjon & samfunnskontakt 10. oktober, 2008 Øyvind Ihlen

A study of different matching heuristics. Hovedfagspresentasjon Jan Kasper Martinsen

Datastrukturer. Algoritmer og datastrukturer. Øvingsforelesning 2

Løsningsforslag for Obligatorisk Oppgave 3. Algoritmer og Datastrukturer ITF20006

Generell informasjon

SPED1200 Emneevaluering våren 2018 Rapport - Nettskjema

Innhold. Om denne boka 1. Kapittel 1 Operativsystemer og mellomvare 5

Eksamensoppgave i TDT4186 Operativsystemer

Del 3. Pekere RR 2016

Oppgave 2: Gå til roten (/) av systemet. Finn minst tre forskjellige måter å gå tilbake til hjemmekatalogen din på.

UNIVERSITETET I OSLO

Oppgave 1 - Linux kommandolinje (%)

Nybegynnerkurs i C. Øyvind Grønnesby. 14. oktober Introduksjon Typer Operatorer Kontrollstrukturer Pekere Makroer Lenker

TI -programvare for grafiske enheter og informasjon om lokalisering

Front page. OS - Memory management. INF Introduksjon til operativsystemer og datakommunikasjon Digital eksamen

UNIVERSITETET I OSLO

Javas klasse-filer, byte-kode og utførelse (og litt om C# sin CIL-kode)

Teoretisk minnemodell Flyktig minne - SRAM -DRAM Ikke-flyktig minne -ROM -EPROM - EEPROM Flash

DAT kandidatnummer: 142

Programmeringsspråket C Del 2. Hans Petter Taugbøl Kragset

MAT1030 Forelesning 3

Dagens temaer. Sekvensiell logikk: Kretser med minne. D-flipflop: Forbedring av RS-latch

Transkript:

Minnehåndtering Lars Vidar Magnusson October 4, 2011 Lars Vidar Magnusson () Forelesning i Operativsystemer 04.10.2011 October 4, 2011 1 / 20

Oversikt Introduksjon 1 Introduksjon Beskrivelse Terminologi Krav til minnehåndterere Illustasjon av prosessen 2 Memory partitioning 3 Paging 4 Segmentation 5 Logisk adressering Lars Vidar Magnusson () Forelesning i Operativsystemer 04.10.2011 October 4, 2011 2 / 20

Introduksjon Beskrivelse Beskrivelse Alle operativsystem med støtte for prosesser må ha en eller form for minnehåndterer. Essensielt for effektiv minnebruk Må oppfylle en rekke krav Lars Vidar Magnusson () Forelesning i Operativsystemer 04.10.2011 October 4, 2011 3 / 20

Introduksjon Terminologi Terminologi Terminologien som benyttes i forhold til minnehåndtering Frame brukes for å betegne en sammenhengende sekvens av primærminne (RAM) med fast størrelse Page brukes for å betegne en sammenhengende sekvens data som ligger i sekundærminnet (harddisk) med fast størrelse. Segment betegner et område med variabel størrelse som ligger i sekundærminnet. Lars Vidar Magnusson () Forelesning i Operativsystemer 04.10.2011 October 4, 2011 4 / 20

Introduksjon Krav til minnehåndterere Krav til minnehåndterere Alle minnehåndterere må oppfylle et sett med krav. Relocation - må støtte å flytte minnet tilhørende en prosess rundt etter behov. Protection - må beskytte minnet til en prosess fra andre prosesser. At prosesser kan flyttes rundt gjør beskyttelse vanskeligere. I tillegg så har vi pekere og dynamisk allokasjon. Sharing - må kunne være mulig å dele data mellom prosesser der det er behov for det. Logical organization - sørge for lineær representasjon og gjøre det mulig å dele opp en applikasjon i moduler som bedre passer logisk oppbygning. Physical organization - sørge for effektiv bytting mellom de ulike nivåer av minne. Lars Vidar Magnusson () Forelesning i Operativsystemer 04.10.2011 October 4, 2011 5 / 20

Illustasjon av prosessen Introduksjon Illustasjon av prosessen En illustrasjon av hvordan en prosess kan være representert i minnet. Lars Vidar Magnusson () Forelesning i Operativsystemer 04.10.2011 October 4, 2011 6 / 20

Oversikt Memory partitioning 1 Introduksjon 2 Memory partitioning Fixed partitioning Dynamic partitioning 3 Paging 4 Segmentation 5 Logisk adressering Lars Vidar Magnusson () Forelesning i Operativsystemer 04.10.2011 October 4, 2011 7 / 20

Memory partitioning Fixed partitioning Fixed partitioning Fixed partitioning er en enkel minnehåndteringsmekanisme hvor minnet blir delt inn i statiske partisjoner. Størrelsen på partisjonene kan være enten like eller ulike. Kan ha en eller flere køer for å fordele prosesser til en ledig partisjon. Mange problemer med en slik løsning e.g. internal fragmentation. Lars Vidar Magnusson () Forelesning i Operativsystemer 04.10.2011 October 4, 2011 8 / 20

Memory partitioning Dynamic partitioning Dynamic partitioning Dynamic partioning ble utviklet for å overkomme de mest åpenbare manglene med partisjoner med fast størrelse. Benytter seg av et variabelt antall partisjoner med variabel størrelse. Det kan bli et problem med external fragmentation. Det kan være vanskelig å finne den beste plassen for en ny prosess. Lars Vidar Magnusson () Forelesning i Operativsystemer 04.10.2011 October 4, 2011 9 / 20

Oversikt Paging 1 Introduksjon 2 Memory partitioning 3 Paging Beskrivelse Illustrasjon av paging Illustrasjon av paging... Illustrasjon av pagetables 4 Segmentation 5 Logisk adressering Lars Vidar Magnusson () Forelesning i Operativsystemer 04.10.2011 October 4, 2011 10 / 20

Paging Beskrivelse Beskrivelse Deler inn prosess minneområde og minnet inn i små biter med fast størrelse. En page er en relativt liten bit med minne i prosessen En frame en en bit med samme størrelse i minnet. En page kan enkelt lastes inn og ut av minnet Løser poblemet med external fragmentation og internal fragmentation er forbeholdt den siste siden. Operativsystemet ivaretar en page table for hver prosess som inneholder hvor de ulike sidene er plassert. Lars Vidar Magnusson () Forelesning i Operativsystemer 04.10.2011 October 4, 2011 11 / 20

Illustrasjon av paging Paging Illustrasjon av paging Under er det illustrert et sett med rammer som blir fylt opp av sidene i prosess A og B. Lars Vidar Magnusson () Forelesning i Operativsystemer 04.10.2011 October 4, 2011 12 / 20

Illustrasjon av paging... Paging Illustrasjon av paging... Under er det illustrert hva som skjer når ytterligere 2 prosesser blir lagt til og en blir fjernet. Lars Vidar Magnusson () Forelesning i Operativsystemer 04.10.2011 October 4, 2011 13 / 20

Illustrasjon av pagetables Paging Illustrasjon av pagetables Under er det illustrert hva som ligger i pagetable for de ulike prosessene i de forrige illustrasjonene. Lars Vidar Magnusson () Forelesning i Operativsystemer 04.10.2011 October 4, 2011 14 / 20

Oversikt Segmentation 1 Introduksjon 2 Memory partitioning 3 Paging 4 Segmentation Beskrivelse 5 Logisk adressering Lars Vidar Magnusson () Forelesning i Operativsystemer 04.10.2011 October 4, 2011 15 / 20

Segmentation Beskrivelse Beskrivelse Segmentation er en variant til paging og skiller seg i hovedsak ved at segmenter i motsetning til pages ikke trenger å være på samme størrelse. Det er en maksgrense på hvor stort et segment kan være. Mer komplisert oversetting fra logisk adresse til fysisk adresse. Minner litt om dynamisk partisjonering med de samme svakhetene ( external fragmentation). Lars Vidar Magnusson () Forelesning i Operativsystemer 04.10.2011 October 4, 2011 16 / 20

Oversikt Logisk adressering 1 Introduksjon 2 Memory partitioning 3 Paging 4 Segmentation 5 Logisk adressering Illustrasjon på logisk adressering Oversetting med paging Oversetting med segmentation Lars Vidar Magnusson () Forelesning i Operativsystemer 04.10.2011 October 4, 2011 17 / 20

Logisk adressering Illustrasjon på logisk adressering Illustrasjon på logisk adressering En illustrasjon over den logiske adressestrukturen i de tre ulike type minnehåndterere som er blitt diskutert. Lars Vidar Magnusson () Forelesning i Operativsystemer 04.10.2011 October 4, 2011 18 / 20

Oversetting med paging Logisk adressering Oversetting med paging En illustrasjon over oversettingen fra logisk til fysisk adresse med paging. Lars Vidar Magnusson () Forelesning i Operativsystemer 04.10.2011 October 4, 2011 19 / 20

Logisk adressering Oversetting med segmentation Oversetting med segmentation En illustrasjon over oversettingen fra logisk til fysisk adresse med segmentation. Lars Vidar Magnusson () Forelesning i Operativsystemer 04.10.2011 October 4, 2011 20 / 20