Razlika med notranjo in zunanjo fragmentacijo

Kazalo:

Razlika med notranjo in zunanjo fragmentacijo
Razlika med notranjo in zunanjo fragmentacijo

Video: Razlika med notranjo in zunanjo fragmentacijo

Video: Razlika med notranjo in zunanjo fragmentacijo
Video: Ingenious Construction Workers That Are At Another Level 2024, Julij
Anonim

Notranja vs zunanja fragmentacija

Razlika med notranjo in zunanjo fragmentacijo je tema, ki zanima mnoge, ki radi izpopolnjujejo svoje računalniško znanje. Preden spoznamo to razliko, moramo videti, kaj je razdrobljenost. Fragmentacija je pojav, ki se pojavi v računalniškem pomnilniku, kot je pomnilnik z naključnim dostopom (RAM) ali trdi diski, kar povzroči izgubo in neučinkovito uporabo prostega prostora. Medtem ko je učinkovita uporaba razpoložljivega prostora ovirana, to povzroča tudi težave z delovanjem. Do notranje razdrobljenosti pride, ko dodeljevanje pomnilnika temelji na particijah s fiksno velikostjo, pri čemer je po dodelitvi majhne aplikacije reži preostali prosti prostor te reže izgubljen. Do zunanje razdrobljenosti pride, ko se pomnilnik dinamično dodeli, kjer se po nalaganju in praznjenju več rež tu in tam prosti prostor porazdeli, namesto da bi bil sosednji.

Kaj je notranja fragmentacija?

Razlika med notranjo in zunanjo fragmentacijo_Notranja fragmentacija
Razlika med notranjo in zunanjo fragmentacijo_Notranja fragmentacija
Razlika med notranjo in zunanjo fragmentacijo_Notranja fragmentacija
Razlika med notranjo in zunanjo fragmentacijo_Notranja fragmentacija

Upoštevajte zgornjo sliko, kjer se upošteva mehanizem dodeljevanja pomnilnika fiksne velikosti. Sprva je pomnilnik prazen in razdelilnik je pomnilnik razdelil na particije fiksne velikosti. Kasneje so bili trije programi z imenom A, B, C naloženi na prve tri particije, medtem ko je 4. particija še vedno prosta. Program A se ujema z velikostjo particije, tako da na tej particiji ni izgube, vendar sta programa B in C manjša od velikosti particije. Torej je v particiji 2 in particiji 3 ostal prosti prostor. Vendar je ta prosti prostor neuporaben, saj dodeljevalec pomnilnika programom dodeli samo celotne particije, ne pa tudi njegovih delov. Ta izguba prostega prostora se imenuje notranja fragmentacija.

V zgornjem primeru gre za fiksne particije enake velikosti, vendar se to lahko zgodi celo v primeru, ko so na voljo particije različnih fiksnih velikosti. Običajno je pomnilnik ali najtežji prostor razdeljen na bloke, ki so običajno velikosti potenc števila 2, kot so 2, 4, 8, 16 bajtov. Program ali datoteka s 3 bajti bo torej dodeljena 4-bajtnemu bloku, vendar bo en bajt tega bloka postal neuporaben, kar bo povzročilo notranjo razdrobljenost.

Kaj je zunanja fragmentacija?

Razlika med notranjo in zunanjo fragmentacijo Zunanja fragmentacija
Razlika med notranjo in zunanjo fragmentacijo Zunanja fragmentacija
Razlika med notranjo in zunanjo fragmentacijo Zunanja fragmentacija
Razlika med notranjo in zunanjo fragmentacijo Zunanja fragmentacija

Upoštevajte zgornjo sliko, kjer se dodeljevanje pomnilnika izvaja dinamično. Pri dinamičnem dodeljevanju pomnilnika dodeli dodeljevalec samo natančno potrebno velikost za ta program. Prvi spomin je popolnoma brezplačen. Nato se drug za drugim naložijo programi A, B, C, D in E različnih velikosti in se v tem vrstnem redu postavijo v pomnilnik. Kasneje se program A in program C zapreta in odstranita iz pomnilnika. Zdaj so v pomnilniku tri območja prostega prostora, vendar niso sosednja. Zdaj se bo naložil velik program, imenovan Program F, vendar noben od blokov prostega prostora ni dovolj za program F. Dodatek vseh prostih prostorov je vsekakor dovolj za program F, toda zaradi pomanjkanja sosednosti je ta prostor neuporaben za program F. To se imenuje zunanja fragmentacija.

Kakšna je razlika med notranjo in zunanjo fragmentacijo?

• Do notranje fragmentacije pride, ko se uporabi tehnika dodeljevanja pomnilnika s fiksno velikostjo. Do zunanje fragmentacije pride, ko se uporablja tehnika dinamičnega dodeljevanja pomnilnika.

• Do notranje razdrobljenosti pride, ko je particija s fiksno velikostjo dodeljena programu/datoteki z manjšo velikostjo od particije, zaradi česar je preostali prostor na tej particiji neuporaben. Zunanja razdrobljenost je posledica pomanjkanja dovolj sosednjega prostora po nalaganju in odstranjevanju programov ali datotek nekaj časa, ker se takrat ves prosti prostor porazdeli sem in tja.

• Zunanjo fragmentacijo je mogoče izkopati s stiskanjem, kjer se dodeljeni bloki premaknejo na eno stran, tako da se pridobi neprekinjen prostor. Vendar ta operacija traja nekaj časa, poleg tega pa določenih kritičnih dodeljenih področij, na primer sistemskih storitev, ni mogoče varno premakniti. Ta korak stiskanja lahko opazimo na trdih diskih, ko zaženemo defragmentator diska v sistemu Windows.

• Zunanjo fragmentacijo je mogoče preprečiti z mehanizmi, kot sta segmentacija in stranjenje. Tukaj je podan logični sosednji navidezni pomnilniški prostor, medtem ko so v resnici datoteke/programi razdeljeni na dele in postavljeni tu in tam.

• Notranjo razdrobljenost lahko poškodujete tako, da imate particije več velikosti in dodelite program na podlagi najboljšega prileganja. Vendar še vedno notranja razdrobljenost ni popolnoma odpravljena.

Povzetek:

Notranja vs zunanja fragmentacija

Tako notranja kot zunanja fragmentacija sta pojava, pri katerih se spomin zapravlja. Notranja fragmentacija se pojavi pri dodelitvi pomnilnika s fiksno velikostjo, medtem ko se zunanja fragmentacija pojavi pri dinamični dodelitvi pomnilnika. Ko dodeljeno particijo zasede program, ki je manjši od particije, se preostali prostor zapravi, kar povzroči notranjo razdrobljenost. Če po nalaganju in razkladanju programov ni mogoče najti dovolj sosednjega prostora zaradi dejstva, da je prosti prostor porazdeljen tu in tam, to povzroči zunanjo razdrobljenost. Do fragmentacije lahko pride v kateri koli pomnilniški napravi, kot so RAM, trdi disk in bliskovni pogoni.

Priporočena: