Fastweb

Cos'è e come funziona il buffering

Processore Internet #cpu #processore Cosa sono e come funzionano le CPU multi-thread Per rendere le CPU sempre più veloci e performanti sono stati ideati alcuni "stratagemmi" che permettono di compiere più calcoli contemporaneamente. E il multi-thread è uno di questi
ISCRIVITI alla Newsletter
Inserendo l'indirizzo email autorizzi Fastweb all'invio di newsletter editoriali. Se non desideri più ricevere la newsletter, è sufficiente cliccare sul link presente in calce alle mail per richiederne la cancellazione. Condizioni di utilizzo.
Cos'è e come funziona il buffering FASTWEB S.p.A.
Buffering
Web & Digital
Questa tecnica permette di salvare temporaneamente dei dati su una porzione di memoria (detta di buffer) così da velocizzare l'esecuzione di alcune operazioni informatiche

In campo informatico con il termine buffer (o data buffer) ci si riferisce alla regione di un supporto di memoria utilizzata per contenere temporaneamente dei dati mentre questi vengono trasferiti tra un “agente” (sia esso hardware o software) e l'altro del computer. Il buffer entra in gioco nel caso di due componenti hardware che lavorano a velocità differenti (il processore e una qualsiasi periferica, ad esempio) o quando due software con priorità differente (un processo del sistema operativo e un processo di un programma “secondario”, ad esempio) devono mettersi in comunicazione l'uno con l'altro. In casi come questi, il buffering (ovvero l'azione di caricare i dati nella memoria di buffer) permette di accorciare i tempi di esecuzione dell'operazione ed evitare che si perda del tempo prezioso. Proprio per questo, solitamente il buffer è ospitato dalla memoria RAM, che garantisce tempi di risposta e di accesso più veloci rispetto a quelle di un hard disk magnetico. Per evitare di andare “fuori giri”, il buffering è gestito tramite algoritmi FIFO (acronimo di “first in, first out”, traducibile con “primo ad entrare, primo ad uscire”) che permettono di adottare differenti tempistiche di scrittura e lettura dei dati all'interno della memoria.

 

La memoria RAM ospita solitamente il buffer

 

Buffer hardware e buffer software

Il buffer può essere implementato e gestito sia a livello hardware (prevedendo, all'interno del supporto di memoria, dei circuiti dedicati ad ospitare dei dati di buffering) sia a livello software (è il programma a individuare la porzione di memoria di buffer e gestire il flusso di dati in ingresso e uscita). Anche se nei moderni sistemi informatici è possibile scegliere entrambe le soluzioni, la gestione software è di gran lunga la più utilizzata: oltre a offrire un'implementazione e una gestione più semplice, infatti, garantisce performance migliori rispetto all'implementazione hardware del buffer.

Applicazioni

La memoria di buffer può trovare applicazione nelle operazioni più disparate.

Prima di tutto, è utilizzata nella comunicazione tra componenti informatiche che lavorano a velocità differenti (basta pensare, ad esempio, alla velocità di elaborazione del processore e la velocità di acquisizione delle informazioni di una tastiera o di uno scanner). Il buffering, infatti, impedisce che ci siano dei tempi morti nell'esecuzione di istruzioni e processi da parte del processore a causa della lentezza di qualche periferica di input e output. La stampa di un qualunque documento o la masterizzazione di un CD sono esempi paradigmatici del funzionamento del buffer. Il processore elabora i dati da stampare (o masterizzare) e li appoggia sulla memoria di buffering, potendo così continuare a lavorare su un altro processo senza doversi preoccupare dei tempi di avvio e di lavoro della stampante o del masterizzatore. La periferica, infatti, andrà a pescare i dati direttamente nella memoria di buffer, senza dover disturbare ulteriormente il processore.

 

Buffering

 

Nel networking, invece, il buffering sopperisce alla latenza tipica delle comunicazioni di rete. Nel caso in cui due nodi di una rete devono scambiare una grande quantità di dati, potrebbero essere costretti ad accedere alla memoria di buffer: ciò permette di “trattenere” i dati sino a quando il canale di comunicazione non sarà libero e disponibile per mettere in comunicazione i due dispositivi. Questa tecnica assume un'importanza fondamentale per gli hub di rete: nel caso in cui i dati da gestire e inviare eccedano le capacità della rete l'hub accederà alla memoria di buffer, che si occuperà di smaltire la coda non appena il canale di comunicazione prescelto sarà liberamente utilizzabile. Nel caso dello streaming di dati multimediali, invece, il buffering assolve a compiti differenti: l'applicativo web (ad esempio un client per la riproduzione di filmati) caricherà una parte dei dati prima che la riproduzione abbia inizio. In questo modo, anche se il flusso dei dati dovesse interrompersi per una frazione di secondi, la visione del filmato continuerà senza accusare problemi di alcun genere.

Copyright © CULTUR-E

Ti piace
questo
articolo?
Iscriviti alla nostra Newsletter

Riceverai settimanalmente le notizie più
interessanti sul mondo della tecnologia!

Inserendo l'indirizzo email autorizzi Fastweb all'invio di newsletter editoriali. Se non desideri più ricevere la newsletter, è sufficiente cliccare sul link presente in calce alle mail per richiederne la cancellazione. Condizioni di utilizzo.
TAGS: #buffering #cpu #streaming

© Fastweb SpA 2019 - P.IVA 12878470157
ChiudiChiudi Questo sito usa cookies di profilazione, propri e di terzi, per adeguare la pubblicità alle tue preferenze.
Clicca qui per maggiori informazioni o per conoscere come negare il consenso. Se chiudi questo banner o accedi ad altri elementi della pagina acconsenti all'uso dei cookies.