Virtuelt minne i operativsystemet: Hva er, etterspørselssøking, fordeler

Innholdsfortegnelse:

Anonim

Hva er virtuelt minne?

Virtual Memory er en lagringsmekanisme som gir brukeren en illusjon om å ha et veldig stort hovedminne. Det gjøres ved å behandle en del av sekundærminnet som hovedminnet. I virtuelt minne kan brukeren lagre prosesser med større størrelse enn tilgjengelig hovedminne.

Derfor, i stedet for å laste inn en lang prosess i hovedminnet, laster operativsystemet de forskjellige delene av mer enn en prosess i hovedminnet. Virtuelt minne implementeres for det meste med etterspørselssøking og etterspørselssegmentering.

I denne opplæringen om operativsystem vil du lære:

  • Hva er virtuelt minne?
  • Hvordan fungerer virtuelt minne?
  • Hva er Demand Paging?
  • Typer av siderstatningsmetoder
  • Utskifting av FIFO-side
  • Optimal algoritme
  • Utskifting av LRU-side
  • Fordeler med virtuelt minne
  • Ulemper med virtuelt minne

Hvorfor trenger du virtuelt minne?

Her er grunner til å bruke virtuelt minne:

  • Når datamaskinen ikke har plass i det fysiske minnet, skriver den hva den trenger å huske på harddisken i en byttefil som virtuelt minne.
  • Hvis en datamaskin som kjører Windows trenger mer minne / RAM, og deretter installeres i systemet, bruker den en liten del av harddisken til dette formålet.

Hvordan fungerer virtuelt minne?

I den moderne verden har virtuelt minne blitt ganske vanlig i disse dager. Den brukes når noen sider må lastes inn i hovedminnet for utførelse, og minnet er ikke tilgjengelig på de mange sidene.

I stedet for å forhindre at sider kommer inn i hovedminnet, søker OS i så fall etter RAM-plass som er minst brukt i nyere tid, eller som ikke er referert til sekundærminnet for å gjøre plass til de nye sidene i hovedminnet.

La oss forstå virtuell minneadministrasjon ved hjelp av ett eksempel.

For eksempel:

La oss anta at et operativsystem krever 300 MB minne for å lagre alle programmer som kjører. Imidlertid er det for øyeblikket bare 50 MB tilgjengelig fysisk minne lagret på RAM.

  • OS vil deretter sette opp 250 MB virtuelt minne og bruke et program kalt Virtual Memory Manager (VMM) for å administrere de 250 MB.
  • Så i dette tilfellet vil VMM opprette en fil på harddisken som er 250 MB i størrelse for å lagre ekstra minne som kreves.
  • OS vil nå fortsette å adressere minne da det tar 300 MB ekte minne lagret i RAM, selv om bare 50 MB plass er tilgjengelig.
  • Det er VMMs jobb å administrere 300 MB minne selv om bare 50 MB ekte minne er tilgjengelig.

Hva er Demand Paging?

En etterspørselssøkemekanisme er veldig lik et personsøkingssystem med bytte der prosesser som er lagret i sekundærminnet og sidene, lastes inn bare etter behov, ikke på forhånd.

Så når det oppstår en kontekstbryter, kopierer operativsystemet aldri noen av det gamle programmets sider fra disken eller noen av sidene til det nye programmet til hovedminnet. I stedet begynner det å kjøre det nye programmet etter at den første siden er lastet inn og henter programmets sider, som det refereres til.

Hvis programmet refererer til en side som kanskje ikke er tilgjengelig i hovedminnet fordi den ble byttet under programutførelsen, anser prosessoren det som en ugyldig minnereferanse. Det er fordi sidefeil og overføringer sender kontroll tilbake fra programmet til operativsystemet, som krever å lagre siden tilbake i minnet.

Typer utskiftningsmetoder for sider

Her er noen viktige siderstatningsmetoder

  • FIFO
  • Optimal algoritme
  • Utskifting av LRU-side

Utskifting av FIFO-side

FIFO (First-in-first-out) er en enkel implementeringsmetode. I denne metoden velger minne siden for en erstatning som har vært i minnets virtuelle adresse lengst.

Egenskaper:

  • Når en ny side lastes inn, blir siden som nylig kommer i minnet fjernet. Så det er lett å bestemme hvilken side som må fjernes, da identifikasjonsnummeret alltid er i FIFO-stakken.
  • Den eldste siden i hovedminnet er en som skal velges for erstatning først.

Optimal algoritme

Den optimale sideskiftemetoden velger den siden for en erstatning der tiden til neste referanse er lengst.

Egenskaper:

  • Optimal algoritme resulterer i færrest antall sidefeil. Denne algoritmen er vanskelig å implementere.
  • En optimal algoritmemetode for erstatning av sider har den laveste sidefeilfrekvensen av alle algoritmer. Denne algoritmen eksisterer og som skal kalles MIN eller OPT.
  • Erstatt siden som i motsetning til å brukes over lengre tid. Den bruker bare tiden da en side må brukes.

Utskifting av LRU-side

Den fulle formen for LRU er siden med minst brukte. Denne metoden hjelper OS med å finne sidebruk over en kort periode. Denne algoritmen skal implementeres ved å knytte en teller til en jevn side.

Hvordan virker det?

  • Side, som ikke har blitt brukt lengst i hovedminnet, er den som skal velges for erstatning.
  • Enkel å implementere, føre en liste, erstatte sider ved å se tilbake i tid.

Egenskaper:

  • LRU-erstatningsmetoden har høyest antall. Denne telleren kalles også aldringsregistre, som spesifiserer alder og hvor mye de tilknyttede sidene også skal refereres til.
  • Siden som ikke har blitt brukt lengst i hovedminnet, er den som skal velges for erstatning.
  • Det fører også en liste og erstatter sider ved å se tilbake i tid.

Feilfrekvens

Feilfrekvens er en frekvens som et designet system eller komponent mislykkes med. Det uttrykkes i feil per tidsenhet. Det er betegnet med den greske bokstaven λ (lambda).

Fordeler med virtuelt minne

Her er fordeler / fordeler ved å bruke virtuelt minne:

  • Virtuelt minne hjelper til med å få fart når bare et bestemt segment av programmet er nødvendig for gjennomføring av programmet.
  • Det er veldig nyttig i å implementere et flerprogrammeringsmiljø.
  • Det lar deg kjøre flere applikasjoner samtidig.
  • Det hjelper deg å passe mange store programmer i mindre programmer.
  • Vanlige data eller kode kan deles mellom minnet.
  • Prosessen kan bli enda større enn alt det fysiske minnet.
  • Data / kode skal leses fra disken når det er nødvendig.
  • Koden kan plasseres hvor som helst i fysisk minne uten at det kreves flytting.
  • Flere prosesser bør opprettholdes i hovedminnet, noe som øker effektiv bruk av CPU.
  • Hver side er lagret på en disk til den kreves etter det, den vil bli fjernet.
  • Det gjør at flere applikasjoner kan kjøres samtidig.
  • Det er ingen spesifikk grense for graden av multiprogrammering.
  • Store programmer bør skrives, ettersom det er mer tilgjengelig virtuell adresseplass sammenlignet med fysisk minne.

Ulemper med virtuelt minne

Her er ulemper / ulemper ved å bruke virtuelt minne:

  • Applikasjoner kan kjøre tregere hvis systemet bruker virtuelt minne.
  • Det tar sannsynligvis mer tid å bytte mellom applikasjoner.
  • Tilbyr mindre plass på harddisken for bruk.
  • Det reduserer systemstabiliteten.
  • Det lar større applikasjoner kjøre i systemer som ikke tilbyr nok fysisk RAM alene til å kjøre dem.
  • Det gir ikke samme ytelse som RAM.
  • Det påvirker den generelle ytelsen til et system negativt.
  • Oppta lagringsplassen, som ellers kan brukes til langvarig datalagring.

Sammendrag:

  • Virtual Memory er en lagringsmekanisme som gir brukeren en illusjon om å ha et veldig stort hovedminne.
  • Virtuelt minne er nødvendig når datamaskinen din ikke har plass i det fysiske minnet
  • En etterspørselssøkemekanisme er veldig lik et personsøkingssystem med bytte der prosesser som er lagret i sekundærminnet og sidene, lastes inn bare etter behov, ikke på forhånd.
  • Viktige sider erstatningsmetoder er 1) FIFO 2) Optimal algoritme 3) Utskifting av LRU-side.
  • I FIFO (First-in-first-out) -metoden velger minne siden for en erstatning som har vært i minnets virtuelle adresse lengst.
  • Den optimale sideskiftemetoden velger den siden for en erstatning der tiden til neste referanse er lengst.
  • LRU-metoden hjelper OS med å finne sidebruk over en kort periode.
  • Virtuelt minne hjelper til med å få fart når bare et bestemt segment av programmet er nødvendig for gjennomføring av programmet.
  • Applikasjoner kan kjøre tregere hvis systemet bruker virtuelt minne.