Minne sideveksling
Ferranti AtlasEdit
den første datamaskinen som støttet sideveksling var superdatamaskinen Atlas, utviklet i fellesskap av Ferranti, Universitetet I Manchester Og Plessey i 1963. Maskinen hadde et assosiativt (innholdsadresserbart) minne med en oppføring for hver 512 ordside. Veileder håndtert ikke-ekvivalens avbrudd og klarte overføring av sider mellom kjerne og tromme for å gi en ett-nivå butikken til programmer.
Microsoft WindowsEdit
Windows 3.X og Windows 9xEdit
Paging har vært en funksjon Av Microsoft Windows Siden Windows 3.0 I 1990. Windows 3.x oppretter en skjult fil med navnet 386SPART.PAR
eller WIN386.SWP
for bruk som byttefil. Det finnes vanligvis i rotkatalogen, men det kan vises andre steder (vanligvis I WINDOWS-katalogen). Størrelsen avhenger av hvor mye bytteplass systemet har (en innstilling valgt av brukeren Under Kontrollpanel → Forbedret Under “Virtuelt Minne”). Hvis brukeren flytter eller sletter denne filen, vises en blå skjerm neste Gang Windows startes, med feilmeldingen “den permanente byttefilen er skadet”. Brukeren blir bedt om å velge om filen skal slettes eller ikke (om den eksisterer eller ikke).
Windows 95, Windows 98 og Windows Me bruker en lignende fil, og innstillingene for den er plassert Under Kontrollpanel → System → Virtuelt Minne . Windows angir automatisk størrelsen på sidefilen til å starte ved 1,5× størrelsen på fysisk minne, og utvide opp til 3× fysisk minne om nødvendig. Hvis en bruker kjører minneintensive programmer på et system med lite fysisk minne, er det å foretrekke å manuelt sette disse størrelsene til en verdi høyere enn standard.
Windows NTEdit
filen som brukes til personsøking i Windows NT-familien, er pagefile.sys
. Standardplasseringen til sidefilen er i rotkatalogen på partisjonen Der Windows er installert. Windows kan konfigureres til å bruke ledig plass på alle tilgjengelige stasjoner for sidefiler. Det kreves imidlertid for oppstartspartisjonen (dvs., stasjonen som inneholder Windows-katalogen) for å ha en sidefil på den hvis systemet er konfigurert til å skrive enten kjernen eller full minnedump etter En Blå Skjerm Av Død. Windows bruker personsøkingsfilen som midlertidig lagring for minnedumpen. Når systemet startes på nytt, kopierer Windows minnedumpen fra sidefilen til en egen fil og frigjør plassen som ble brukt i sidefilen.
FragmentationEdit
i standardkonfigurasjonen Av Windows kan sidefilen utvides utover den første tildelingen når det er nødvendig. Hvis dette skjer gradvis, kan det bli sterkt fragmentert som potensielt kan forårsake ytelsesproblemer. Det vanlige rådet for å unngå dette er å sette en enkelt” låst ” side filstørrelse slik At Windows ikke vil utvide den. Sidefilen utvides imidlertid bare når den er fylt, som i standardkonfigurasjonen er 150% av den totale mengden fysisk minne. Dermed må den totale etterspørselen etter sidefil-støttet virtuelt minne overstige 250% av datamaskinens fysiske minne før sidefilen utvides.
fragmenteringen av sidefilen som oppstår når den utvides, er midlertidig. Så snart de utvidede områdene ikke lenger er i bruk (ved neste omstart, om ikke før) frigjøres de ekstra diskplassallokeringene, og sidefilen er tilbake til sin opprinnelige tilstand.
Låsing av en sidefil kan være problematisk hvis Et Windows-program ber om mer minne enn den totale størrelsen på det fysiske minnet og sidefilen, noe som fører til mislykkede forespørsler om å tildele minne som kan føre til at programmer og systemprosesser mislykkes. Også sidefilen leses sjelden eller skrives i sekvensiell rekkefølge, så ytelsesfordelen ved å ha en helt sekvensiell sidefil er minimal. Imidlertid tillater en stor sidefil generelt bruk av minnetunge applikasjoner, uten straff i tillegg til å bruke mer diskplass. Selv om en fragmentert sidefil kanskje ikke er et problem i seg selv, vil fragmentering av en sidefil med variabel størrelse over tid skape flere fragmenterte blokker på stasjonen, noe som fører til at andre filer blir fragmenterte. Av denne grunn er en fast størrelse sammenhengende sidefil bedre, forutsatt at størrelsen tildelt er stor nok til å imøtekomme behovene til alle applikasjoner.
den nødvendige diskplassen kan enkelt tildeles på systemer med nyere spesifikasjoner (dvs. et system med 3 GB minne som har en 6 GB sidefil med fast størrelse på en 750 GB diskstasjon, eller et system med 6 GB minne og en 16 GB sidefil med fast størrelse og 2 TB diskplass). I begge eksemplene bruker systemet omtrent 0,8% av diskplassen med sidefilen pre-utvidet til maksimum.
Defragmentering av sidefilen anbefales også av og til for å forbedre ytelsen når Et Windows-system kronisk bruker mye mer minne enn det totale fysiske minnet. Denne visningen ignorerer det faktum at sidefilen, bortsett fra de midlertidige resultatene av utvidelsen, ikke blir fragmentert over tid. Generelt er ytelsesproblemer knyttet til sidefiltilgang mye mer effektivt behandlet ved å legge til mer fysisk minne.
Unix og Unix-lignende systemrediger
Unix-systemer, Og Andre Unix-lignende operativsystemer, bruker begrepet “swap” for å beskrive handlingen om å erstatte diskplass for RAM når fysisk RAM er full. I noen av disse systemene er det vanlig å dedikere en hel partisjon på en harddisk til å bytte. Disse partisjonene kalles byttepartisjoner. Mange systemer har en hel harddisk dedikert til bytte, skilt fra datastasjonen( e), som bare inneholder en byttepartisjon. En harddisk dedikert til bytte kalles en “swap drive” eller en “scratch drive” eller en “scratch disk”. Noen av disse systemene støtter bare bytte til en swap-partisjon; andre støtter også bytte til filer.
LinuxEdit
Linux-kjernen støtter et nesten ubegrenset antall bytte backends (enheter eller filer), og støtter også tildeling av backend prioriteringer. Når kjernen bytter sider ut av fysisk minne, bruker den høyest prioriterte backend med ledig ledig plass. Hvis flere swap-backends er tildelt samme prioritet, brukes de på en rund robin-måte (noe som ligner RAID 0 – lagringsoppsett), noe som gir forbedret ytelse så lenge de underliggende enhetene kan nås effektivt parallelt.
Bytt filer og partisjonerrediger
bytt filer i versjon 2.6 fra sluttbrukerperspektivet.x og senere Av Linux-kjernen er nesten like raske som byttepartisjoner; begrensningen er at byttefiler skal tildeles sammenhengende på deres underliggende filsystemer. For å øke ytelsen til swap-filer, holder kjernen et kart over hvor de er plassert på underliggende enheter og får tilgang til dem direkte, og dermed omgå cachen og unngå filsystem overhead. Uansett, Red Hat anbefaler swap partisjoner som skal brukes. Når du bor på Harddisker, som er roterende magnetiske medieenheter, er en fordel ved å bruke swap-partisjoner muligheten til å plassere dem på sammenhengende HDD-områder som gir høyere datagjennomstrømning eller raskere søketid. Den administrative fleksibiliteten til swap-filer kan imidlertid oppveie visse fordeler med swap-partisjoner. For eksempel kan en swap-fil plasseres på et montert filsystem, kan settes til ønsket størrelse, og kan legges til eller endres etter behov. Byttepartisjoner er ikke så fleksible; de kan ikke forstørres uten å bruke partisjonerings-eller volumstyringsverktøy, som introduserer ulike kompleksiteter og potensielle nedetid.
SwappinessEdit
Swappiness er En Linux-kjerneparameter som styrer den relative vekten som er gitt for å bytte ut av runtime-minne, i motsetning til å slippe sider fra systemsidebufferen, når en minnetildelingsforespørsel ikke kan oppfylles fra ledig minne. Swappiness kan settes til verdier mellom 0 og 200 (inkludert). En lav verdi får kjernen til å foretrekke å kaste ut sider fra sidebufferen, mens en høyere verdi får kjernen til å foretrekke å bytte ut “kalde” minnesider. Standardverdien er 60
; hvis du setter den høyere, kan det føre til høy ventetid hvis kalde sider må byttes inn igjen (når du samhandler med et program som for eksempel hadde vært inaktiv), mens du setter den lavere (til og med 0), kan det føre til høy ventetid når filer som har blitt kastet ut fra hurtigbufferen, må leses igjen, men vil gjøre interaktive programmer mer responsive, da de vil være mindre sannsynlig å måtte bytte tilbake kalde sider. Bytte kan også redusere Hdd-Er ytterligere fordi det innebærer mange tilfeldige skriver, Mens Ssd-er ikke har dette problemet. Sikkert standardverdiene fungerer bra i de fleste arbeidsbelastninger, men stasjonære og interaktive systemer for enhver forventet oppgave vil kanskje redusere innstillingen mens batchbehandling og mindre interaktive systemer vil kanskje øke den.
Bytt deathEdit
når systemminnet er svært utilstrekkelig for de nåværende oppgavene, og en stor del av minneaktiviteten går gjennom en langsom bytte, kan systemet bli praktisk talt ute av stand til å utføre noen oppgave, selv om CPUEN er inaktiv. Når hver prosess venter på bytte, anses systemet å være i byttedød.
Bytte død kan skje på grunn av feil konfigurert minne overcommitment.
den opprinnelige beskrivelsen av” bytte til døden ” – problemet gjelder X-serveren. Hvis kode eller data som Brukes Av x-serveren til å svare på et tastetrykk, ikke er i hovedminnet, så hvis brukeren skriver inn et tastetrykk, vil serveren ta en eller flere sidefeil, og krever at disse sidene skal leses fra swap før tastetrykket kan behandles, og senker svaret på det. Hvis disse sidene ikke forblir i minnet, må de bli ugyldig igjen for å håndtere neste tastetrykk, noe som gjør at systemet praktisk talt ikke svarer selv om det faktisk utfører andre oppgaver normalt.
macOSEdit
macOS bruker flere byttefiler. Standardinstallasjonen (Og Apple-anbefalt) plasserer dem på rotpartisjonen, selv om det er mulig å plassere dem i stedet på en egen partisjon eller enhet.
AmigaOS 4Edit
AmigaOS 4.0 introduserte et nytt system for tildeling AV RAM og defragmentering av fysisk minne. Den bruker fortsatt flat delt adresseområde som ikke kan defragmenteres. Den er basert på slab allokering metode og paging minne som tillater bytte. Paging ble implementert I AmigaOS 4.1, men kan låse opp systemet hvis alt fysisk minne er brukt opp. Swap minne kan aktiveres og deaktiveres når som helst slik at brukeren kan velge å bruke bare fysisk RAM.
Leave a Reply