Was ist residenter und schmutziger Speicher von iOS?

8

Kann mir jemand sagen, welche Art von Erinnerung ist schmutzig / Bewohner und woher kommen sie? Bedeutet residenter Speicher dasselbe wie "verdrahteter Speicher" von Mac OS?

Das habe ich über den Mac OS Speicher gesehen:

  

Wired: Dies bezieht sich auf Kernel-Code und so. Erinnerung, die nicht sollte   jemals aus dem RAM bewegt werden. Auch als residenter Speicher bekannt.

     

Freigegeben: Speicher, der von zwei oder mehr Prozessen gemeinsam genutzt wird. Beide   Prozesse würden diese Menge an Speicher zeigen, so dass es ein bisschen sein kann   irreführend, wie viel Speicher tatsächlich verwendet wird.

     

Real: Dies ist die "echte" Speichernutzung für eine Anwendung, wie berichtet   von task_info () - eine grobe Zählung der Anzahl der physischen Seiten, die   der aktuelle Prozess hat. (RSIZE)

     

Private: Dies ist Speicher, den ein Prozess allein verwendet   das wird in Resident-Speicher verwendet. (RPRVT)

     

Virtuell: Der Gesamtbetrag des Adressraums im Prozess   auf alles abgebildet - ob das ein beliebig großer Platz für   Variablen oder irgendetwas - es entspricht nicht der tatsächlichen VM-Nutzung. (VSIZE)

     

Aktiv: Speicher wird derzeit als aktiv gekennzeichnet und wird als RAM verwendet.

     

Inaktiv: "Inaktiver Speicher wird nicht mehr verwendet und war es auch   im Cache gespeichert. Es bleibt im RAM, bis eine andere Anwendung benötigt   der Raum. Diese Information im RAM zu belassen ist zu Ihrem Vorteil, wenn Sie   (oder ein Client Ihres Computers) kommen Sie später darauf zurück. "- Mac OS X Hilfe

     

Free: Die tatsächlich verfügbare Menge an RAM ohne Daten.

    
CarmeloS 18.11.2012, 04:02
quelle

2 Antworten

27

Es ist fast ein Jahr und ich habe es herausgefunden.

Speicher löschen

sauberen Speicher sind Speicher, die neu erstellt werden können, auf iOS ist es Speicher von:

  • Systemrahmen
  • binäre ausführbare Datei Ihrer App
  • gespeicherte Dateien

Beachten Sie auch diese Situation: Wenn Ihre App mit einem Framework verknüpft wird, erhöht sich der reine Speicher um die Größe der Framework-Binärdatei. Aber die meiste Zeit ist nur ein Teil der Binärdatei wirklich in den physischen Speicher geladen.

schmutziger Speicher

Sämtlicher Speicher, der kein sauberer Speicher ist, ist schmutziger Speicher, schmutziger Speicher kann nicht vom System neu erstellt werden.

Wenn ein Speicherdruck vorhanden ist, entlädt das System etwas sauberen Speicher. Wenn der Speicher erneut benötigt wird, erstellt das System diese neu.

Aber für schmutzigen Speicher kann das System sie nicht entladen, und iOS hat keinen Swap-Mechanismus, so wird schmutziger Speicher immer im physischen Speicher gehalten, bis er ein bestimmtes Limit erreicht, dann wird Ihre App beendet und der gesamte Speicher für Es wird vom System recycelt.

virtueller Speicher

%Vor%

Das bedeutet, dass virtueller Speicher der gesamte Speicher ist, den Ihre App benötigt.

residenter Speicher

%Vor%

resident memory ist der Speicher, der wirklich in Ihren physischen Speicher geladen wurde, dh alle schmutzigen Speicher und Teile Ihres sauberen Speichers.

Schlussfolgerung

Zu jeder Zeit gilt das immer:

%Vor%

Wenn Sie sich Sorgen um den physischen Speicher Ihrer App machen (was der Hauptgrund dafür ist, dass Ihre App wegen zu wenig Arbeitsspeichers beendet wird), sollten Sie sich hauptsächlich auf residenten Speicher konzentrieren.

    
CarmeloS 08.10.2013, 04:05
quelle
7

Residenter Speicher ist der Speicher, der Ihrer App zugewiesen ist. Schmutziger Speicher ist der residente Speicher, der aufgrund des fehlenden Paging-Systems in iOS nicht automatisch freigegeben werden kann. Ich habe diese Informationen bei Ссылка gefunden. Für die von Ihnen aufgeführten Speicherarten ist der residente Speicher in iOS näher an real oder privat. Aus meiner Sicht ist es der schmutzige Speicher, über den Sie sich in iOS am meisten Sorgen machen sollten, da er feststellen kann, ob Ihre App im Hintergrund angehalten wird, wenn der Speicher gering ist.

    
Daniel 18.11.2012 06:20
quelle