Jag har sökt men fick ingen exakt skillnad mellan RAM och buffert. Om båda används för tillfällig lagring, varför de heter olika medan båda har samma egenskap?
Svar
A buffert används vanligtvis endast som tillfällig lagring medan något sänds eller läses. Du kan till exempel läsa data från ett långsamt externt lagringsmedium (t.ex. en CD) och bearbeta det kontinuerligt. I den här inställningen , den första processen läser bitar av data från mediet och skriver det till bufferten på begäran, medan den senare läser från bufferten som om den läser direkt från lagring. Detta undviker blockeringar genom att den senare processen inte behöver exklusiv åtkomst till mediet.
Däremot är RAM helt enkelt det som används som huvudminne för processerna i en dator för allmänt ändamål. Det kan finnas flera buffertar inte bara i RAM utan även i andra minnesenheter. Att säga att RAM används för ”tillfällig lagring” kan vara ganska vilseledande eftersom ”tillfälligt” här faktiskt betyder ”tills processen att använda den är inaktiv eller utrotad” (och inte ”förrän data inte längre behövs”).
Sammanfattningsvis är en buffert ett abstrakt begrepp (och existerar bara på mjukvarunivå). RAM är en konkret typ av lagringsteknik.
Svar
SSD-enheter används ofta som buffertar. Du skulle inte kalla ett SSD-minne, eller hur?
RAM är Random Access Memory. En buffert är en datastruktur som används för att optimera dataflödet.
Du gör ett kategorifel. Du jämför saker som inte kan jämföras. Det är som att fråga varför din näsa inte heter Usain Bolt när de båda kör.
Svar
Buffert är ett koncept. Det är en struktur som används för att hålla data för att hålla den ”närmare” medan du bearbetar den igen. Som att buffra en YouTube-video. Många typer av minnen används som buffertar. RAM är verkligen bra för att hålla buffertar, men för stora data kan du också buffra data på en hårddisk eller en SSD.
Buffertar används huvudsakligen för att hålla data som är dyrt att läsa och skriva (kostsamt i termer av tid eller bandbredd osv.), så du vill hellre bara läsa en bit av det en gång, arbeta med det , skriv sedan tillbaka det när du är klar. Och RAM är ett bra ställe att göra det, om inte dina data är enorma. Som du vet går nuvarande RAM från hundratals MiB (smartphones) till dussintals GiB (high end PC).
RAM är den specifika minnestypen. Massor av programvara använder den för att hålla buffertar, men också för att hålla sin egen kod etc.