Skip to main content

Hva er en sidetabell i datamaskinoperativsystemer?

De fleste datamaskiner har to former for minne, virtuelt minne og fysisk minne.Virtuelt minne, som navnet tilsier, er bare en konstruksjon som lar et program fungere som om all informasjonen som trengs for å kjøre, lagres på samme sted.Hvert stykke informasjon som er lagret i virtuelt minne tilsvarer en fysisk minneadresse.En sidetabell er datastrukturen datamaskinens operativsystem bruker for å holde oversikt over tilkoblingene mellom virtuelt minne og fysisk minne.Prosessen med å korrelere virtuelt minne med fysisk minne kalles kartlegging.

Konseptet om hvordan sidetabellen organiserer de to typene minne er best forstått ved hjelp av et kjent eksempel.Når en datamaskinbruker oppretter en spilleliste i et mediespillerprogram, kan han eller hun ta sanger fra flere forskjellige filer på datamaskinen.De fysiske filene blir ikke flyttet, men programmet vet hvor de skal få tilgang til hver sang etter tur.

Spillelisten er som det virtuelle minnet.Det er en sammenhengende informasjonsblokk som er lett å få tilgang til av programmet.De enkelte filene med de enkelte sangene i dem er som fysisk minne.De er lagret mange forskjellige steder i hele datamaskinen.Det fysiske minnet lagres i en sidetabell.

Et stykke maskinvare i datamaskinen mottar forespørsler fra virtuelt minne og får deretter tilgang til sidetabellen for å finne den fysiske minneplassen til dataene.Denne maskinvaren kalles enten Memory Management Unit (MMU) eller Dynamic Address Translation (DAT) -enheten.For å få datatilgang til å skje så raskt som mulig, lagrer MMU et begrenset antall ofte brukte kart i en tabell som kalles oversettelses -lookaside -bufferen.Oversettelsesbufferen fungerer som Favorites -fanen i en nettleser, og lar datamaskinen raskt hoppe til et ofte brukt minneplass.

Hvis den aktuelle adressen ikke er en av datamaskinen ber om ofte, vil MMU få tilgang til sidetabellen direkte.Den skanner gjennom tabellen til den finner den aktuelle adressen.Deretter returnerer den adressen til oversettelsesutsettelsesbufferen som programmet kan få tilgang til informasjonen fra.

Noen ganger kan datamaskinen ikke finne adressen på sidetabellen.Dette kan skje hvis det ikke eksisterer noe kart mellom det virtuelle minnet og det fysiske minnet.I dette tilfellet vil operativsystemet sende en melding til programmet som forteller at det skal slå seg av.Slå opp kan også mislykkes hvis den fysiske filen er flyttet, for eksempel hvis den er lagt på en sikkerhetskopi og fjernet fra systemet.