Home

minnesallokering

Minnesallokering är processen där ett programs minnesbehov tilldelas av ett operativsystem eller en minneshanterare. Den omfattar reservering, tilldelning och återlämning av minnesblock under programkörning och påverkar prestanda, resursutnyttjande och stabilitet.

Allokering sker på olika nivåer. Vid statisk minnesallokering bestäms minnesbehållarna vid kompilering, medan dynamisk minnesallokering sker

Olika strategier används för att hitta ledigt minne, till exempel first-fit, best-fit och worst-fit. Andra mekanismer

Fragmentering kan vara extern (midliga luckor mellan fria block) eller intern (spill inom ett block). Kompaktions-

Minnesmodeller inkluderar kontig minnesallokering, paging (virtuellt minne där minnet delas i sidor och adressöversättning sker via

Valet av allokeringsstrategi påverkar prestanda, minnesutnyttjande och svarstider. Minnesallokering är en grundläggande del av operativsystemets minneshantering

under
körning.
Vanligt
är
uppdelningen
i
stackminne,
heapminne
samt
data-
och
kodsegment.
inkluderar
buddy-system,
slab-allokerare
och
minnespooler.
Dessa
styr
hur
minnesblock
hittas,
ordnas
och
frigörs
och
påverkar
fragmentering.
eller
defragmenteringstekniker
används
för
att
motverka
detta.
sidor)
och
segmentering.
Moderna
system
kombinerar
ofta
dessa
tekniker.
I
språk
med
automatisk
minneshantering
används
ofta
en
heap
tillsammans
med
en
garbage
collector.
och
språkimplementationer.