Memòria cau

De la Viquipèdia, l'enciclopèdia lliure.
Saltar a la navegació Saltar a la cerca
Nota de desambiguació.svg Desambiguació : si busqueu altres significats, consulteu Memòria cau (desambiguació) .

El terme memòria cau, en informàtica , indica una àrea de memòria extremadament ràpida però normalment d’un ordre de magnitud de capacitat baix. El seu propòsit és accelerar l' execució dels programes .

Un exemple és la memòria cau , que s’utilitza per recuperar ràpidament dades i programes que s’espera utilitzar a curt termini.

Etimologia i pronunciació

"Cache" és una adaptació en anglès del terme francès "caché" (en italià 'hidden'). Se sol pronunciar / ˈkaʃ / (influït per l' anglès / ˈkæʃ / ). L'origen del nom deriva del fet que la memòria cau i el seu ús són "transparents" per al programador, a la pràctica "ocults" perquè són administrats directament pel sistema operatiu o pel maquinari .

Descripció

Una memòria cau està associada a la memòria principal, on resideixen les dades. Normalment té una capacitat menor que la memòria principal, però el seu ús és més convenient pel que fa al temps d’accés i / o càrrega del sistema.

Quan es requereix accés a les dades, primer es busca una còpia a la memòria cau: si està present i és vàlida, s’utilitza aquesta còpia; en cas contrari, les dades es recuperen de la memòria principal i s’emmagatzemen a la memòria cau, per si es poden utilitzar més endavant.

La memòria principal pot ser maquinari com una memòria RAM (memòria principal del processador) o un disc dur , però també una base de dades distribuïda complexa, com el DNS o la web . En aquests casos, la memòria principal es pot canviar sense passar per la memòria cau, cosa que comporta problemes de coherència entre les dades "originals" i les dades de la memòria cau, una possible desalineació.

En alguns casos, és possible validar les dades contingudes a la memòria cau consultant la memòria principal per veure si encara està sincronitzada i correcta. Aquesta és la tasca que fan els servidors proxy al web, per exemple: pregunten al servidor HTTP si la pàgina que posseeix s’ha modificat després d’haver estat emmagatzemada i, si no, eviten transferir-la i tornar-la a proposar directament. al client .

En altres casos, s’utilitza un mecanisme de caducitat temporal per a les dades emmagatzemades i, fins que caduquen les dades de la memòria cau, s’utilitza, fins i tot si no coincideix amb el que hi ha a la memòria principal. Aquest és el mecanisme adoptat pel DNS.

Una memòria cau redueix la càrrega de sol·licitud que s'ha d'esborrar de la memòria principal i de l'enllaç entre aquesta i l'usuari de dades. Això també pot ajudar a millorar el rendiment del sistema. Per exemple, penseu en un servidor intermediari utilitzat per molts usuaris: quan un usuari sol·licita una pàgina que ja havia estat sol·licitada per un altre, el servidor intermediari podrà respondre sense haver de connectar-se al lloc original i, per tant, evitar carregar-ne tant l’original lloc i la xarxa, millorant així el rendiment del sistema fins i tot per a les sol·licituds que cal reenviar als llocs originals.

Una memòria cau utilitza un algorisme per decidir quines dades conservar i quines descartar, tenint en compte les pàgines utilitzades més recentment, la contigüitat de les pàgines o diversos altres factors.

Una memòria cau pot indexar les dades emmagatzemades segons la seva adreça (un bloc de memòria o dades del disc dur) o el seu "nom" (memòria cau associativa, com ara una pàgina web o un nom DNS ).

En alguns casos, la memòria cau també admet la modificació de dades. Això és senzill d'implementar si la memòria cau és l'únic camí d'accés a la memòria principal, com en el cas de la memòria cau de memòria RAM present als processadors: la memòria cau "accepta" una operació d'escriptura a la memòria RAM, cosa que permet al processador continuar processant , presenta immediatament les dades actualitzades al processador si demana que es torni a llegir i s’encarrega d’escriure-les a la memòria RAM abans d’esborrar la pàgina. D'aquesta manera, si les dades de la memòria són modificades amb freqüència pel processador, és possible mantenir els canvis a la memòria cau i evitar transferències contínues a la memòria RAM (vegeu la coherència de la memòria cau ).

Tots els tipus de memòries cau emmagatzemades a memòria no volàtil es poden eliminar fàcilment, ja sigui actuant directament a les carpetes relatives o utilitzant les ordres del sistema operatiu o de l’aplicació o mitjançant un dels molts netejadors de tercers [1] com, per exemple, per exemple, CCleaner .

Tipologia

El terme memòria cau pren diferents significats en funció del terme al qual s’associa i en funció del context. Parlem, doncs, de: memòria cau de memòria , memòria cau de disc, TLB - Translation Lookaside Buffer (memòria cau de taula de pàgines, memòria cau de predicció de sucursal, taula d’història de sucursal, memòria cau d’adreça de destinació de sucursal, memòria cau de traça), que són memòries físiques.

Altres són memòries gestionades pel programari per emmagatzemar dades temporals en espais MM reservats, com ara: memòria cau de disc, memòria cau de pàgines, memòria cau de sistema, memòria cau d’aplicacions, memòria cau de base de dades , memòria web , DNS , memòria cau del navegador, memòria cau del router, etc.

Alguns d'aquests últims només són " buffers " , és a dir, memòries no associatives amb accés seqüencial (cadenes de dades) en comparació amb accessos aleatoris mitjançant associacions d'adreces de memòria cau de memòries cau clàssiques.

Memòria cau

Icona de la lupa mgx2.svg El mateix tema en detall: memòria cau .

S'utilitza per accelerar l'accés a les ubicacions de memòria RAM més freqüentment utilitzades i, sobretot, en sistemes multiprocessador amb memòria compartida (compartida), per reduir el trànsit del bus del sistema i de la memòria principal, que és un dels principals colls d'ampolla d'aquests sistemes. Es tracta d’una petita quantitat de memòria ràpida instal·lada directament al processador o a la seva proximitat. Aquesta memòria s’utilitza per emmagatzemar les instruccions d’un programa i les dades sobre qui s’ha d’operar. S'utilitza la memòria tipus SRAM (enfront d'una memòria DRAM principal) a causa de la seva velocitat d'accés més alta. Històricament, aquesta va ser la primera memòria cau utilitzada. Aquesta memòria era (i encara es diu) "memòria cau" o "memòria cau de memòria" o simplement " memòria cau ". De vegades, però molt poques vegades, també s'anomena " memòria cau de la CPU " (vegeu la nota de la memòria cau ). La resta de memòries cau, en canvi, que emmagatzemen altres tipus de dades, sempre es defineixen associant la seva funció al terme " memòria cau ".

Memòria cau de pàgines

Consisteix a tenir una part de la memòria RAM que utilitza el sistema operatiu en què es copien les dades que s’utilitzen actualment del disc dur. En aquest cas, l’accés a la RAM és més ràpid que l’accés al disc. Com que la memòria disponible és generalment limitada, el sistema operatiu intenta mantenir una pàgina a la memòria tant com sigui possible mantenint una taula de pàgines que no s’utilitzen actualment però que s’han fet anteriorment. Quan s'hagi de carregar una pàgina nova, se sobreescriurà la més antiga que encara no s'utilitza.

Memòria cau de disc

Consisteix a tenir un disc dur que tingui una part de RAM al seu interior, on es puguin carregar els sectors del disc lògicament contigus al requerit. Quan s’accedeix al disc en mode de lectura, si a la memòria cau hi ha les dades necessàries, s’evita el moviment del cap de lectura del disc, accelerant la recuperació de la informació i ajudant a reduir el desgast del disc.

Memòria cau de DNS

Icona de la lupa mgx2.svg El mateix tema en detall: Sistema de noms de domini § Memòria cau .

És un servidor DNS que no té informació autoritzada, però que pot sol·licitar-la als servidors autoritzats i emmagatzemar les respostes. Els servidors DNS que fan servir els usuaris d’ Internet solen ser servidors de memòria cau. El DNS utilitza un mecanisme de caducitat pel qual cada registre recuperat d’un servidor autoritzat és vàlid durant un temps determinat, després del qual s’ha de descartar.

Memòria cau web

Icona de la lupa mgx2.svg El mateix tema en detall: memòria cau web .

És una part del disc dur dedicada per un servidor proxy http, o pel navegador d’ un usuari, per desar les pàgines mentre es carreguen durant la navegació, que per tant es poden tornar a proposar sense haver de tornar a demanar-ho al sistema remot. En aquest cas, el coll d'ampolla que voleu eliminar és el de banda ampla. Tot i això, l'operació de memòria cau d'una pàgina no sempre és legítima: penseu, per exemple, en quan feu una operació de banca en línia. En general, és la mateixa pàgina web que s’envia juntament amb instruccions sobre el seu possible ús en una memòria cau; en alguns casos, podeu forçar el navegador a tornar a carregar la pàgina mantenint premuda la tecla "ctrl" o "majúscula" mentre feu clic a la icona de recàrrega.

Memòria cau de Google

Més adequadament , la memòria cau del motor de cerca consisteix en còpies de pàgines web desades als servidors d’un motor de cerca. S’utilitzen per dos motius: per fer cerques locals a les pàgines i oferir la possibilitat de veure una còpia, encara que no estigui actualitzada, d’una pàgina no disponible, per problemes momentanis o perquè s’ha eliminat del servidor original.

Memòria cau del navegador

Els navegadors que s’utilitzen en qualsevol dispositiu conserven, a més de l’historial de navegació, noms d’usuari i contrasenyes introduïts, cookies i dades del lloc, informació per emplenar formularis, fins i tot la memòria cau. Això es representa pels continguts que s’estan navegant: fitxers, imatges, textos, etc. Aquesta memòria cau es pot eliminar fàcilment eliminant, a les carpetes de l'usuari, els elements individuals, tant mitjançant les ordres del navegador com mitjançant els anomenats "netejadors".

L'existència d'aquesta memòria cau facilita i personalitza l'experiència de navegació. Viouslybviament, quan s’esborra, les pàgines carregades “perden” els seus enregistraments anteriors.

Memòries cau específiques

Qualsevol sistema operatiu [2] , independentment del tipus de dispositiu, utilitza el concepte de memòria cau per a diversos propòsits. Algunes memòries cau es poden esborrar fàcilment (directament o mitjançant netejadors), d’altres, en canvi, són, per dir-ho d’alguna manera, semipermanents en el sentit que les seves dades s’emmagatzemen a carpetes / fitxers del sistema o a bases de dades de configuració (com ara " registre " Windows ). Per tant, la neteja de memòries caus d’aquest tipus sol requerir un funcionament avançat. Per a alguns sistemes, fins i tot és necessari fer un restabliment per esborrar memòries cau específiques.

En aquest cas, la memòria cau té la funció d’optimitzar l’experiència de l’usuari. A la pràctica, l’ús del dispositiu es fa més ràpid, més suau i més personalitzat.

Alguns exemples de memòries cau del sistema operatiu són:

  • paraules de cerca introduïdes i seleccionades (quadre "cerca" o "cerca")
  • fitxers temporals
  • imatges carregades prèviament per a fons de pantalla, pantalla de bloqueig, pantalla d’inici de sessió, estalvi de pantalla, perfil o compte d’usuari, icones, etc.
  • camins d’instal·lacions perifèriques
  • previsualitzacions d’imatges, vídeos, documents perquè es mostrin més ràpidament en obrir la carpeta que els conté
  • ordres mecanografiades i executades
  • configuració emmagatzemada de: barres, notificacions, menús, llistes, historials, etc.
  • mides de les finestres i paràmetres gràfics relacionats
  • informació (dades, fitxers, diversos continguts) utilitzada per les aplicacions o el sistema operatiu (els anomenats "recents" o registres)
  • dades dels programes més utilitzats (que s’utilitzen per augmentar la velocitat d’obertura)
  • referències a aplicacions i perifèrics desinstal·lats (controladors)
  • imatges dels "estats" anteriors del sistema, com en el cas de restauració, actualització, restabliment o reinstal·lació
  • accessos realitzats a carpetes i fitxers, rutes i dispositius de xarxa, usuaris, perifèrics, serveis diversos
  • informació sobre accessos al domini
  • Clau i contrasenya de xifratge de recuperació de dispositius TPM

Problemes relacionats amb l’ús

Disposar d’una memòria cau pot complicar molt el disseny d’un dispositiu electrònic o un programari de gestió, ja que és necessari mantenir la coherència entre les memòries cache i la memòria principal. Això es veu especialment a les màquines multiprocessador on el desenvolupament de processadors i plaques base ha de tenir en compte possibles problemes de coherència de memòria cau i ha de proporcionar mecanismes adequats per evitar la corrupció de dades a causa de problemes de sincronització entre memòria cau i memòria principal.

A més, el programari de gestió de memòria cau ha de ser altament sofisticat tant en la implementació com en l’estratègia de recuperació de dades (algorisme) per evitar l’anomenada sobrecàrrega de recuperació. Bàsicament, no ha de passar mai que la cerca o l’emmagatzematge de dades de memòria cau utilitzi recursos (sobretot de temps) com per fer que la recuperació en si sigui massa pesada, cosa que, paradoxalment, seria més convenient a partir de la memòria RAM.

En general, els algoritmes de gestió de dades de memòria cau estan vinculats a dos conceptes fonamentals:

  1. localitat del codi
  2. esborrant de la memòria cau les dades menys utilitzades recentment

El primer aspecte està directament relacionat amb l’elaboració de codi que afecta pàgines de memòria ben definides en cada fase de processament: un cop finalitzat el processament d’una determinada part del codi, les pàgines de memòria utilitzades ja no s’han de fer referència de tal manera per canviar la ubicació del codi però també de les dades que s’utilitzaran a partir d’aquest moment.

El segon aspecte, per tant, proporciona que les dades presents a la memòria cau i que pertanyen a una pàgina de memòria de referència quan la ubicació del codi era diferent es poden eliminar de la memòria cau per deixar espai a les dades relacionades amb la ubicació actual del codi.

Nota

  1. ^ Això no s'aplica a iOS .
  2. ^ Cal tenir en compte que Windows, Linux i Android proporcionen ordres per eliminar la memòria cau o, en qualsevol cas, permetre que les aplicacions de tercers ho facin, fins i tot en profunditat. Amb els sistemes Apple, és històricament complicat, si no deliberadament impossible (s’ha de reiniciar).

Articles relacionats

Enllaços externs

Control de l'autoritat LCCN (EN) sh88007957 · GND (DE) 4362843-6
Informàtica Portal de TI : accediu a les entrades de Viquipèdia relacionades amb TI