Razlika med notranjo in zunanjo fragmentacijo

Notranja in zunanja razdrobljenost
 

Razlika med notranjo in zunanjo razdrobljenostjo je tema, ki zanima številne, ki radi izboljšajo svoje računalniško znanje. Preden se zavemo te razlike, moramo videti, kaj je razdrobljenost. Razdrobljenost je pojav v računalniškem pomnilniku, na primer RAM (Random Access Memory) ali trdih diskov, kar povzroča zapravljanje in neučinkovito porabo prostega prostora. Čeprav je učinkovita uporaba razpoložljivega prostora ovirana, to povzroča tudi težave z zmogljivostjo. Notranja razdrobljenost nastane, kadar dodelitev pomnilnika temelji na particijah z velikostjo fiksne velikosti, kjer po majhni aplikaciji, dodeljeni reži, preostali prosti prostor tega reže zapravi. Zunanja razdrobljenost se pojavi, ko se pomnilnik dinamično razporedi, kjer se po nalaganju in praznjenju več slotov tu in tam razdeli prosti prostor namesto da bi bil sosednji.

Kaj je notranja fragmentacija?

Razmislite na zgornji sliki, kjer sledite mehanizmu za dodeljevanje pomnilnika fiksne velikosti. Sprva je pomnilnik prazen, razdelilnik pa je pomnilnik razdelil na predelne stene. Nato so se na tri tri particije naložili trije programi z imenom A, B, C, medtem ko je 4. particija še vedno prosta. Program A ustreza velikosti particije, tako da v tej particiji ni izgube, vendar sta program B in program C manjša od velikosti particije. Torej v drugem delu 2 in v razdelku 3 je ostalo prostega prostora. Vendar je ta prosti prostor neuporaben, saj dodeljevalnik pomnilnika programom dodeli le celotne particije, vendar ne njegovih delov. Ta izguba prostega prostora se imenuje notranja razdrobljenost.

V zgornjem primeru so fiksne predelne stene enake velikosti, vendar se to lahko zgodi tudi v primeru, ko so na voljo predelne stene različnih velikosti. Običajno je pomnilnik ali najtežji prostor razdeljen na bloke, ki so običajno velikosti 2, na primer 2, 4, 8, 16 bajtov. Tako bo program ali datoteka s 3 bajti dodeljen 4-bajtnemu bloku, vendar bo en bajt tega bloka postal neuporaben, kar povzroči notranjo razdrobljenost.

Kaj je zunanja fragmentacija?

Razmislite na zgornji sliki, kjer se dodeljevanje pomnilnika izvaja dinamično. Pri dinamični dodelitvi pomnilnika alokator dodeli samo natančno potrebno velikost za ta program. Prvi spomin je popolnoma brezplačen. Nato se programi A, B, C, D in E različnih velikosti naložijo drug za drugim in jih v tem zaporedju nenehno vložijo v pomnilnik. Potem se program A in Program C zapreta in se odvežeta iz pomnilnika. Zdaj so v spominu tri prostorska območja, ki pa niso sosednja. Zdaj se bo naložil velik program, imenovan Program F, vendar noben blok prostega prostora ni dovolj za program F. Dodajanje vseh prostih prostorov je vsekakor dovolj za program F, vendar zaradi pomanjkanja sosednosti ta prostor neuporaben za program F. To se imenuje Zunanja fragmentacija.

Kakšna je razlika med notranjo in zunanjo fragmentacijo?

• Notranja fragmentacija se pojavi, kadar se uporablja tehnika dodeljevanja pomnilnika s fiksno velikostjo. Zunanja razdrobljenost se pojavi, ko se uporablja tehnika dinamičnega razporejanja spomina.

• Do notranje razdrobljenosti pride, če je program / datoteka z manjše velikosti dodeljena particija s fiksno velikostjo kot particija, zaradi česar je preostali prostor v tej particiji neuporaben. Zunanja razdrobljenost je posledica pomanjkanja dovolj sosednjega prostora po nalaganju in raztovarjanju programov ali datotek nekaj časa, ker se nato tu in tam porazdeli ves prosti prostor..

• Zunanjo razdrobljenost lahko izkopljemo s stiskanjem, kadar dodeljene bloke premaknemo na eno stran, tako da dobimo sosednji prostor. Vendar pa ta postopek zahteva čas in tudi nekaterih 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 defragmenter diska v operacijskem sistemu Windows.

• Zunanjo razdrobljenost lahko preprečimo z mehanizmi, kot sta segmentacija in stransko iskanje. Tu je dan logični neprekinjeni prostor za virtualni pomnilnik, medtem ko so datoteke / programi v resnici razdeljeni na dele in tu in tam postavljeni..

• Notranjo razdrobljenost je mogoče popraviti tako, da imate več velikosti particij in dodelite program, ki temelji na najprimernejšem položaju. Vendar še vedno notranja razdrobljenost ni popolnoma odpravljena.

Povzetek:

Notranja in zunanja razdrobljenost

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