Buffering vs Caching
Generelt er buffering processen med at opbevare data i et område af hukommelsen, indtil dataene transporteres fra et sted til et andet. Buffer bruges ved flytning af data mellem processer i computeren og i telekommunikation. Typisk er buffering påkrævet, når der er forskel mellem de hastigheder, hvormed data modtages og data behandles. Caching er processen med at gemme data på et separat sted (kaldet cachen), så de kan tilgås hurtigere, hvis de samme data anmodes om i fremtiden. Når der anmodes om nogle data, tjekkes cachen først for at se, om den indeholder disse data. Hvis data allerede er i cachen, kan anmodningen opfyldes hurtigere.
Hvad er buffering?
Buffering er processen med at opbevare data i et område af hukommelsen, indtil dataene transporteres fra et sted til et andet. Denne region af hukommelsen, der indeholder dataene, kaldes en buffer. Buffer bruges, når der er forskel mellem den hastighed, hvormed data modtages, og den hastighed, hvormed dataene behandles. Selvom buffering kan implementeres ved hjælp af hardwarebuffere eller softwarebuffere, er softwarebufferne mest udbredt. Buffer er meget brugt i printerspooler, online videostreaming og telekommunikation (når der overføres data fra en enhed til en anden). Det meste af tiden udføres buffering ved at skrive data ind i en kø med én hastighed og læse data fra køen med en anden hastighed.
Hvad er cachelagring?
Caching er processen med at gemme data på et separat sted (kaldet cachen), så de kan tilgås hurtigere, hvis de samme data anmodes om i fremtiden. Når der anmodes om nogle data, tjekkes cachen først for at se, om den indeholder disse data. Hvis data allerede er i cachen, kaldes det et cache-hit. Så kan dataene hentes fra cachen, hvilket er meget hurtigere end at hente dem fra den oprindelige lagerplacering. Hvis de anmodede data ikke er i cachen, kaldes det en cachemiss. Derefter skal dataene hentes fra den oprindelige lagerplads, hvilket ville tage længere tid. Caching bruges forskellige steder. I CPU'en bruges caching til at forbedre ydeevnen ved at reducere den tid, det tager at hente data fra hovedhukommelsen. I webbrowsere bruges webcaching til at gemme svar fra tidligere besøg på websteder for at gøre de næste besøg hurtigere.
Hvad er forskellen mellem buffering og cachelagring?
Selv om både caching og buffering involverer lagring af data midlertidigt et andet sted, har de nogle vigtige forskelle. Caching udføres for at reducere adgangstiden til at hente data fra en langsommere lagerenhed. Det er baseret på princippet om, at de samme data vil blive tilgået flere gange, så lagring af dem i cache vil reducere adgangstiden betydeligt. Bufring bruges hovedsageligt til at overvinde forskellen mellem de hastigheder, hvormed data modtages, og data behandles af en enhed.