? Intern fragmentering er en tilstand der deler av datamaskinens minne blir ubrukelig på grunn av minnetildeling prosedyrer. Selv om minnet er faktisk ikke er i bruk , er det ikke tilgjengelig for systemet eller andre programmer . Mengden minne tapt for intern fragmentering er vanligvis små , men under perioder med tung last, kan hukommelsestap legge opp og føre til dårlig ytelse. Programmer og Minne
Når et program ber om minne fra systemet , tildeler systemet de første tilgjengelige minneblokker , og forbeholder dem før programmet avsluttes . Hvis mer enn ett program kjører samtidig, tildeler systemet rett og slett den neste tilgjengelige blokken , og fortsetter å gjøre det før den går tom for ledig minne. Når noen programmer avslutte , kan de la hullene ledig minne , men disse områdene kan ikke være brukbare . Hvis et program forespørsler, for eksempel, er 100 byte minne , men den første tilgjengelige gapet bare 50 bytes , så at plassen vil forbli ubrukt og systemet vil tildelt den første tilgjengelige blokk med 100 sammenhengende bytes i stedet for å prøve å fragmentere programmets forespørsel.
Memory Allocation
Mens systemet måler minnet i byte , kan det ikke tildele hver eneste byte minne. På grunn av minne - adressering protokoller , kan systemet bare begynne hukommelse tildeling på bestemte adresser , vanligvis i multipler av 4 , 8 eller 16 byte. For eksempel, hvis de adressering protokoller krever multipler av 16 byte , ville en forespørsel for 25 byte minne effektivt ta opp 32 bytes . Programmet vil ta opp sine 25 byte minne , men plassen fra slutten av programmet til den 32. byte ville forbli ubrukelig av systemet. I tillegg kan enkelte systemer stipendprogram en ekstra buffer minne å ta høyde for variable forhold, og dette minnet forblir reservert selv om ubrukt .
Fragmentering
disse små fragmenterte blokker av minnet er årsaken til intern fragmentering . Siden de tapte bytes er vanligvis relativt små i forhold til de krav til minne av programmene som er involvert , fører intern fragmentering sjelden til store systemproblemer unntatt i situasjoner der mengden installert RAM er knapt tilstrekkelig for systemets behov , eller når RAM-feil plutselig reduserer hvor mye minne på en ellers sunn system .
data fragmentering
Filsystemer kan også lide sin egen type intern fragmentering . For å øke hastigheten disk tilgang, filsystemer bruke en lignende fordeling system , reservere blokker av bytes som kalles klynger . NTFS system Windows bruker , for eksempel, har justerbare cluster størrelser fra 512 til 4096 byte. Alle filer som er mindre enn dette beløpet , eller en fil som blør over i en annen klynge med mindre enn den totale størrelsen , vil føre til at systemet hopper over gjenværende plass ved tildeling av mer data.