Atšķirība starp iekšējo un ārējo sadrumstalotību

Satura rādītājs:

Atšķirība starp iekšējo un ārējo sadrumstalotību
Atšķirība starp iekšējo un ārējo sadrumstalotību

Video: Atšķirība starp iekšējo un ārējo sadrumstalotību

Video: Atšķirība starp iekšējo un ārējo sadrumstalotību
Video: УЖАС!!! НАШЕЛ ЭТО В ДОМЕ КОЛДУНЬИ / HORROR!!! FOUND THIS IN THE WITCH'S HOUSE 2024, Novembris
Anonim

Iekšējā pret ārēju sadrumstalotību

Atšķirība starp iekšējo un ārējo sadrumstalotību ir tēma, kas interesē daudzus, kam patīk uzlabot savas datorzināšanas. Pirms uzzināt šo atšķirību, mums ir jāredz, kas ir sadrumstalotība. Sadrumstalotība ir parādība, kas rodas datora atmiņā, piemēram, brīvpiekļuves atmiņā (RAM) vai cietajos diskos, kas izraisa izšķērdēšanu un neefektīvu brīvās vietas izmantošanu. Lai gan tiek traucēta efektīva pieejamās vietas izmantošana, tas rada arī veiktspējas problēmas. Iekšējā sadrumstalotība notiek, ja atmiņas piešķiršana ir balstīta uz fiksēta izmēra nodalījumiem, kur pēc maza izmēra lietojumprogrammas piešķiršanas slotam tiek iztērēta šī slota atlikušā brīvā vieta. Ārēja sadrumstalotība rodas, ja atmiņa tiek dinamiski piešķirta, kad pēc vairāku slotu ielādes un izkraušanas brīvā vieta tiek sadalīta, nevis blakus.

Kas ir iekšējā sadrumstalotība?

Atšķirība starp iekšējo un ārējo fragmentāciju_iekšējā sadrumstalotība
Atšķirība starp iekšējo un ārējo fragmentāciju_iekšējā sadrumstalotība
Atšķirība starp iekšējo un ārējo fragmentāciju_iekšējā sadrumstalotība
Atšķirība starp iekšējo un ārējo fragmentāciju_iekšējā sadrumstalotība

Apsveriet iepriekš redzamo attēlu, kur tiek ievērots fiksēta izmēra atmiņas piešķiršanas mehānisms. Sākotnēji atmiņa ir tukša, un sadalītājs ir sadalījis atmiņu fiksēta izmēra nodalījumos. Vēlāk trīs programmas ar nosaukumu A, B, C tika ielādētas pirmajos trīs nodalījumos, kamēr 4. nodalījums joprojām ir brīvs. Programma A atbilst nodalījuma lielumam, tāpēc šajā nodalījumā nav izšķērdēšanas, taču programma B un programma C ir mazākas par nodalījuma lielumu. Tātad 2. daļā un 3. nodalījumā ir atlikuša brīva vieta. Tomēr šī brīvā vieta nav izmantojama, jo atmiņas sadalītājs programmām piešķir tikai pilnus nodalījumus, bet ne tās daļas. Šo brīvās vietas izniekošanu sauc par iekšējo sadrumstalotību.

Iepriekš minētajā piemērā tie ir vienāda izmēra fiksēti nodalījumi, taču tas var notikt pat situācijā, kad ir pieejamas dažāda fiksēta izmēra nodalījumi. Parasti atmiņa vai cietākā vieta tiek sadalīta blokos, kuru lielums parasti ir 2, piemēram, 2, 4, 8, 16 baiti. Tādējādi programma vai 3 baitu fails tiks piešķirts 4 baitu blokam, bet viens šī bloka baits kļūs nelietojams, izraisot iekšēju sadrumstalotību.

Kas ir ārējā sadrumstalotība?

Atšķirība starp iekšējo un ārējo fragmentāciju_ārējā sadrumstalotība
Atšķirība starp iekšējo un ārējo fragmentāciju_ārējā sadrumstalotība
Atšķirība starp iekšējo un ārējo fragmentāciju_ārējā sadrumstalotība
Atšķirība starp iekšējo un ārējo fragmentāciju_ārējā sadrumstalotība

Apskatiet iepriekš redzamo attēlu, kur atmiņas piešķiršana tiek veikta dinamiski. Dinamiskajā atmiņas piešķiršanā piešķirtājs piešķir šai programmai tikai precīzu nepieciešamo izmēru. Pirmā atmiņa ir pilnīgi bez maksas. Pēc tam viena pēc otras tiek ielādētas dažāda lieluma programmas A, B, C, D un E, un tās tiek ievietotas atmiņā blakus tādā secībā. Pēc tam vēlāk programma A un programma C tiek aizvērtas, un tās tiek izlādētas no atmiņas. Tagad atmiņā ir trīs brīvas vietas apgabali, taču tie nav blakus. Tagad tiks ielādēta liela programma ar nosaukumu Programma F, taču programmai F nepietiek neviena no brīvās vietas blokiem. Programmai F noteikti pietiek ar visu brīvo vietu pievienošanu, taču blakus trūkuma dēļ šī vieta ir nav lietojams programmai F. To sauc par ārējo sadrumstalotību.

Kāda ir atšķirība starp iekšējo un ārējo sadrumstalotību?

• Iekšējā sadrumstalotība notiek, ja tiek izmantots fiksēta izmēra atmiņas piešķiršanas paņēmiens. Ārēja sadrumstalotība rodas, ja tiek izmantota dinamiskas atmiņas piešķiršanas tehnika.

• Iekšējā sadrumstalotība rodas, ja noteikta izmēra nodalījums tiek piešķirts programmai/failam, kura izmērs ir mazāks nekā nodalījumam, padarot pārējo šī nodalījuma vietu nelietojamu. Ārējā sadrumstalotība rodas tāpēc, ka pēc programmu vai failu ielādes un izkraušanas kādu laiku trūkst pietiekami daudz blakus vietas, jo tad visa brīvā vieta tiek sadalīta šur tur.

• Ārējo sadrumstalotību var iegūt ar blīvēšanu, kur piešķirtie bloki tiek pārvietoti uz vienu pusi, tādējādi iegūstot blakus esošo telpu. Tomēr šī darbība prasa laiku un arī noteiktas kritiski piešķirtās zonas, piemēram, sistēmas pakalpojumus nevar droši pārvietot. Mēs varam novērot šo sablīvēšanas darbību cietajos diskos, palaižot diska defragmentētāju sistēmā Windows.

• Ārēju sadrumstalotību var novērst ar tādiem mehānismiem kā segmentēšana un peidžeru izsaukšana. Šeit tiek dota loģiska blakus esošā virtuālās atmiņas telpa, bet patiesībā faili/programmas tiek sadalītas daļās un ievietotas šur tur.

• Iekšējo sadrumstalotību var sabojāt, izveidojot vairāku izmēru nodalījumus un piešķirot programmu, kuras pamatā ir vislabākā atbilstība. Tomēr joprojām iekšējā sadrumstalotība nav pilnībā novērsta.

Kopsavilkums:

Iekšējā pret ārēju sadrumstalotību

Gan iekšējā sadrumstalotība, gan ārējā sadrumstalotība ir parādības, kurās tiek izniekota atmiņa. Iekšējā sadrumstalotība notiek fiksēta izmēra atmiņas piešķiršanā, savukārt ārējā sadrumstalotība notiek dinamiskā atmiņas piešķiršanā. Ja piešķirto nodalījumu aizņem programma, kas ir mazāka par nodalījumu, atlikušā vieta tiek izniekota, izraisot iekšēju sadrumstalotību. Ja pēc programmu ielādes un izkraušanas nevar atrast pietiekami daudz blakus vietas, jo brīvā vieta tiek sadalīta šur tur, tas izraisa ārēju sadrumstalotību. Sadrumstalotība var notikt jebkurā atmiņas ierīcē, piemēram, RAM, cietajā diskā un zibatmiņas diskos.

Ieteicams: