? Buffring är ett programmeringsspråk metod för temporär lagring av data. Vanligtvis en buffert ger en försening eller ett väntande tillstånd för data som är avsedda att användas av ett annat program . Program skrivna för olika typer av applikationer fungerar olika konventioner över användningen av buffertar . Data Exchange
Information skickas från ett program till ett annat kan inte alltid överföras direkt . Den mottagande programmet kan vara upptagen , och väntar på att svara på en begäran skulle orsaka det anropande programmet att hänga . Program som regelbundet kommunicerar med varandra upprätta en " pipeline ", vilket är en buffert för kommandon. I detta fall bufferten är en fil. Den anropande programmet skickar begäran ner ledningen , skriver data till filen och sedan blir vidare med andra arbetsuppgifter , regelbundet kontrollera en annan buffert för att se om det andra programmet har uppfyllt begäran och skrivit ut resultaten .
nätverksbuffertar
buffring saktar ner överföringen av data över nätverk och kan orsaka problem för interaktiva applikationer som Internet-telefoni . Fördröjning på Internet telefonsamtal kan göra konversationen omöjlig , men ingen av parterna har rätt att lösa problemet . Förseningen orsakas av buffertar på många routrar mellan de två ändpunkterna i förbindelsen . Routrar buffertdata vänta på sin utgående anslutning blir tillgänglig . Nätverk överbelastning orsakar nätverk buffring . Nätverk gateways buffra även data så att den kan inspekteras för obehöriga data eller virus . Det kontrollprogrammet kan inte arbeta så snabbt som hastigheten av inkommande data , säkerhetskopierar så uppgifter upp i en buffert tills Packet Inspection når slutet av sändningen . Många emot ansökningar buffertdata anländer från nätet eftersom uppgifterna kan komma i ordning .
Multimedia Buffer
Buffertar inte bara används av program för att skicka data ut , men program också läsa inkommande data i buffertar . Exemplet som de flesta webbanvändare erfarenhet är en mediaspelare buffring strömmas innehållet . Video spelare buffert innehåll som den kommer. De kan börja spela innehåll innan alla filer har anlänt . Men om spelaren körs i en snabbare hastighet än nätverksanslutningen , kommer det att vänta med att visa filen förrän den har tillräckligt med innehåll för att hålla den igång medan resten av filen anländer . Ofta uppskattning av hur stor del som behövs i bufferten är felaktig och spelaren startar visar video eller spela ljud , bara att pausa halvvägs igenom eftersom det har tagit slut av innehåll att visa .
Buffer Overflow
flesta program läser data i segment . Ansökningar kan bara arbeta med filer som skrivits i ett välbekant format . Detta gör det möjligt för dem att lita på att anlända data kommer att presenteras vid program maximal storlek . Om programmet ges en större bit av data än minnet struktur den har förberett för att hålla det , uppstår ett fel . I dessa fall kommer programmet att krascha och rapportera en " buffer overflow . " Detta innebär att det inte kan hantera så mycket data i sin buffert .