Wat betekent het met buffer?

Ik zie het woord “buffer” overal, maar ik kan niet begrijpen wat het precies is.

  1. Zou iemand alsjeblieft uitleggen wat buffer is in Layman’s taal ?
  2. Wanneer wordt het gebruikt?
  3. Hoe wordt het gebruikt?

Antwoord 1, Autoriteit 100%

Stel je voor dat je snoep uit een kom eet. Je neemt regelmatig één stuk. Om te voorkomen dat de kom eruit oproeft, kan iemand de kom opnieuw vullen voordat het leeg wordt, zodat wanneer je nog een stuk wilt nemen, er snoep in de kom is.

De kom handelt als een buffer tussen u en de snoepzak.

Als u een film online bekijkt, zal de webservice de komende 5 minuten of zo voortdurend in een buffer downloaden, op die manier hoe uw computer de film niet hoeft te downloaden terwijl u het kijkt (wat ertoe doet hangen).


Antwoord 2, Autoriteit 32%

De term “buffer” is een zeer generieke termijn en is er niet specifiek voor of CS. Het is een plek om iets tijdelijk op te slaan, om verschillen tussen inputsnelheid en uitgangssnelheid te beperken. Hoewel de producent sneller is dan de consument, kan de producent de uitvoer in de buffer blijven opslaan. Wanneer de consument erop komt, kan het lezen van de buffer. De buffer is er in het midden om de kloof te overbruggen.


Als u de definities op http://en.wiktionary.org/wiki/bufferIk denk dat je het idee krijgt.

Voor bewijs dat we echt deden “10 mijl te lopen dacht de sneeuw elke dag om naar school te gaan”, zie Tops-10 Monitorgesprekken Handleiding Volume 1 , sectie 11.9, “Buffered I / O” gebruiken, bij Bookmark 11-24. Lees niet of u onderworpen bent aan nachtmerries.


Antwoord 3, Autoriteit 7%

Een buffer is gewoon een stuk geheugen dat wordt gebruikt om gegevens op te slaan. In de meest algemene zin is het meestal een enkele klodder geheugen die in één bewerking wordt geladen en vervolgens wordt geleegd in een of meer, Perchik’s “candy bowl” -voorbeeld. In een C-programma heb je bijvoorbeeld:

#define BUFSIZE 1024
char buffer[BUFSIZE];
size_t len = ;
// ... later
while((len=read(STDIN, &buffer, BUFSIZE)) > 0)
    write(STDOUT, buffer, len);

… wat een minimale versie is van cp(1). Hier wordt de bufferarray gebruikt om de door read(2)gelezen gegevens op te slaan totdat ze zijn geschreven; dan wordt de buffer hergebruikt.

Er worden meer gecompliceerde bufferschema’s gebruikt, bijvoorbeeld een circulaire buffer, waarbij een eindig aantal buffers de een na de ander wordt gebruikt; zodra de buffers allemaal vol zijn, “wikkelt de index zich rond”, zodat de eerste opnieuw wordt gebruikt.


Antwoord 4, autoriteit 5%

Buffer betekent ‘tijdelijke opslag’. Buffers zijn belangrijk bij computers omdat onderling verbonden apparaten en systemen zelden ‘in sync’ met elkaar zijn, dus wanneer informatie van het ene systeem naar het andere wordt verzonden, moet het ergens wachten tot het ontvangende systeem gereed is.


Antwoord 5, autoriteit 2%

Het zou in elk geval afhangen van de context, aangezien er niet één definitie is – maar over het algemeen is een buffer een plaats om iets tijdelijk vast te houden. De beste real-world analogie die ik kan bedenken zou een wachtruimte zijn. Een eenvoudig voorbeeld in computergebruik is wanneer buffer verwijst naar een deel van het RAM-geheugen dat wordt gebruikt voor tijdelijke opslag van gegevens.


Antwoord 6

Buffer is een tijdelijke tijdelijke aanduiding (variabelen in veel programmeertalen) in het geheugen (ram/schijf) waarop gegevens kunnen worden gedumpt en vervolgens kan worden verwerkt.

De term ‘buffer’ is een erg algemene term en is niet specifiek voor IT of CS. Het is een plaats om iets tijdelijk op te slaan, om verschillen tussen invoersnelheid en uitvoersnelheid te verkleinen. Terwijl de producent sneller is dan de consument, kan de producent output in de buffer blijven opslaan. Wanneer de consument versnelt, kan deze uit de buffer lezen. De buffer is daar in het midden om de kloof te overbruggen.


Antwoord 7

Een buffer is een gegevensgebied dat wordt gedeeld door hardwareapparaten of programmaprocessen die met verschillende snelheden of met verschillende reeksen prioriteiten werken. Met de buffer kan elk apparaat of proces werken zonder door het andere te worden tegengehouden. Om ervoor te zorgen dat een buffer effectief is, moeten de grootte van de buffer en de algoritmen voor het verplaatsen van gegevens in en uit de buffer.

buffer is een “middelpuntsplaats” maar bestaat niet zozeer om de snelheid van een activiteit te versnellen, maar om de coördinatie van afzonderlijke activiteiten te ondersteunen.

Deze term wordt zowel in de programmering als in de hardware gebruikt. Bij het programmeren impliceert buffering soms de noodzaak om gegevens te screenen vanaf de uiteindelijke beoogde plaats, zodat ze kunnen worden bewerkt of anderszins verwerkt voordat ze naar een normaal bestand of database worden verplaatst.


Antwoord 8

Buffer is een tijdelijke tijdelijke aanduiding (variabelen in veel programmeertalen) in het geheugen (ram/schijf) waarop gegevens kunnen worden gedumpt en vervolgens kan worden verwerkt.

Er zijn veel voordelen van buffering, zoals het mogelijk maken dat dingen parallel gebeuren, de IO-prestaties verbeteren, enz.

Het heeft ook veel nadelen als het niet correct wordt gebruikt, zoals bufferoverloop, bufferonderloop, enz.

C Voorbeeld van karakterbuffer.

char *buffer1 = calloc(5, sizeof(char));
char *buffer2 = calloc(15, sizeof(char));

Other episodes