metodologia de gestió de la memòria informàtica From Wikipedia, the free encyclopedia
En informàtica, la gestió de la memòria (o bé administració de memòria) és proveir de porcions de la memòria als processos a mesura que els vagin necessitant, i alliberar aquestes porcions de memòria a mesura que ja no la necessitin. La gestió de la memòria és un procés crític per al correcte funcionament del sistema. Tot i que durant els inicis de la informàtica els usuaris eren els responsables de fer aquesta gestió, actualment el responsable en sol ser el sistema operatiu.
Seguint amb el concepte de màquina virtual d'un sistema operatiu (la màquina virtual és aquella màquina més senzilla d'utilitzar que el sistema operatiu ofereix als usuaris i aplicacions del sistema) amb la memòria tenim també un nivell d'abstracció més i utilitzem el que s'anomena Memòria Virtual que separa l'espai lògic d'adreces de l'espai d'adreces real, que permet que mitjançant tècniques com l'intercanvi (swapping) es pugui fer un millor ús de la memòria RAM.
La part del sistema operatiu que administra la memòria és l'administrador de memòria. La seva funció és clara: portar en un registre les parts de memòria que s'estan utilitzant i les que no. D'aquesta manera, reservarà espai de memòria per als nous processos i alliberarà l'espai dels processos que han finalitzat. També s'encarrega de gestionar l'intercanvi de dades entre memòria i disc, sempre que els processos siguin tan grans que no càpiguen d'un sol cop a la memòria.
Els objectius principals de la gestió de memòria són:
Les funcions principals de la gestió de memòria en sistemes operatius multitasca són:
L'espai d'adreces lògiques del procés són les adreces utilitzades pel programa i solen ser identificadors de les diferents parts del programa. Són adreces locals en el sentit que l'entorn on s'hagin d'executar no té importància.
L'espai d'adreces físiques del procés són les adreces assignades al procés en temps de càrrega, és a dir són el lloc físic on realment resideixen les dades del programa.
La propietat de la reubicació fa referència a la capacitat dels programes a ser carregats per tal de ser posteriorment executats en qualsevol posició de memòria. Si no fos així, seria necessari saber totes les adreces d'un programa en temps de compilació. Hi ha dos tipus de reubicacions:
La transformació d'adreces de memòria depèn en gran manera de l'arquitectura del processador i del component de maquinari encarregat d'aquesta transformació.
Les unitats de gestió de memòria també conegudes per les inicials angleses MMU (Memory Managment Units) són un component de maquinari encarregat de gestionar l'accés a la memòria des de la CPU. La seva funció principal és la conversió d'adreces virtuals en adreces físiques.
Els primers sistemes operatius no tenien cap sistema de gestió de la memòria. Es tractava de sistemes bàsicament monoprocés on els processos no s'executaven paral·lelament sinó seqüencialment. Amb l'aparició de la multiprogramació van aparèixer els primers sistemes de gestió de la memòria en particions.
Durant l'arrancada del sistema es reparteix la memòria en diferents trossos normalment de diferents mides. Cada tros que es crea s'anomena partició. Les particions es mantenen fins a la propera arrancada del sistema i no es poden fer modificacions.
La informació de les particions es guarda en una taula (inici de la partició, mida, estat). Quan es vol executar un procés que no és a la memòria principal el sistema busca una partició lliure on assignar-lo. Hi ha 2 polítiques típiques d'assignació:
Quan no hi ha particions lliures hi ha dues opcions:
El procés de passar l'espai d'adreces d'un procés de la memòria principal a la secundària es diu intercanvi (swap).
Aquests tipus de sistemes generen les particions de la memòria de forma dinàmica a mesura que es necessita la memòria.
La fragmentació és un problema que sorgeix en la gestió de la memòria. Segons el procediment utilitzat per a gestionar la memòria aquesta no s'utilitza sempre de la forma més eficient. Hi ha diferents tipus de fragmentació de la memòria:
En el cas de particions estàtiques, sempre acaba succeint que part de la informació d'algunes particions no s'utilitza per al procés. Aquesta fragmentació s'anomena interna.
En el cas de fer particions variables, el problema succeeix a mesura que els processos van alliberant particions i els espais de memòria lliures deixen de ser contigus. Per això, es fa necessari acabar compactant la memòria, procés que reorganitza tots els processos residents per tal que ocupin un espai contigu de memòria. Aquest procés, però, és molt costós en temps d'execució.
L'intercanvi o swap és el procés de moure porcions de memòria de la memòria principal (típicament la RAM) a un espai d'intercanvi (típicament a un dispositiu físic) o viceversa. Es parla de swap in quan es mou la informació de disc a RAM i de swap out quan la transmissió d'informació és entre la RAM i el disc. Els termes intercanvi i paginació sovint es confonen però no són exactament el mateix. L'intercanvi de dades entre la RAM i el disc dur es pot dur a terme sobre pàgines o sobre segment i té per tant un sentit més generalista.
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.