Hva er en minnehåndteringsenhet?
Datamaskinvaren som er ansvarlig for å administrere datamaskinens minnesystem kalles minnestyringsenheten (MMU). Denne komponenten fungerer som en buffer mellom CPU og systemminne. Funksjonene som utføres av minnestyringsenheten kan typisk deles inn i tre områder: minnehåndtering av maskinvare, minnestyring av operativsystemet og styring av programminnet. Selv om minnehåndteringsenheten kan være en egen chipkomponent, er den vanligvis integrert i den sentrale prosesseringsenheten (CPU).
Generelt inkluderer maskinvaren som er tilknyttet minnestyring tilfeldig minne (RAM) og minne-hurtigbuffer. RAM er det fysiske lagringsrommet som er plassert på harddisken. Det er hovedlagringsområdet på datamaskinen der data blir lest og skrevet. Minne-hurtigbuffer brukes til å lagre kopier av visse data fra hovedminnet. CPU-en får tilgang til denne informasjonen som er lagret i minnebufferen, noe som hjelper med å øke prosesseringstiden.
Når det fysiske minnet, eller RAM, går tom for minne, bruker datamaskinen automatisk virtuelt minne fra harddisken til å kjøre det forespurte programmet. Minnehåndteringsenheten tildeler minne fra operativsystemet til forskjellige applikasjoner. Det virtuelle adresseområdet, som er lokalisert i den sentrale behandlingsenheten, består av en rekke adresser som er delt inn i sider. Sider er sekundære lagringsblokker som er like store. Den automatiske personsøkingsprosessen lar operativsystemet utnytte lagringsplass spredt på harddisken.
I stedet for at brukeren får en feilmelding om at det ikke er nok minne, ber MMU automatisk systemet om å bygge nok virtuelt minne til å utføre applikasjonen. Tilstøtende virtuelt minneplass blir opprettet av et basseng med like store størrelser av virtuelle minne for å kjøre applikasjonen. Denne funksjonen er en viktig nøkkel for å få denne prosessen til å fungere effektivt og effektivt fordi systemet ikke er nødvendig for å lage en del av virtuelt minne for å håndtere programkravene. Å lage forskjellige størrelser på minneplass for å få plass til forskjellige størrelsesprogrammer forårsaker et problem kjent som fragmentering. Dette kan føre til muligheten for ikke å ha nok ledig plass til større programmer når den totale tilgjengelige plassen faktisk er nok.
Administrasjon av applikasjonsminne innebærer prosessen med å tildele minnet som kreves for å kjøre et program fra de tilgjengelige minnressursene. I større operativsystemer kan mange eksemplarer av den samme applikasjonen kjøres. Minnehåndteringsenheten tildeler ofte en applikasjon den minneadressen som passer best til behovet. Det er enklere å tildele disse programmene de samme adressene. Minnehåndteringsenheten kan også distribuere minneressurser til programmer etter behov. Når operasjonen er fullført, blir minnet resirkulert for bruk et annet sted.
En av hovedutfordringene for minnehåndteringsenheten er å føle når data ikke lenger er nødvendig og kan kastes. Dette frigjør minne for bruk på andre prosesser. Automatisk og manuell minnestyring har blitt et eget fagfelt på grunn av dette problemet. Ineffektiv minnestyring er et stort problem når det gjelder optimal ytelse av datasystemer.