Virtuel hukommelse i OS: Hvad er, Demand personsøgning, Fordele

Indholdsfortegnelse:

Anonim

Hvad er virtuel hukommelse?

Virtuel hukommelse er en lagermekanisme, der giver brugeren en illusion om at have en meget stor hovedhukommelse. Det gøres ved at behandle en del af den sekundære hukommelse som hovedhukommelsen. I virtuel hukommelse kan brugeren gemme processer med en større størrelse end den tilgængelige hovedhukommelse.

Derfor, i stedet for at indlæse en lang proces i hovedhukommelsen, indlæser operativsystemet de forskellige dele af mere end en proces i hovedhukommelsen. Virtuel hukommelse implementeres for det meste med efterspørgsel og efterspørselssegmentering.

I denne operativsystemvejledning lærer du:

  • Hvad er virtuel hukommelse?
  • Hvordan fungerer virtuel hukommelse?
  • Hvad er efterspørgselssøgning?
  • Typer af sideudskiftningsmetoder
  • Udskiftning af FIFO-side
  • Optimal algoritme
  • Udskiftning af LRU-side
  • Fordele ved virtuel hukommelse
  • Ulemper ved virtuel hukommelse

Hvorfor har du brug for virtuel hukommelse?

Her er grunde til at bruge virtuel hukommelse:

  • Når din computer ikke har plads i den fysiske hukommelse, skriver den, hvad den skal huske, til harddisken i en swap-fil som virtuel hukommelse.
  • Hvis en computer, der kører Windows, har brug for mere hukommelse / RAM, derefter installeret i systemet, bruger den en lille del af harddisken til dette formål.

Hvordan fungerer virtuel hukommelse?

I den moderne verden er virtuel hukommelse blevet ret almindelig i disse dage. Det bruges, når nogle sider skal indlæses i hovedhukommelsen til udførelse, og hukommelsen er ikke tilgængelig på de mange sider.

I så fald søger OS i stedet for at forhindre sider i at komme ind i hovedhukommelsen efter RAM-pladsen, der er mindst brugt i den seneste tid, eller som der ikke henvises til i den sekundære hukommelse for at gøre plads til de nye sider i hovedhukommelsen.

Lad os forstå styring af virtuel hukommelse ved hjælp af et eksempel.

For eksempel:

Lad os antage, at et operativsystem kræver 300 MB hukommelse for at gemme alle de kørende programmer. Der er dog i øjeblikket kun 50 MB tilgængelig fysisk hukommelse gemt på RAM.

  • OS opretter derefter 250 MB virtuel hukommelse og bruger et program kaldet Virtual Memory Manager (VMM) til at administrere de 250 MB.
  • Så i dette tilfælde opretter VMM en fil på harddisken, der er 250 MB i størrelse for at gemme ekstra krævet hukommelse.
  • OS fortsætter nu med at adressere hukommelse, da det betragter 300 MB reel hukommelse, der er gemt i RAM, selvom der kun er 50 MB plads til rådighed.
  • Det er VMM's opgave at administrere 300 MB hukommelse, selvom der kun er 50 MB lagerplads.

Hvad er efterspørgselssøgning?

En efterspørgselsmekanisme svarer meget til et personsøgningssystem med swapping, hvor processer, der er gemt i den sekundære hukommelse og sider, kun indlæses efter behov, ikke på forhånd.

Så når en kontekstskift opstår, kopierer OS aldrig nogen af ​​det gamle programs sider fra disken eller nogen af ​​det nye programs sider til hovedhukommelsen. I stedet begynder det at udføre det nye program efter indlæsning af den første side og henter programmets sider, som der henvises til.

Hvis programmet under programudførelsen henviser til en side, der muligvis ikke er tilgængelig i hovedhukommelsen, fordi den blev byttet, betragter processoren det som en ugyldig hukommelsesreference. Det skyldes, at sidefejl og overførsler sender kontrol tilbage fra programmet til operativsystemet, hvilket kræver at gemme siden tilbage i hukommelsen.

Typer af sideudskiftningsmetoder

Her er nogle vigtige siderstatningsmetoder

  • FIFO
  • Optimal algoritme
  • Udskiftning af LRU-side

Udskiftning af FIFO-side

FIFO (First-in-first-out) er en simpel implementeringsmetode. I denne metode vælger hukommelse siden til en erstatning, der har været i hukommelsens virtuelle adresse i længst tid.

Funktioner:

  • Hver gang en ny side indlæses, fjernes siden for nylig i hukommelsen. Så det er let at beslutte, hvilken side der skal fjernes, da dens identifikationsnummer altid er ved FIFO-stakken.
  • Den ældste side i hovedhukommelsen er en, der skal vælges til udskiftning først.

Optimal algoritme

Den optimale sideudskiftningsmetode vælger den side til en erstatning, hvor tiden til den næste reference er længst.

Funktioner:

  • Optimal algoritme resulterer i færrest antal sidefejl. Denne algoritme er vanskelig at implementere.
  • En optimal algoritmemetode til erstatning af sider har den laveste sidefejlrate af alle algoritmer. Denne algoritme findes, og som skal kaldes MIN eller OPT.
  • Udskift den side, der i modsætning til ikke skal bruges i længere tid. Det bruger kun det tidspunkt, hvor en side skal bruges.

Udskiftning af LRU-side

Den fulde form for LRU er den sidst anvendte side. Denne metode hjælper OS med at finde sideanvendelse over en kort periode. Denne algoritme skal implementeres ved at knytte en tæller til en lige side.

Hvordan virker det?

  • Side, som ikke har været brugt længe i hovedhukommelsen, er den, der vælges til udskiftning.
  • Let at implementere, hold en liste, udskift sider ved at se tilbage i tiden.

Funktioner:

  • LRU-udskiftningsmetoden har det højeste antal. Denne tæller kaldes også aldringsregistre, der specificerer deres alder, og hvor meget deres tilknyttede sider også skal henvises til.
  • Den side, der ikke har været brugt længe i hovedhukommelsen, er den, der skal vælges til udskiftning.
  • Det fører også en liste og erstatter sider ved at se tilbage i tiden.

Fejlfrekvens

Fejlfrekvens er en frekvens, hvormed et designet system eller komponent fejler. Det udtrykkes i fejl pr. Tidsenhed. Det er betegnet med det græske bogstav λ (lambda).

Fordele ved virtuel hukommelse

Her er fordele / fordele ved at bruge virtuel hukommelse:

  • Virtuel hukommelse hjælper med at vinde hastighed, når kun et bestemt segment af programmet er nødvendigt for udførelsen af ​​programmet.
  • Det er meget nyttigt at implementere et multiprogrammeringsmiljø.
  • Det giver dig mulighed for at køre flere applikationer på én gang.
  • Det hjælper dig med at tilpasse mange store programmer til mindre programmer.
  • Almindelige data eller kode kan deles mellem hukommelsen.
  • Processen kan blive endnu større end al den fysiske hukommelse.
  • Data / kode skal læses fra disken, når det er nødvendigt.
  • Koden kan placeres hvor som helst i fysisk hukommelse uden behov for flytning.
  • Flere processer skal opretholdes i hovedhukommelsen, hvilket øger den effektive brug af CPU.
  • Hver side er gemt på en disk, indtil den kræves, derefter fjernes den.
  • Det gør det muligt at køre flere applikationer på samme tid.
  • Der er ingen specifik grænse for graden af ​​multiprogrammering.
  • Store programmer skal skrives, da det tilgængelige virtuelle adresseområde er mere sammenlignet med fysisk hukommelse.

Ulemper ved virtuel hukommelse

Her er ulemper / ulemper ved at bruge virtuel hukommelse:

  • Applikationer kører muligvis langsommere, hvis systemet bruger virtuel hukommelse.
  • Det tager sandsynligvis mere tid at skifte mellem applikationer.
  • Tilbyder mindre plads på harddisken til din brug.
  • Det reducerer systemets stabilitet.
  • Det giver større applikationer mulighed for at køre i systemer, der ikke tilbyder nok fysisk RAM alene til at køre dem.
  • Det tilbyder ikke den samme ydelse som RAM.
  • Det påvirker systemets samlede ydeevne negativt.
  • Besæt lagerpladsen, som ellers kan bruges til langvarig datalagring.

Resumé:

  • Virtual Memory er en lagringsmekanisme, der giver brugeren en illusion om at have en meget stor hovedhukommelse.
  • Virtuel hukommelse er nødvendig, når din computer ikke har plads i den fysiske hukommelse
  • En efterspørgselsmekanisme svarer meget til et personsøgningssystem med swapping, hvor processer, der er gemt i den sekundære hukommelse og sider, kun indlæses efter behov, ikke på forhånd.
  • Vigtige sider erstatningsmetoder er 1) FIFO 2) Optimal algoritme 3) Udskiftning af LRU-side.
  • I FIFO (First-in-first-out) -metoden vælger hukommelse siden til en erstatning, der har været i hukommelsens virtuelle adresse i længst tid.
  • Den optimale sideudskiftningsmetode vælger den side til en erstatning, hvor tiden til den næste reference er længst.
  • LRU-metoden hjælper OS med at finde sideanvendelse over en kort periode.
  • Virtuel hukommelse hjælper med at vinde hastighed, når kun et bestemt segment af programmet er nødvendigt for udførelsen af ​​programmet.
  • Applikationer kører muligvis langsommere, hvis systemet bruger virtuel hukommelse.