B
bingo5
Dauer-User
- 251
Na wie man sieht, lohnt es sich doch noch ab und zu hier im Milestone Forum herum zu schauenfipsy schrieb:Sobald der Prozess im Swap ist, läuft er nicht mehr! Er wird dann quasi in einen Suspend (Wartezustand) versetzt. D.h. es wird der gesamte Prozess (Programmcode mit Heap und all seinen Daten) ausgelagert. Wenn der Code / das Programm wieder benötigt wird, muss es zuerst wieder vom Swap (also i.d.R. der Festplatte) zurück in den Arbeitsspeicher geladen werden. Denn der Prozessor holt sich von dort ja seine Instruktionen ab. Von einer Festplatte kann sich der Prozessor die Instuktionen und Daten nicht direkt holen (logischerweise). Denn sonst bräuchte man ja gar keinen Arbeitsspeicher mehr. Ich bin ziemlich stark davon überzeugt, dass es Linux nicht viel anders machen wird ;-).
Denn ich habe bisher nicht mal mit einem Müden Gedanken dran gedacht, dass die Swap/Auslagerung keine "aktive" RAM Erweiterung sondern nur eine "passive" ist.
Das macht aber durchaus Sinn was du schreibst und scheint auch (nach kurzen google) auch der Richtigkeit zu entsprechen und somit liege ich nun schon seit vielen Jahren falsch
Ich danke dir also dafür, ein Fehlwissen meinerseits korrigiert zu haben
Dennoch muss Swap nicht zwangsweise einen ganzen Prozess verschieben, sondern kann auch nur einzelne Teile verlagern.
Aber dennoch wird jedesmal eine ganzen Reihe an Daten nacheinander geschrieben/gelesen - so dass also doch die Random Rate relativ egal ist, da nicht - wie ich vorher angenommen habe - direkt auf der Festplatte die Zugriffe und Veränderungen (die normal im RAM stattfinden) vorgenommen werden.
Aber nochmal zu der Diskussion bezüglich der Speichergröße für die Swap.
Natürlich nutzt Android die Swap um so mehr wie Platz vorhanden ist und lagert damit auch eigentlich unnötige Programme aus.
Andererseits steht ja die Fragmentierung zur Debatte...
Was jetzt von beiden mehr wiegt, mag ich zwar nicht beurteilen zu können.
Möchte aber noch mal daran erinnern dass mit mit der swapiness einstellen kann wie schnell etwas ausgelagert wird...
Vielleicht hilft eine recht hohe Swap mit einer sehr geringen Swapiness (<10)?