? I Linux , är cache -minne ett område med random access memory ( RAM ) som används som en tillfällig lagringsplats för filer . Dess storlek växer och krymper efter behov , och det används flitigt av kärnan , eller kärna av operativsystemet , som ett sätt att minska disk , vilket resulterar i en betydande förbättring i prestanda . Bakgrund
Läsa och skriva från hårddiskar är långsam . Medan dataöverföringshastighet på den genomsnittliga hårddisken är flera hundra megabyte per sekund , är detta fortfarande mycket långsammare än RAM . Resultatet är att hårddiskar är förmodligen den viktigaste flaskhalsen i din dator , och prestanda blir lidande , oavsett hur snabb din centralenhet ( CPU ) eller minnet är .
Fördelar
eftersom minnet är så mycket snabbare än att läsa från en skiva , är det vettigt att använda det så mycket som möjligt . Ett sätt Linux gör detta är genom caching ofta använda filer i RAM . Nästa gång filen behövs, kan det hämtas direkt från minnet , utan att behöva läses från skivan . Linux använder bara oanvänt minne för detta , så att det inte stör det minne som används av dina program . Med detta synsätt
Ledning
, försiktighet måste vidtas för att hålla data i synk . Om en cachad fil ändras , måste det skrivas till disk i något skede . Typiskt Linux buffertar sådana skriver tills det finns en bit av data som ska skrivas , snarare än att göra massor av små skriver . Detta förbättrar prestanda i ditt system .
Storlek
Eftersom minnet är en ändlig storlek , är det oftast inte möjligt att cache allt . Beslut måste fattas om vilka filer till cachen och då för att ta bort gamla filer från cachen . Linux gör detta genom att upprätthålla ett register över hur ofta cachade filer som görs tillgängliga och när de senast användes . Om minnet blir kort , kommer Linux rensa mindre besökta filer från cachen istället för oftare nås ettor .
Inte unikt för Linux
Cache-minne är inte unikt för Linux men genomförs till viss del i de flesta moderna operativsystem . Användaren ofta inte vet om detaljerna i cacheminne och är bara medveten om minnet som används av applikationer . Detta kan göra det svårt för nya Linux-användare att tolka utdata från kommandon såsom " fri " och kan orsaka förvirring om hur mycket tillgängligt minne en användare har . Addera