U kontekstu datotečnog sustava, fragmentacija je neučinkovita uporaba prostora za pohranu za spremanje sadržaja jedne datoteke na različita mjesta na disku, a ne u jedan kontinuirani slijed bitova na jednom mjestu. Fragmentacija je prirodni fenomen koji se pojavljuje fizički na tvrdom disku ili ponekad na memorijskom modulu kada podaci nisu dovoljno zapisani na disku.
Podaci se ponekad pišu izvan reda, što znači da se dijelovi podataka ne postavljaju jedan pored drugog na pogonu zbog česte uporabe datoteka. Ti se dijelovi podataka nazivaju fragmenti. U nekom bi trenutku operativni sustav trebao pristupiti datotečnom sustavu kako bi pronašao gdje se različiti fragmenti nalaze na pogonu.
Na primjer, kada stvorite novi dokument, recimo datoteku s riječima; čini se da se datoteka nalazi na jednom mjestu. Možete otvoriti datoteku, urediti je ili izbrisati - sve što želite. Čini se da se sve aktivnosti fizički događaju u pogonu, barem tako mislite.
Tvrdi disk možda štedi dijelove datoteka na jednom području uređaja, ali ostatak postoji doslovno negdje drugdje na uređaju za pohranu. Jednostavno rečeno, fragmentacija se odnosi na izgubljeni prostor za pohranu u datotečnom sustavu koji omogućuje da se razvije jaz između različitih dijelova datoteke.
Fragmentacija se u osnovi događa u sustavu dinamičke dodjele memorije jer je rezervirala previše prostora za datoteku, što rezultira otvorenim prostorima oko nje.
To se nekako odnosi na podjelu fiksne veličine. Sustav raspoređuje memoriju u različite programe i procese dijeleći ih u male blokove prema zahtjevu programa. Međutim, dodjeljuje se više memorije ponekad nego što je potrebno procesu, što na kraju rezultira viškom memorije koja se odlaže ili ostane neiskorištena.
Na primjer, memorija se može dodijeliti samo programima u blokovima koji su djeljivi sa 4, 8 ili 16. Kada proces zahtijeva 24 bajta, obično dobije blok od 32 bajta, višak 8 bajta ostaje neiskorišten. Tako se neiskorištena memorija nalazi unutar određenog dodijeljenog mjesta i toliko je mala da joj se ne može dodijeliti novi postupak, što rezultira otpadom. Taj se otpad naziva unutarnjom fragmentacijom. Vjerojatno jedini način za uklanjanje ove vrste fragmentacije je dinamičkom raspodjelom memorije.
Glavna memorija tvori rupe između dijelova dodijeljene memorije koji su premali da bi mogli održati bilo koji postupak. To je negativna strana algoritama za dodjelu prostora za pohranu, kada neprekidni blokovi neiskorištenih prostora ne mogu poslužiti novi zahtjev jer su prostori premali za velike potrebe memorijske aplikacije. Jednostavno rečeno, neprekidni blokovi stvaraju rupe u memoriji što rezultira neiskorištenim spremištem izvan dodijeljenih područja, što znači da se ne može koristiti zajedno s glavnom memorijom za veće memorijske zadatke. Na kraju su izolirani i ne mogu se potpuno eliminirati iz memorijskog prostora. To se naziva vanjska fragmentacija. Može se ukloniti sabijanjem koji miješa sadržaj memorije kako bi se ostavila sva slobodna memorija.
Unutarnja fragmentacija:
Unutarnja fragmentacija odnosi se na dodatne prostore koji troše otpad kad je procesu dodijeljeno više memorije nego što je potrebno. Obično se događa kada se memorijski blokovi fiksne veličine dodijele programima ili procesima.
Vanjska fragmentacija:
Vanjska fragmentacija, naprotiv, odnosi se na neiskorištene prostore koji nastaju između susjednih blokova memorije koji nisu susjedni jedni drugima..
Unutarnja fragmentacija:
Slobodni prostor koji se formira unutar dodijeljenog memorijskog bloka kada je memorija dodijeljena procesu veća od memorije koju proces zahtijeva, naziva se unutarnjom fragmentacijom. "Interni" se odnosi na neiskorištene bajte koji se nalaze u većim memorijskim blokovima.
Vanjska fragmentacija:
Kad glavna memorija formira rupe koje su premalene da bi udovoljile bilo kojem zahtjevu, to se naziva vanjska fragmentacija.
Unutarnja fragmentacija:
Glavni razlog zašto dolazi do unutarnje fragmentacije je kada je memorija podijeljena na blokove fiksne veličine .
Vanjska fragmentacija:
Vanjska fragmentacija je pojava koja se događa kada je memorija podijeljena u blokove promjenjive veličine na temelju veličine različitih procesa.
Unutarnja fragmentacija:
Unutarnja fragmentacija prirodni je fenomen koji se može ukloniti dinamičkom raspodjelom memorije koja dinamički raspoređuje dijelove memorijskih blokova procesima na njihov zahtjev i oslobada ih kada više nisu potrebni tijekom izvršavanja programa..
Vanjska fragmentacija:
S druge strane, vanjska fragmentacija može se eliminirati sabijanjem, paginiranjem i segmentacijom tako da se memorija može dodijeliti procesu na neprekidan način.
I unutarnja i vanjska fragmentacija prirodni su fenomeni koji se odnose na neiskorišteni memorijski prostor ili memoriju koja se troši. Unutarnja fragmentacija pati od neučinkovite dodjele memorije koja se događa kada je memorija dodijeljena nekom procesu veća od tražene, ostavljajući neiskorišteni prostor u memorijskom bloku, što na kraju uzrokuje unutarnju fragmentaciju. Nakon što se postupak ukloni iz fizičke memorije, slobodni prostor se distribuira tu i tamo i ne mogu se naći susjedni blokovi memorije, što uzrokuje vanjsku fragmentaciju. Međutim, obje pojave se mogu izbjeći. Unutarnja fragmentacija može se smanjiti dinamičkim izdvajanjem memorije, dok se vanjska fragmentacija najbolje može izbjeći sabijanjem, pozivanjem i segmentacijom.