Kabelgebundener Speicher vs. aktiver Speicher in OS X

13

Ich habe Probleme, den Unterschied zwischen verkabeltem Speicher und aktivem Speicher in OS X zu verstehen.

Sprechen Sie nicht über die vier Arten von Speicher (sprechen Sie nicht über freien oder inaktiven Speicher, da ich bereits weiß, was das ist). Vergleichen Sie einfach den verkabelten Speicher mit dem aktiven Speicher, damit ich die beiden besser verstehe.

tony_sid
quelle

Antworten:

28

Schonende Erinnerung: Um eine bessere Antwort für den Rest der Community zu erhalten, sagen Sie bitte nichts wie "Sprechen Sie nicht über die vier Arten von Speicher". Selbst wenn Sie es gut kennen, kommen vielleicht tausendundein Bürger des Internets hierher und hoffen auf eine ergänzende Antwort. :)

"Paging" ist der genaue Begriff für die folgende Aktion. "Tauschen" wird umgangssprachlich für "Blättern" verwendet, was heutzutage jedoch durchaus austauschbar ist. "Auslagern" bezog sich ursprünglich auf das vollständige Verschieben des Speicherbereichs eines Programms in den "sekundären Speicher" (im Gegensatz zum "Hauptspeicher", der in gewisser Weise ein archaischer Begriff für ... RAM ist). Die Grenze zwischen Paging und Swapping wird durch Windows- und Unix-Systeme, die Paging-Space-Swaps aufrufen, erheblich verwischt.

Und dann muss man sich mit Paging auskennen, um das Konzept von aktivem, verdrahtetem und inaktivem Speicher zu verstehen. Paging bedeutet, dass die Speicherseite aus dem Arbeitsspeicher (dh dem RAM) auf die Festplatte oder ein anderes sekundäres Speichergerät verschoben wird. Auf diese Weise kann die ausgeführte Anwendung mehr Arbeitsspeicher anfordern als der gesamte verfügbare System-RAM.

Beachten Sie, dass das Auslagern zwar eine enorme Leistungseinbuße bedeutet, um wieder auf diese bestimmte Information zuzugreifen, das Auslagern jedoch in zwei verschiedenen Fällen erfolgen kann: (Ich zitiere: Nachteile, wenn ich keine Swap-Partition habe )

  1. Wenn nicht für alle Anwendungen GENUG Speicher vorhanden ist - in dem Fall, dass dies auf einem System ohne Auslagerungsspeicher geschieht, kann kein Speicher für neue Anwendungen reserviert werden, die neue Speicherseiten anfordern - und dies führt normalerweise zum Beenden des Programms.
  2. Wenn einige Speicherseiten (Speicher ist in "Seiten" unterteilt) vor einiger Zeit verwendet wurden, aber jetzt nicht mehr verwendet werden, werden sie in die Auslagerungsdatei übertragen und der verbleibende Speicher kann für andere Zwecke verwendet werden, die nützlicher sein könnten (z. B. sogar Zwischenspeichern!) - Wenn dies in einem System ohne Auslagerungsspeicher geschieht, verbleiben inaktive Seiten im Speicher. Dies ist jedoch nicht allzu ernst, da wir heutzutage eine ziemlich große Menge an Speicher haben.

Die vier Speichertypen werden wie folgt klassifiziert:

  • Verkabelt: Wird von einer Anwendung verwendet, die behauptet, dass der zugewiesene Speicherbereich physisch im RAM verbleiben und nicht auf die Festplatte ausgelagert werden muss, unabhängig davon, ob er kürzlich verwendet wurde oder nicht. Das heißt, eine andere Anwendung fordert diesen bestimmten Speicherbereich möglicherweise NICHT an. Beispiele sind Teil des vom System verwendeten Speichers und des von virtuellen Maschinen verwendeten Speichers.

  • Aktiv & Inaktiv: Hierbei handelt es sich um Speicher, der normalerweise von Anwendungen im Benutzermodus verwendet wird und in denen sie auf Datenträger ausgetauscht werden können. "Aktiv" bedeutet, dass es kürzlich verwendet wurde, und "Inaktiv" bedeutet, dass es kürzlich nicht verwendet wurde. Das Betriebssystem tauschte daher zuerst inaktive Seiten aus und bei Bedarf später aktive Seiten.

  • Freier Speicher: Speicher, der nicht verwendet wird. Dies wird für andere Zwecke verwendet, z. B. zum Zwischenspeichern der Festplatte.

Wenn Ihre Frage lautet: "In einer schlimmen Situation, in der der Arbeitsspeicher nicht ausreicht, in welcher Reihenfolge würde das System versuchen, einer neuen Anwendung Arbeitsspeicher zuzuweisen?", Dann lautet die Reihenfolge: Zuweisen

Freier Speicher → Inaktiver Speicher → Aktiver Speicher

In gewisser Weise könnte sogar kürzlich verwendeter Speicher ausgelagert werden. Der "verdrahtete" Teil ist das, was nicht um jeden Preis ausgelagert werden würde.

In modernen Systemen ist es jedoch eher unwahrscheinlich, dass der aktive Speicher ausgelagert wird, da genügend RAM verfügbar ist.

bubu
quelle
Jetzt haben Sie diese Frage komplizierter gemacht, als es sein musste, indem Sie über die anderen Arten des Gedächtnisses gesprochen haben. Also muss ich jetzt nach aktivem und inaktivem Speicher fragen. Ich habe gehört, dass inaktiver Speicher tatsächlich freier Speicher ist. Um was geht es. Ist aktiver Speicher auch freier Speicher? Vergleichen und kontrastieren Sie den aktiven Speicher mit dem inaktiven Speicher.
Tony_sid
1
Ich habe gehört, dass inaktiver Speicher einfach Cache ist, falls ein Programm, das geschlossen wurde, erneut gestartet wird. Wenn das stimmt, warum muss es dann auf die Festplatte gestellt werden?
Tony_sid
1
Sie haben etwas falsches gehört. Bei geschlossenen Anwendungen wird der Speicher freigegeben, es sei denn, die Speicherarchitektur ist ernsthaft fehlerhaft.
Bubu
2
fantastische Antwort! +1
posdef
1
@tony_sid eine alte Diskussion, aber was Sie gehört haben, ist richtig. Wie in der Apple-Unterstützung erwähnt "Wenn Sie jedoch Mail öffnen, bevor der inaktive Speicher von einer anderen Anwendung verwendet wird, wird Mail schneller geöffnet, da der inaktive Speicher in aktiven Speicher konvertiert wird, anstatt ihn vom langsameren Laufwerk zu laden."
Gaurav