Ich habe gerade mein Telefon (Android 2.3.6) gerootet und die SD-Karte mit CWM recovery
. Beim Partitionieren ist mir aufgefallen , dass verschiedene Blogs ( xda-Entwickler ) die Verwendung von as empfohlen swap size
haben und während ich danach gesucht habe . Was nützt es? Warum wird es empfohlen ?0M
swap size
0M
Hauptgründe für die No-Swap-Empfehlungen sind die grundlegende Nutzlosigkeit von Swap für die meisten Geräte, Leistungsgründe und die Langlebigkeit der Geräte.
Wie Liam erwähnt, haben moderne Geräte keinen Mangel an RAM (sogar mein altes Wildfire S mit geringer Leistung hat so viel RAM wie mein vorheriger Desktop .) Und dieser RAM wird vom modernen Android-System ziemlich gut verwaltet, was einen Austausch weitgehend sinnlos macht.
Obwohl Flash weitaus besser ist als Platten mit sich drehendem Rost, ist es immer noch um Größenordnungen langsamer als RAM, daher sollten Sie aus Leistungsgründen nicht auf Flash heruntersteigen, wenn Sie es überhaupt vermeiden können.
Darüber hinaus hat Flash-Speicher eine Begrenzung, wie oft Sie ihn löschen und neu beschreiben können. Obwohl diese Zyklusgrenze normalerweise bei Tausenden oder Zehntausenden liegt, bedeutet dies in Kombination mit modernen Wear-Leveling-Systemen, dass Sie die Grenze wahrscheinlich nicht innerhalb der Nutzungsdauer des Geräts erreichen, aber wenn Sie es als Swap verwenden, mit Unmengen von klitzekleinen Schreibvorgängen, Sie werden diese Zyklen unnötig durchkauen und könnten mit der Zeit tatsächlich an diese Grenzen stoßen.
Die Verwendung einer Auslagerungsdatei spart also Speicherplatz (RAM) auf Speicher (Festplatte/SD-Karte).
Die Empfehlung von 0 MB für die Dateigröße ist, weil sie normalerweise nicht benötigt wird. Android kümmert sich anders um die Speicherverwaltung als Auslagerungsdateien.
Hintergrund:
Eine Auslagerungsdatei wird traditionell verwendet, um zu speichern, was sich normalerweise im Speicher befindet, wenn der Speicher knapp wird. Dadurch kann es bei Bedarf wieder in den Speicher geschaltet werden.
Um aus dem Zero Credibility Blog zu zitieren
Android, obwohl es unter der Decke ein ziemlich typisches (aber schlankes) Linux ist, hat seinen eigenen Mechanismus zum Umgang mit Bedingungen mit geringem Speicher. Es beendet die Anwendung, gibt ihr aber zunächst die Möglichkeit, ihren Zustand beizubehalten (über eine Reihe von Rückrufen). Beispielsweise kann eine Kartenanwendung einen Breiten- und Längengrad beibehalten, bevor sie beendet wird. Wenn Sie erneut auf die Anwendung zugreifen, wird der Standort zurückgegeben, sodass es so aussieht, als ob die App die ganze Zeit ausgeführt wurde. Tatsächlich wurde die App komplett neu gestartet.
(Hervorhebung von mir)
Das Obige beschreibt, wie ich gesehen habe, dass Anwendungen nach dem Wechsel von Aufgabe zu Aufgabe bestehen bleiben.
Es ist nicht erforderlich, den Inhalt des Speichers zu speichern, da Android nur die aktuellen Daten der App speichert und die App beendet.
Da die anderen Antworten bereits die meisten Fakten abdecken, nur eine kleine Ergänzung: Ich habe die App Swapper für Root-Benutzer bereits als Beispiel in Liams Antwort bearbeitet. Und die Antwort von Compro01 erwähnte bereits die Gefahr, den Flash-Speicher Ihrer SD-Karte zu verschleißen. Jetzt bringen wir beides zusammen:
Wenn Sie die Swapper- App verwenden, um Ihren Swap zu handhaben , wird aus genau diesen Gründen empfohlen, keine Swap-Partition , sondern eine Swap-Datei zu verwenden. Diese Auslagerungsdatei wird dann jedes Mal, wenn Swap aktiviert wird, an einem anderen Ort des Flash-Speichers abgelegt, wodurch vermieden wird, dass immer dieselben Blöcke geschrieben / gelöscht werden, und somit die Lebensdauer Ihres Flash-Speichers verlängert wird.
Also beide vergleichen:
Vor diesem Hintergrund wird klar, warum a) 0M (dh keine Swap-Partition) empfohlen wird und b) überhaupt eine Swap-Partition angeboten wird (für diejenigen, denen es egal ist, neue Karten zu kaufen, aber das gewisse Extra an Geschwindigkeit wollen).
Swap ist im Grunde virtuelles RAM, das vom Linux-Kernel verwendet wird.
Swap in Android wurde verwendet, wenn Geräte über sehr begrenzten RAM verfügten (ich habe es mit meinem LG Optimus GT540 verwendet), um die für das Android-Betriebssystem verfügbare RAM-Menge zu erhöhen.
Android beendet Apps, wenn der Arbeitsspeicher knapp wird - und ist sehr gut darin, dies effizient zu tun, aber auf Geräten mit wenig RAM haben die Leute möglicherweise gesehen, wie ihre Startbildschirm-Apps beendet wurden, und müssen daher eine Weile warten, bis sie zu ihren Startbildschirmen gelangen.
Swap kann entweder über eine Partition oder eine Datei gemountet werden – hauptsächlich auf einem externen (oder internen) Speichergerät. Swap wird normalerweise über die sogenannten Init-Skripte im /etc/init.d
Ordner des Geräts aktiviert, um Swap beim Gerätestart zu mounten/zu aktivieren.
Linux-Desktops verwenden eine Partition für den Austausch, und der Benutzer wird aufgefordert, diese während des Installationsvorgangs zu erstellen.
Eine Datei wird normalerweise auf der SD-Karte oder dem Speichermedium gespeichert. Die Auslagerungsdatei auf Android wird normalerweise von einer App gemountet (und erstellt) (z . B. Swapper für Root-Benutzer ).
Die meisten neueren Geräte sehen keinen Vorteil in der Verwendung von Swap - da sie normalerweise so viel RAM wie ein Desktop-Computer haben (mein SGS2 hat 1 GB!) und daher nicht von mehr virtuellem RAM profitieren würden.
Leider kann die Verwendung von Swap ihren Preis haben – selbst auf Geräten mit wenig RAM, da das Betriebssystem Zeit für das Schreiben auf die SD-Karte aufwenden muss, die normalerweise langsame Lese-/Schreibgeschwindigkeiten hätte. Als solches wird es heutzutage überhaupt nicht mehr verwendet, es sei denn, ein Gerät hat eine obszön kleine Menge an RAM.
Darüber hinaus kann sich die Verwendung von Swap negativ auf die Lebensdauer Ihres Speichergeräts auswirken und sollte mit Vorsicht verwendet werden. Wenn jemand, der liest , Swap verwenden muss (und ich würde davon abraten), dann verwenden Sie eine Datei mit einer App, da der Speicherort der Swap-Datei variiert, um die Lebensdauer der SD-Karte zu maximieren.
intuitiv
Kompro01