Zunächst eine kleine Theorie. Was ist RAM und wofür ist es in einem Smartphone? In einfachen Worten ist dies der Speicher, in dem alle laufenden Anwendungen, ihre Daten und das Betriebssystem selbst gespeichert sind!
Je mehr RAM Ihr Gerät hat, desto komfortabler und angenehmer ist es natürlich, mit ihm zu interagieren.
Die meisten iPhone-Nutzer wissen nicht einmal, wie viel RAM sie in ihrem Smartphone haben. Dies liegt an der Tatsache, dass Benutzer mit Multitasking in ihren Smartphones vertraut sind und lediglich die reibungslose und schnelle Arbeit nutzen und genießen. Wie schafft es Apple, mit 4 GB RAM eine gute Leistung zu erzielen?
Könnte es das System sein? In der Tat geschehen keine Wunder, Android und iOS benötigen ungefähr die gleiche Menge an RAM. Zum Beispiel hat vor ein paar Jahren ein ausländischer Android Authority-Kanal einen detaillierten Vergleich durchgeführt. Der Autor nahm zwei Smartphones auf iOS - ein iPhone 7 und auf Android - ein Nexus 5x mit der gleichen RAM-Größe - 2 GB. Das iPhone 7 verfügt seit dem Start über WENIGER freien Arbeitsspeicher als ein Android-Smartphone: etwa 750 MB gegenüber 1,2 GB für das Nexus. Dies ist jedoch bis zu dem Moment, an dem Sie eine Ihrer Anwendungen starten. Wir haben den Test auf dem iPhone 11 und Pixel 3 mit dem Pixel 4 wiederholt. Nun stellt sich heraus, dass die Zahlen vergleichbar sind: Das iPhone benötigt ungefähr 2 GB RAM und das Pixel ungefähr 2,4 GB.
Okay, vielleicht liegt es daran, dass Android-Apps mehr RAM-Speicherplatz beanspruchen? Schließlich liebt Apple Entwickler und sie erwidern dies. Aber auch nicht: In vielen Fällen ist die Größe des belegten Speicherplatzes im RAM unter iOS und Android ungefähr gleich, aber in einigen Fällen belegen Anwendungen unter iOS fast 1,5 bis 2 Mal weniger RAM! Dies ist höchstwahrscheinlich auf den optimierten ausführbaren Code der Anwendung zurückzuführen, da die Sprachen zum Schreiben von Anwendungen sehr unterschiedlich sind.
Bei der Berechnung belegen Android-Apps insgesamt nur 6% mehr RAM-Speicherplatz.
Dies ist jedoch nur der Anfang, da viele Benutzer von Apfelprodukten „Optimierungslösungen!“ Sagen. Wie sich herausstellte, steckt darin etwas Wahres!
Beide Geräte arbeiten blitzschnell mit Anwendungen, mit einem Android ist alles klar, alles ist im RAM gespeichert, aber wie geht das iPhone mit seinen erbärmlichen 4 Gigabyte um? Die ganze Magie liegt in der Arbeit von iOS mit RAM. Grundsätzlich haben sowohl iPhone als auch Android ungefähr den gleichen Speicherplaner. Wenn das Smartphone zum Zeitpunkt des Starts einer neuen Anwendung einfach keinen freien Arbeitsspeicher hat, wird einer der zuvor gestarteten weggeworfen und der Moment geöffnet, den Sie gerade benötigen!
In der Welt der Computer verfügt das Windows-Betriebssystem über eine Auslagerungsdatei (pagefile.sys), die auch als Auslagerung bezeichnet wird (der Begriff ist in Englisch geschrieben - Auslagerung). Dies ist der Speicherplatz auf Ihrer Festplatte, auf dem das System nicht verwendete Daten aus dem RAM verschiebt. Um sie nicht im RAM zu speichern, werden lang laufende Anwendungen einfach auf die Festplatte übertragen, wodurch Speicherplatz für einen anderen Chrome-Tab frei wird. PK-Bojaren verstehen, was ich meine.
Auf Smartphones ist alles etwas komplizierter, viele Smartphones haben immer noch nicht die schnellsten Flash-Laufwerke im permanenten Speicher. Hinzu kommt, dass der Flash-Speicher über eine relativ kleine Lese- und Schreibressource verfügt, sodass Smartphone-Hersteller auf eine andere Implementierung zurückgegriffen haben!
Stellen Sie sich eine solche Situation vor: Wir haben 4 GB RAM, 5 Anwendungen sind geöffnet, der Speicher ist bereits voll. Wie können wir eine andere Anwendung starten, ohne eine der fünf zu schließen, dh die bereits geöffneten. Die Sache ist, dass sowohl iOS als auch Android auch den sogenannten Compressed SWAP haben - mit Komprimierung, ähnlich wie der Archivierer. Die Anwendung wird im RAM komprimiert, das System wählt die umfangreichsten Anwendungen aus, sei es ein großes oder zwei kleine Spiele. Die Komprimierung führt zu bis zu 50% mehr Speicherplatz, und jetzt können Sie eine andere Anwendung starten.
Dieses Schema funktioniert sowohl auf dem iPhone als auch auf Android, aber Apple ist noch einen Schritt weiter gegangen. Sie fanden heraus, wie der Speicherplatz in separate Seiten unterteilt werden kann - 16-KB-Blöcke, die alle Informationen enthalten können. Eine solche Seite kann als schmutzig oder sauber markiert werden. Clean - Speicher, der nicht mehr verwendet wird (dh, keine Objekte verweisen mehr darauf, und Sie können ihn sicher entladen). Später kann es von der Festplatte geladen werden ("page out"). Dieser Speicher enthält Frameworks, ausführbaren Code und schreibgeschützte Dateien.
Beispielsweise können solche Seiten Spieltexturdaten enthalten, die von der Anwendung auch nach dem Neustart aus dem Hintergrund nicht verwendet werden. In anderen Anwendungen können es sich auch um andere AR-Ticker, Masken und andere Codeblöcke handeln, die die Anwendung erst verwendet, wenn der Benutzer wiederverwendet wird. startet das Programm aus dem Hintergrund.
Schmutziger Speicher, der noch in der Anwendung verwendet wird, kann nicht entladen werden. Wenn die Anwendung in den Hintergrund wechselt, wird der saubere Speicher einfach entladen und der schmutzige Speicher mit zwei Komprimierungsmethoden komprimiert:
- Pufferkomprimierung - Verwendet eine einstufige Dateikomprimierungsmethode. Diese Methode wird zum Komprimieren kleiner Dateien mit bis zu 8 MB verwendet.
- Stream-Komprimierung - Verwendet mehrere Schritte zum Komprimieren von Dateien, einschließlich des erneuten Komprimierens zuvor komprimierter Dateien, wodurch es sich ideal zum Komprimieren großer Dateien eignet.
Angenommen, wir haben eine Instagram-Anwendung, die 300 MB RAM benötigt. Der erste Schritt besteht darin, den sauberen Speicher zu löschen, den die Anwendung auf Lager hatte und der nicht mehr benötigt wird. Die Größe im RAM wird auf ca. 170 MB reduziert. Das Betriebssystem greift dann auf eine von zwei Methoden zurück, um verschmutzten Speicher zu komprimieren. Dank eines ausgeklügelten Komprimierungsalgorithmus wird der verschmutzte Speicher von 170 Megabyte auf eine beeindruckend kleine Größe komprimiert - weniger als 10 MB! Hersteller von Smartphones auf Android-Basis kamen wiederum mit einer einfacheren Lösung aus der Situation heraus, um den RAM zu vergrößern und weniger komprimierten Swap zu verwenden. Es ist also Testzeit. Wir haben Geräte verschiedener Generationen genommen - iPhone 11 und Pixel 3 - aber beide mit 4 GB. Mal sehen was passiert.
Pixel denkt an drei Spiele. Begann sie beim Starten des vierten aus dem Speicher zu entladen.
Das iPhone unterstützt sechs Spiele vollständig. Am siebten begann ich langsam zu entladen, aber nicht alle. Alle fingen erst im achten Spiel an zu fliegen.
Und hier kommen wir zum Höhepunkt der Frage: Sie müssen verstehen, warum das iPhone Daten im RAM so schnell komprimiert. Und der Punkt ist dies. Um diesen Vorgang schnell ausführen zu können, benötigen Sie einen leistungsstarken Prozessor mit leistungsstarken Big Cores!
Wenn wir uns die Screenshots des GeekBench 5-Benchmarks ansehen, werden wir die 1,5-fache Überlegenheit des A13 Bionic gegenüber dem Snapdragon 865 sehen, und der A14 Bionic wurde noch nicht einmal veröffentlicht! Die Leistung pro Datenstrom war schon immer der Haupttrumpf der Apple-Prozessoren! Das große Problem von Android-Smartphones ist, dass sie alle auf sehr unterschiedlicher Hardware basieren. Die Hersteller sind gezwungen, das System für schwächere Geräte zu optimieren, die einfach keine so beeindruckende Prozessorleistung oder keinen so schnellen Speicher haben. Obwohl es bereits einige Fortschritte von Qualcomm gibt.
Selbst bei der Präsentation von Snapdragon 855 wurde festgestellt, dass sich das Unternehmen auf einen Hochleistungskern (Prime Core) konzentrierte, der eine erhöhte Frequenz und Cache-Größe aufweist. Dies reicht jedoch nicht aus, um Apple-Chips einzuholen.
Ich denke jetzt haben viele verstanden, warum das iPhone nicht so viel RAM benötigt. Größe ist nicht die Hauptsache, es ist besser, mehr Geld in den Softwareteil zu investieren und die Ressourcen Ihrer Hardware aufgrund intelligenter Algorithmen zum Komprimieren von Dateien im RAM richtig zuzuweisen.