Razlika med notranjo fragmentacijo in zunanjo fragmentacijo

V okviru datotečnega sistema je fragmentacija neučinkovita uporaba pomnilniškega prostora za shranjevanje vsebine posamezne datoteke na različnih lokacijah na disku, ne pa v samem zaporedju bitov na enem mestu. Razdrobljenost je naravni pojav, ki se fizično pojavi na trdem disku ali včasih na pomnilniškem modulu, če podatki niso dovolj natančno zapisani na pogon.

Podatki se včasih zapišejo po vrstnem redu, kar pomeni, da se podatki zaradi pogoste uporabe datotek ne postavljajo drug poleg drugega. Ti podatki se imenujejo fragmenti. V nekem trenutku bi moral operacijski sistem dostopati do datotečnega sistema, da bi ugotovil, kje se na disku nahajajo različni fragmenti.

Na primer, ko ustvarite nov dokument, recimo besedilno datoteko; zdi se, da je datoteka na enem mestu. Datoteko lahko odprete, jo uredite ali izbrišete - karkoli želite. Zdi se, da se vse dejavnosti fizično dogajajo na pogonu, vsaj tako mislite.

Trdi disk morda shrani koščke datotek na enem območju naprave, preostanek pa obstaja dobesedno drugje na pomnilniški napravi. Preprosto povedano, fragmentacija se nanaša na zapravljeni prostor za shranjevanje v datotečnem sistemu, ki omogoča razmik med različnimi deli datoteke.

Razdrobljenost se v osnovi pojavlja v sistemu dinamičnega dodeljevanja pomnilnika, ker je datoteki rezerviralo preveč prostora, kar ima za posledico odprta območja okoli nje.

Kaj je notranja fragmentacija?

Nekako se nanaša na razdelitev na fiksno velikost. Sistem dodeli pomnilnik različnim programom in postopkom, tako da jih razdeli na majhne bloke, kot zahteva program. Vendar pa je včasih dodeljeno več pomnilnika, kot je potrebno v procesu, kar na koncu povzroči, da odvečni pomnilnik odpade ali ostane neizkoriščen.

Na primer, pomnilnik je mogoče dodeliti samo programom v blokih, ki jih delimo s 4, 8 ali 16. Ko proces zahteva 24 bajtov, običajno dobi blok 32 bajtov, presežek 8 bajtov ostane neizkoriščen. Tako neuporabljeni pomnilnik prebiva na določenem dodeljenem mestu in je tako majhen, da mu ne moremo dodeliti novega postopka, kar povzroči odpadke. Te odpadke imenujemo kot notranja razdrobljenost. Verjetno je edini način za odstranjevanje te vrste fragmentacija dinamična dodelitev pomnilnika.

Kaj je zunanja fragmentacija?

Glavni pomnilnik tvori luknje med deli dodeljenega pomnilnika, ki so premajhni za kakršen koli postopek. To je slaba stran algoritmov za dodelitev pomnilnika, ko sosednji bloki neizkoriščenih prostorov ne morejo ponuditi nove zahteve, ker so presledki premajhni za velike potrebe pomnilniških aplikacij. Preprosto povedano, neprekinjeni bloki ustvarijo luknje v pomnilniku, kar povzroči neuporabljeno shrambo, ki je zunaj dodeljenih regij, kar pomeni, da je ni mogoče uporabiti skupaj z glavnim pomnilnikom za večje pomnilniške naloge. Na koncu so izolirani in jih ni mogoče popolnoma odstraniti iz pomnilniškega prostora. Temu pravimo zunanja razdrobljenost. Odstranite ga lahko s stiskanjem, ki premešča vsebino pomnilnika, tako da se združi ves prosti pomnilnik.

Razlika med notranjo in zunanjo razdrobljenostjo

  1. Osnove

Notranja razdrobljenost:

Notranja razdrobljenost se nanaša na dodatne prostore, ki odpadejo, ko je za proces dodeljeno več pomnilnika, kot je potrebno. Ponavadi se zgodi, ko se pomnilniški bloki s fiksno velikostjo dodelijo programom ali postopkom.

Zunanja razdrobljenost:

Zunanja razdrobljenost se nasprotno nanaša na neizkoriščene prostore, ki nastanejo med sosednjimi bloki pomnilnika, ki niso sosednji drug drugemu..

  1. Pojav

Notranja razdrobljenost:

Prosti prostor, ki se tvori znotraj dodeljenega pomnilniškega bloka, ko je pomnilnik, dodeljen procesu, večji od pomnilnika, ki ga zahteva postopek, imenujemo notranja fragmentacija. "Notranji" se nanaša na neuporabljene bajte, ki so v večjih pomnilniških blokih.

Zunanja razdrobljenost:

Ko glavni pomnilnik tvori luknje, ki so premajhne, ​​da bi lahko izpolnile vsako zahtevo, se imenuje zunanja razdrobljenost.

  1. Razlog

Notranja razdrobljenost:

Glavni razlog za nastanek notranje razdrobljenosti je, če je pomnilnik razdeljen na bloke fiksne velikosti .

Zunanja razdrobljenost:

Zunanja razdrobljenost je pojav, ki se pojavi, ko je pomnilnik razdeljen na bloke spremenljive velikosti glede na velikost različnih procesov.

  1. Rešitev

Notranja razdrobljenost:

Notranja razdrobljenost je naravni pojav, ki ga je mogoče odpraviti z dinamično dodelitvijo pomnilnika, ki dinamično razporeja dele pomnilniških blokov v procese na njihovo zahtevo in jih sprosti, kadar jih med izvajanjem programa ne potrebujejo več..

Zunanja razdrobljenost:

Zunanjo razdrobljenost pa lahko odpravimo z zbijanjem, stranskim klicanjem in segmentacijo, tako da lahko spomin dodelimo procesu na nenehni način.

Notranja in zunanja fragmentacija: primerjalna shema

Povzetek notranje in zunanje fragmentacije

Notranja in zunanja razdrobljenost sta naravna pojava, povezana z neporabljenim pomnilniškim prostorom ali zapravljenim pomnilnikom. Notranja fragmentacija trpi zaradi neučinkovite razporeditve pomnilnika, ki se pojavi, ko je pomnilnik dodeljen nekemu procesu več, kot je bilo zahtevano, zaradi česar neizkoriščen prostor v pomnilniškem bloku sčasoma povzroči notranjo razdrobljenost. Ko postopek odstranimo iz fizičnega pomnilnika, se tukaj in tam porazdeli prosti prostor in ni mogoče najti sosednjih blokov pomnilnika, kar bi povzročilo zunanjo razdrobljenost. Vendar pa se je mogoče izogniti obema pojavom. Notranjo razdrobljenost je mogoče zmanjšati z dinamično dodelitvijo pomnilnika procesom, medtem ko se zunanji fragmentaciji najbolje izognemo z zbijanjem, straničenjem in segmentacijo.