სად მდებარეობს გროვა აპარატის მეხსიერების რუკაზე?
სად მდებარეობს გროვა აპარატის მეხსიერების რუკაზე?

ვიდეო: სად მდებარეობს გროვა აპარატის მეხსიერების რუკაზე?

ვიდეო: სად მდებარეობს გროვა აპარატის მეხსიერების რუკაზე?
ვიდეო: აიზეკ აზიმოვი - "მე, რობოტი" - აუდიო წიგნი 2024, ნოემბერი
Anonim

უფრო მაღალ მისამართებზე არის დასტის და ქვედა მისამართზე არის გროვა . ორი მეხსიერება განაწილების რეგიონები იზრდება მისამართის სივრცის შუაში, რომელიც გამოუყენებელი და გამოუყენებელია.

უფრო მეტიც, სად მდებარეობს გროვა მეხსიერებაში?

დასტის გამოიყენება სტატიკური მეხსიერება გამოყოფა და გროვა დინამიურისთვის მეხსიერება განაწილება, ორივე ინახება კომპიუტერში ოპერატიული მეხსიერება . ცვლადები გამოყოფილი დასტის არიან ინახება პირდაპირ მეხსიერება და წვდომა ამაზე მეხსიერება არის ძალიან სწრაფი და მისი განაწილება განიხილება პროგრამის შედგენისას.

გარდა ამისა, რა არის გროვის მეხსიერება? ა მეხსიერების გროვა არის მდებარეობა ქ მეხსიერება სადაც მეხსიერება შეიძლება გამოყოფილი იყოს შემთხვევითი წვდომით. დასტისგან განსხვავებით სადაც მეხსიერება არის გამოყოფილი და გამოშვებული ძალიან განსაზღვრული თანმიმდევრობით, ინდივიდუალური მონაცემების ელემენტები გამოყოფილია მასზე გროვა ჩვეულებრივ გამოიყოფა ერთმანეთისგან ასინქრონული გზით.

ასევე საკითხავია, სად მდებარეობს მეხსიერებაში გროვა და რა მიმართულებით იზრდება?

The გროვა არის ის სეგმენტი, სადაც დინამიურია მეხსიერება განაწილება ჩვეულებრივ ხდება. ეს ტერიტორია ჩვეულებრივ იწყება BSS სეგმენტის ბოლოს და იზრდება ზევით მაღლა მეხსიერება მისამართები. C-ში მას მართავს malloc / new, free / delete, რომელიც იყენებს brk და sbrk სისტემის ზარებს მისი ზომის დასარეგულირებლად.

საიდან იღებს malloc მეხსიერებას?

C-ში, დინამიური მეხსიერება გამოყოფილია გროვიდან ზოგიერთი სტანდარტული ბიბლიოთეკის ფუნქციის გამოყენებით. ორი ძირითადი დინამიკა მეხსიერება ფუნქციები არის მალოკი () და უფასო (). The მალოკი () ფუნქცია იღებს ერთ პარამეტრს, რომელიც არის მოთხოვნილი ზომა მეხსიერება ფართობი ბაიტებში. ის უბრუნებს მაჩვენებელს გამოყოფილზე მეხსიერება.

გირჩევთ: