Razlika između unutarnje i vanjske fragmentacije

Unutarnja i vanjska fragmentacija
 

Razlika između unutarnje i vanjske fragmentacije tema je koja zanima mnoge koji vole poboljšati svoje znanje o računalu. Prije nego što znamo tu razliku, moramo vidjeti što je fragmentacija. Fragmentacija je pojava koja se događa u računalnoj memoriji poput RAM-a ili slučajnih diskova, što uzrokuje rasipanje i neefikasno korištenje slobodnog prostora. Iako je otežano učinkovito korištenje raspoloživog prostora, to uzrokuje i probleme sa performansama. Unutarnja fragmentacija nastaje kada se dodjela memorije temelji na particijama fiksne veličine, gdje nakon što se aplikaciji male veličine dodijeli utor, preostali slobodni prostor tog utora gubi. Vanjska fragmentacija nastaje kada se dinamički raspoređuje memorija gdje se nakon utovara i istovara nekoliko slota tu i tamo raspodjeljuje slobodni prostor, a ne da se neprestano.

Što je unutarnja fragmentacija?

Pogledajte gornju sliku gdje se slijedi mehanizam za dodjelu memorije fiksne veličine. U početku je memorija prazna, a alokator je podijelio memoriju na particije fiksne veličine. Zatim su tri programa pod nazivom A, B, C učitana u prve tri particije dok je četvrta particija još uvijek besplatna. Program A odgovara veličini particije, tako da u toj particiji nema rasipanja, ali su program B i program C manji od particije. Dakle, u dijelu 2 i 3. dijelu preostalo je slobodnog prostora. Međutim, ovaj je slobodni prostor neupotrebljiv jer uređaj za dodjelu memorije programima dodjeljuje samo potpuno particije, ali ne i njegove dijelove. Taj gubitak slobodnog prostora nazivamo unutarnjom fragmentacijom.

U gornjem primjeru to su fiksne pregrade jednake veličine, ali to se može dogoditi čak i u situaciji kada su dostupne particije različitih veličina. Obično se memorija ili najteži prostor dijele na blokove koji su obično veličine 2, poput 2, 4, 8, 16 bajta. Dakle, program ili datoteka od 3 bajta bit će dodijeljeni bloku od 4 bajta, ali jedan će bajt tog bloka postati neupotrebljiv uzrokujući unutarnju fragmentaciju.

Što je vanjska fragmentacija?

Razmotrite gornju sliku gdje se raspoređivanje memorije vrši dinamično. U dinamičkoj raspodjeli memorije, alorator dodjeljuje samo točno potrebnu veličinu za taj program. Prvo pamćenje je potpuno besplatno. Tada se programi A, B, C, D i E različitih veličina učitavaju jedan za drugim i oni se kontinuirano smještaju u memoriju. Zatim se program A i program C zatvaraju i uklanjaju se iz memorije. Sada su u memoriji tri slobodna prostora, ali ona nisu susjedna. Sad će se učitati veliki program zvan Program F, ali niti jedan blok slobodnog prostora nije dovoljan za Program F. Dodavanje svih slobodnih prostora definitivno je dovoljno za Program F, ali zbog nedostatka susjedstva taj prostor je neupotrebljiv za Program F. To se naziva Vanjska fragmentacija.

Koja je razlika između unutarnje i vanjske fragmentacije?

• Unutarnja fragmentacija nastaje kada se koristi tehnika raspodjele memorije fiksne veličine. Vanjska fragmentacija nastaje kada se koristi dinamička tehnika raspodjele memorije.

• Unutarnja fragmentacija događa se kada je particija fiksne veličine dodijeljena programu / datoteci manje veličine od particije, što ostatak prostora u toj particiji čini neupotrebljivim. Vanjska fragmentacija nastaje zbog nedostatka dovoljno susjednog prostora nakon utovara i istovara programa ili datoteka neko vrijeme jer se tada tu i tamo distribuira sav slobodni prostor..

• Vanjska fragmentacija može se izvući zbijanjem kada se dodijeljeni blokovi premjeste na jednu stranu, tako da se dobije susedni prostor. Međutim, za ovu operaciju je potrebno vrijeme, a također se određena kritična dodijeljena područja, na primjer sistemske usluge, ne mogu sigurno premjestiti. Ovaj korak sabijanja možemo primijetiti na tvrdim diskovima prilikom pokretanja defragmentera diska u sustavu Windows.

• Vanjska fragmentacija može se spriječiti mehanizmima kao što su segmentacija i straničenje. Ovdje je dat logički neprekidni prostor virtualne memorije dok su se u stvarnosti datoteke / programi podijeli na dijelove i postave tu i tamo.

• Unutarnja fragmentacija može se ublažiti dijeljenjem nekoliko veličina i dodjelom programa na temelju najboljeg uklapanja. Međutim, još uvijek nije u potpunosti uklonjena unutarnja fragmentacija.

Sažetak:

Unutarnja i vanjska fragmentacija

I unutarnja fragmentacija i vanjska fragmentacija fenomen je gdje se pamćenje troši. Unutarnja fragmentacija događa se u dodjeli memorije fiksne veličine, dok se vanjska fragmentacija događa kod dinamičke dodjele memorije. Kad je dodijeljena particija zauzeta programom manjim od particije, preostali prostor gubi se, uzrokujući unutarnju fragmentaciju. Kad se nakon utovara i istovara programa ne nađe dovoljno susjednog prostora zbog činjenice da se ovdje i tamo distribuira slobodni prostor, to uzrokuje vanjsku fragmentaciju. Fragmentacija se može pojaviti na bilo kojem memorijskom uređaju poput RAM-a, tvrdog diska i Flash pogona.