Memòria intermèdia

De Viquipèdia
Dreceres ràpides: navegació, cerca

En informàtica, una memòria intermèdia, també comunament coneguda pel terme anglès buffer, és un espai de memòria RAM o en disc utilitzada per emmagatzemar dades de forma temporal, especialment entre dos processos o maquinaris no treballant al mateix ritme.[1]

Així, les dades enviades a un perifèric (extern) són més sovint emmagatzemades en memòries intermèdies en espera de la seva tramesa efectiva per evitar els inconvenients causats a l'ordinador per la diferència de velocitat entre el microprocessador intern i els diferents perifèrics sovint lents. Igualment, les dades rebudes de l'exterior són més sovint emmagatzemades en «buffers» en espera del seu tractament per l'ordinador (per raons d'eficàcia, i també per evitar que una recepció de dades molt juntes faci que algunes, no tractades, es perdin).

Dispositius tals com els ports sèries, són més sovint equipats amb una cua de memòria intermèdia: dades enviades o rebudes per primera vegada es processen en primer lloc. Un programa massa ràpid pot omplir el «buffer»; es bloqueja, llavors, generalment, el procés emissor. Una recepció massa ràpida també pot bloquejar el «buffer», amb el risc de pèrdua de dades; també s'utilitza sovint un dispositiu de control de flux suggerint a l'emissor aturar la seva emissió quan el «buffer» està perillosament a prop del límit, i recomençar quan el nivell ha tornat a ser acceptable.

En certs llenguatges de programació com C, s'utilitzen habitualment «buffers» per regular l'entrada i sortida; per exemple, llegir o escriure en un fitxer. En concret, el «buffer» és una cadena de caràcters amb un índex o un punter designant la posició de lectura corrent. En el cas d'una escriptura, el «buffer» es copia totalment o parcialment en la sortida, aleshores s'actualitza i es repeteix el procés diverses vegades; en el cas d'una lectura, en cada pas, part de l'entrada és copiada en el «buffer» per ser utilitzada. Aquest sistema permet limitar les crides al sistema E/S, que són molt més lentes que altres tipus d'instruccions.

Referències[modifica | modifica el codi]

  1. «Glosario» (en castellà). Instituto Politécnico Nacional. [Consulta: 13-06-2010]. «es la zona de la memoria que almacena temporalmente datos durante la transferencia de la información, se usa normalmente para equilibrar las diferentes velocidades operativas de los componentes de la unidad central de procesamiento.»

Enllaços externs[modifica | modifica el codi]