Om du har en dator med en enorm mängd RAM, skulle du få några fördelar med att inaktivera sidfilen eller ska du bara lämna tillräckligt bra? Dagens SuperUser Q&A diskuterar ämnet för att tillfredsställa läsarens nyfikenhet.
Dagens Fråga & Svar-session kommer till oss med tillstånd av SuperUser - en underavdelning av Stack Exchange, en community-driven gruppering av Q & A-webbplatser.
Foto med tillstånd av Collin Anderson (Flickr) .
Frågan
SuperUser-läsaren user1306322 vill veta om det finns några fördelar med att inaktivera sidfilen om en persons dator har mycket RAM:
Tänk dig att jag har massor av RAM, till exempel 64 GB. Det är mycket, även för speldatorer. Nu är standardplatsen för en sidfil i Windows på huvudoperativsystemets enhet (vare sig det är hårddisk eller SSD), vilket är snabbare i allmänhet men fortfarande inte lika snabbt som RAM.
Något säger mig att om du inaktiverar sidfilen på hårddisken eller skapar en virtuell RAM-enhet och låter sidfilen vara där kan Windows flytta hela sitt virtuella minne till RAM och öka systemets prestanda. Men jag är inte särskilt kunnig inom det området, så det kanske inte är sant alls.
Jag försökte båda, men jag kunde inte analysera resultaten för att nå en klar slutsats med min kunskapsnivå i minnesrelaterade frågor. Skulle detta fungera? Om inte, varför då?
Skulle user1306322 få några fördelar med att inaktivera sidfilen?
Svaret
SuperUser-bidragsgivaren David Schwartz har svaret för oss:
Oavsett hur mycket RAM du har, vill du att systemet ska kunna använda det effektivt. Att inte ha en sidfil alls tvingar operativsystemet att använda RAM ineffektivt av två skäl:
- För det första kan det inte göra att sidor kasseras, även om de inte har öppnats eller ändrats på mycket lång tid, vilket tvingar diskcachen att bli mindre.
- För det andra måste den reservera fysiskt RAM-minne för att tilldela allokeringar som det är mycket osannolikt att det någonsin kräver (till exempel en privat, modifierbar filmappning), vilket leder till ett fall där du kan ha gott om gratis fysiskt RAM-minne och ändå tilldelningar vägras att undvik överförpliktelse.
Tänk till exempel om ett program gör en skrivbar, privat minneskartläggning av en 4 GB-fil. Operativsystemet måste reservera 4 GB RAM-minne för den här kartläggningen eftersom programmet tänkbart kan modifiera varje byte och det inte finns någon annan plats än RAM att lagra den. Så från början är 4 GB RAM i grunden slösat bort (det kan användas för att cache rena disksidor, men det handlar om det).
Du måste ha en sidfil om du vill få ut mesta möjliga av ditt RAM-minne, även om den aldrig används. Det fungerar som en försäkring som gör det möjligt för operativsystemet att faktiskt använda det RAM-minne det har, snarare än att behöva reservera det för möjligheter som är extremt osannolika.
De som utformade ditt operativsystems beteende är inte dårar. Att ha en sidfil ger operativsystemet fler val, och det kommer inte att göra dåliga.
Det är ingen mening att försöka placera en sidfil i RAM-minnet. Och om du har mycket RAM är det mycket osannolikt att sidfilen ska användas (den behöver bara vara där), så det spelar ingen roll hur snabbt enheten är på.
Se till att kolla in den livliga diskussionstråden om ämnet via länken nedan!
Har du något att lägga till förklaringen? Ljud av i kommentarerna. Vill du läsa fler svar från andra tekniskt kunniga Stack Exchange-användare? Kolla in hela diskussionstråden här .