Үймөк машинанын эс картасында кайсы жерде жайгашкан?
Үймөк машинанын эс картасында кайсы жерде жайгашкан?

Video: Үймөк машинанын эс картасында кайсы жерде жайгашкан?

Video: Үймөк машинанын эс картасында кайсы жерде жайгашкан?
Video: Электр велосипед 2021 MINAKO F10 40 км / сағ мини электр велосипед электр велосипед жиналмалы 2024, Май
Anonim

Жогорку даректерде жайгашкан стек жана төмөнкү дарек боюнча үймөк . эки эс бөлүштүрүү аймактары пайдаланылбаган жана бөлүштүрүлбөгөн дарек мейкиндигинин ортосуна чейин өсөт.

Андан тышкары, үймөк эстутумда кайда жайгашкан?

Стек статикалык үчүн колдонулат эс бөлүштүрүү жана Үймөк динамикалык үчүн эс бөлүштүрүү, экөө тең компьютерде сакталат RAM . Өзгөрмөлөр боюнча бөлүнгөн стек болуп саналат түздөн-түз сакталат эс жана буга жетүү эс абдан тез жана аны бөлүштүрүү программа түзүлгөндө чечилет.

Андан тышкары, үймөк эс деген эмне? А эс тутум жайгашкан жери болуп саналат эс кайда эс кокустук менен бөлүштүрүлүшү мүмкүн. Кайдагы стектен айырмаланып эс абдан аныкталган тартипте бөлүнөт жана чыгарылат, жеке маалымат элементтери боюнча бөлүнгөн үймөк адатта бири-биринен асинхрондуу жолдор менен чыгарылат.

Ошондой эле суроо туулат, үймөк эстутумда кайда жайгашкан жана ал кайсы багытта өсөт?

The Үймөк динамикалык сегмент эс бөлүштүрүү адатта ишке ашат. Бул аймак көбүнчө BSS сегментинин аягында башталат жана өсөт жогорудан жогоруга эс даректер. C тилинде, анын өлчөмүн тууралоо үчүн brk жана sbrk тутумунун чалууларын колдонгон malloc / new, free / delete аркылуу башкарылат.

Malloc эстутумду кайдан алат?

С тилинде, динамикалык эс кээ бир стандарттуу китепкана функцияларын колдонуу менен үймөктөн бөлүнөт. Эки негизги динамика эс функциялары болуп саналат malloc () жана акысыз (). The malloc () функциясы бир параметрди алат, ал суралган өлчөмү эс байттагы аймак. Ал бөлүнгөнгө көрсөткүчтү кайтарат эс.

Сунушталууда: