Különbség a belső és a külső fragmentáció között

Belső és külső fragmentáció
 

A belső és a külső széttagoltság közötti különbség sok olyan személy érdeke, aki szeretne fejleszteni számítógépes ismereteit. Mielőtt megismernénk ezt a különbséget, meg kell vizsgálnunk, mi a szétaprózódás. A széttöredezettség olyan jelenség, amely a számítógépes memóriában, például a Random Access Memory (RAM) vagy a merevlemezekben fordul elő, és ez a szabad hely pazarlását és nem hatékony felhasználását okozza. Noha a rendelkezésre álló hely hatékony felhasználása akadályozott, ez teljesítményproblémákat is okoz. A belső széttöredezettség akkor fordul elő, ha a memóriaelosztás rögzített méretű partíciókon alapul, ahol egy kis méretű alkalmazás hozzárendelése egy réshez az adott rés fennmaradó szabad helyét pazarolja. A külső széttöredezettség akkor jelentkezik, amikor a memóriát dinamikusan elosztják, ahol több és több hely be- és kicsomagolása után ide-oda tovább osztják a szabad helyet, nem pedig szomszédosak..

Mi a belső töredezettség??

Vegye figyelembe a fenti ábrát, ahol egy rögzített méretű memóriaelosztási mechanizmust követnek. Kezdetben a memória üres, és az allokátor osztotta a memóriát rögzített méretű partíciókra. Később három programot, az A, B, C nevű programot töltöttek be az első három partícióba, míg a 4. partíció még szabad. Az A program megegyezik a partíció méretével, tehát ebben a partícióban nincs veszteség, de a B program és a C program kisebb, mint a partíció mérete. Tehát részben a 2. és a 3. partícióban van még szabad hely. Ez a szabad hely azonban nem használható, mivel a memóriaelosztó csak a teljes partíciókat rendeli a programokhoz, de ezeknek nem része. A szabad helynek ezt a pazarlását belső fragmentációnak nevezzük.

A fenti példában azonos méretű rögzített partíciók vannak, de ez akkor is megtörténhet, ha különféle rögzített méretű partíciók állnak rendelkezésre. A memóriát vagy a legnehezebb helyet általában blokkokra osztják, amelyek általában 2-es teljesítménnyel bírnak, például 2, 4, 8, 16 bájt. Tehát egy program vagy 3 bájtos fájl hozzárendelésre kerül egy 4 bájtos blokkhoz, de a blokk egy bájtja használhatatlanná válik, ami belső fragmentálást okoz.

Mi a külső fragmentáció??

Vegye figyelembe a fenti ábrát, ahol a memóriaelosztást dinamikusan végzik. A dinamikus memóriaelosztás során az allokátor csak a programhoz szükséges pontos méretet osztja el. Az első memória teljesen ingyenes. Ezután a különféle méretű A, B, C, D és E programokat egymás után betöltjük, és egymás után egymás után helyezzük el a memóriába, ebben a sorrendben. Később az A és a C program bezáródik, és kitölti őket a memóriából. Most három szabad hely van a memóriában, de nincsenek szomszédosak. Most egy nagy, az F program nevû programot kell betölteni, de egyik szabad hely nem elegendõ az F program számára. Az összes szabad terület hozzáadása határozottan elegendõ az F program számára, de a szomszédság hiánya miatt ez a hely nem használható az F. program számára. Ezt nevezik Külső fragmentációnak.

Mi a különbség a belső és a külső fragmentáció között??

• A belső széttöredezettség rögzített méretű memóriaelosztási technika használatakor fordul elő. A külső fragmentáció dinamikus memóriaelosztási technika használata esetén fordul elő.

• A belső széttöredezettség akkor fordul elő, ha egy rögzített méretű partíciót rendelnek hozzá egy kisebb méretű programhoz / fájlhoz, mint a partíció, ami a partíció többi részét használhatatlanná teszi. A külső széttöredezettség annak a következménye, hogy nincs elég szomszédos hely a programok vagy fájlok egy ideig tartó betöltése és lerakása után, mivel az összes szabad hely itt-ott megoszlik.

• A külső töredezettséget tömörítéssel lehet kiküszöbölni, amikor a hozzárendelt blokkokat az egyik oldalra tolják, hogy egymással szomszédos helyet kapjanak. Ez a művelet azonban időbe telik, és bizonyos kritikusan kijelölt területeket, például a rendszerszolgáltatásokat sem lehet biztonságosan mozgatni. Megfigyelhetjük ezt a merevlemezeken végzett tömörítési lépést, amikor a lemeztöredezettség-mentesítőt futtatjuk a Windows rendszerben.

• A külső széttöredezettséget olyan mechanizmusok, mint például a szegmentálás és a lapozás akadályozzák meg. Itt adunk egy logikus, szomszédos virtuális memóriahelyet, míg a valóságban a fájlokat / programokat részekre bontják és oda-vissza helyezik.

• A belső széttöredezettség csökkenthető többféle partícióval és a legmegfelelőbb program hozzárendelésével. A belső széttagolódást azonban még mindig nem sikerült teljes mértékben kiküszöbölni.

Összefoglaló:

Belső és külső fragmentáció

A belső és a külső fragmentáció egyaránt olyan jelenség, ahol a memória pazarolódik. A belső széttöredezettség a rögzített méretű memória allokációjában, míg a külső fragmentáció a dinamikus memória allokációban fordul elő. Ha egy kiosztott partíciót a partíciót kevesebb program foglal el, akkor a fennmaradó hely pazarláshoz vezet, amely belső széttöredezettséget okoz. Ha a programok betöltése és lerakása után nem található elegendő szomszédos terület, mivel a szabad hely itt-ott oszlik meg, ez külső széttöredezettséget okoz. A töredezettség bármilyen memóriaeszközben, például RAM-ban, merevlemez- és Flash-meghajtókban fordulhat elő.