Skip to main content

Hva er minnehierarki?

Minnehierarki er hierarkiet for minne- og lagringsenheter som finnes på en datamaskin.Ofte visualisert som en trekant, representerer bunnen av trekanten større, billigere og tregere lagringsenheter, mens toppen av trekanten representerer mindre, dyrere og raskere lagringsenheter.Dette brukes ofte i beregningsteori og design, så programmerere vet hvordan de skal administrere de forskjellige minnesystemene når de bygger en datamaskin.Ved å vite hvordan man manipulerer minnehierarkiet, kan programmerere bygge raskere datamaskiner.

Minnehierarkiets trekant er en visualiseringsteknikk som hjelper forbrukere og programmerere til å forstå hvordan minne fungerer.Nederst er det billige lagringsenheter med store mengder minne, som harddisken eller magnetbåndet.Høyere oppe er det tilfeldig tilgangsminne (RAM), som har middels kapasitet og hastighet.På toppen hviler cache og prosessorer, som begge er veldig raske, men har små kapasiteter.Trekanten er først og fremst organisert etter responstid, men det er også en sammenheng mellom faktorer som størrelse, minnekapasitet og pris.

Når du bygger en datamaskin, må programmereren huske minnehierarkiet.Mens deler av trekanten kan manipuleres, er flytting av seksjoner rundt strengt mot reglene.For eksempel kan en programmerer bytte rollen som harddisken til rollen som RAM.Hvis dette skjer, vil datamaskinen gå veldig tregt når du laster inn øyeblikkelig informasjon som filer og nettsteder, og vil være i stand til å holde lite data for langsiktig lagring, noe som gjør datamaskinen nesten ubrukelig.Å bytte deler av trekanten er ikke den riktige måten å maksimere datamaskinens potensial.

Å manipulere trekanten på riktig måte er hvordan programmerere øker datamaskinens effektivitet.For eksempel, hvis lagringsenhetene er laget for å være veldig enkle, med mindre størrelse og kompleksitet, fungerer minnehierarkiet bedre.Hvis programmerere kan gjøre det slik at informasjon kan behandles i høyere deler av minnehierarkiet, for eksempel ved hjelp av prosessoren i stedet for RAM, beveger datamaskinen seg raskere.Dette beveger ikke seksjonene rundt, det optimaliserer dem bare.

Mens visualisering av minnehierarki er veldig enkelt, og hukommelsen kan manipuleres for å gå i forskjellige seksjoner, er det vanskelig å vite nøyaktig hvor minnet vil bli lagret eller brukt.Programmerere må estimere denne faktoren, fordi flere forskjellige enheter generelt vil behandle minnet på en gang, eller minnet kan gå fra en seksjon til en annen.Velllagde programmer vil vanligvis kunne forutse hvor minnet vil bli lagret eller behandlet, men det er en tilfeldig faktor som programmerere ikke alltid kan redegjøre for, og det er grunnen til at minnehierarki er mye mer flytende enn trekantvisualiseringen får det til å virke.