Արտաքին մասնատման մեկ այլ լուծում է թույլ տալ, որ գործընթացների տրամաբանական հասցեների տարածքը լինի ոչ հարակից: Գործընթացը հատկացվում է հասանելի ֆիզիկական հիշողությամբ և երբ վերջինը հասանելի է, այն վերագրվում է գործընթացին:
Ի՞նչ է արտաքին մասնատման խնդիրը:
Արտաքին մասնատումն առաջանում է երբ ազատ հիշողությունը բաժանվում է փոքր բլոկների և ընդմիջվում է հատկացված հիշողությամբ Դա պահեստավորման տեղաբաշխման որոշակի ալգորիթմների թուլություն է, երբ նրանք չեն կարողանում պատվիրել հիշողությունը, որն օգտագործվում է արդյունավետ ծրագրեր: … Հատկացվել է երեք բլոկ A, B և C՝ 0x1000 չափսերով:
Ինչպե՞ս է սեղմումը լուծում արտաքին մասնատման խնդիրը:
Մենք կարող ենք նաև օգտագործել compaction՝ արտաքին մասնատման հավանականությունը նվազագույնի հասցնելու համար: Կծկման ժամանակ բոլոր ազատ միջնորմները իրար են վերածվում, և բոլոր բեռնված միջնորմները միավորվում են: Կիրառելով այս տեխնիկան՝ մենք կարող ենք ավելի մեծ գործընթացները պահել հիշողության մեջ։
Ինչպե՞ս լուծել մասնատման խնդիրը՝ օգտագործելով paging:
Փեյջինգն օգնում է արտաքին մասնատմանը երկու եղանակով:
- Առաջինը, այն բաժանում է հիշողությունը ֆիքսված չափի հարակից հատվածների՝ էջերի, որոնք «բավականաչափ մեծ են», այնպես որ դրանք երբեք անօգուտ չեն: …
- Երկրորդ, paging ապարատը ապահովում է անուղղության մակարդակ հավելվածի էջերի և ֆիզիկական հիշողության էջերի միջև:
Ո՞ր ալգորիթմներն են տառապում արտաքին մասնատման խնդրից:
Սեգմենտացիան կարող է առաջացնել արտաքին մասնատում, երբ ազատ հիշողության բոլոր բլոկները չափազանց փոքր են հատվածը տեղավորելու համար, բայց ազատ տարածությունների գումարն ավելի մեծ է, քան հատվածի չափը:Հետևաբար, փեյջինգը տառապում է ներքին մասնատումից, իսկ հատվածավորումը՝ արտաքին մասնատման խնդրից: