2016-04-27 9 views
0

Was ich weiß ist, dass Mikroprozessoren ein Register haben können, das zum Zeitpunkt des Funktionsaufrufs den Stapelzeiger und die Rücksprungadresse verfolgen kann. Aber was ist mit Haufen? Wer verfolgt den Heapzeiger? Ist die Speicherzuweisung in Heap wirklich in zufälliger Reihenfolge?Wie überwacht Mikroprozessor Heap?

Antwort

2

Der Prozessor nicht. "Heap" und dynamische Zuweisung sind auf dem untersten Level-Teil des Betriebssystems, der einfach einen Teil der (möglicherweise virtuellen) Speicherzuordnung beiseite legt, die für dynamische Zuweisungen zu verwenden ist.

Auf einer höheren Ebene fragt die Laufzeit-Support-Bibliotheken für die Programme das Betriebssystem für Speicher, in der Regel in Form von "Seiten", die das Betriebssystem dann auf den Prozess stellt und dann die Laufzeit-Support-Bibliothek teilt herauf die Seiten, um herauszugeben, wenn der Prozeß Speicher wünscht.

[. Hinweis: Die obige Erklärung vereinfacht, für genauere Erklärung Ihre bevorzugte Suchmaschine Besonderheiten zu finden verwenden]