Verbirgt Android eine gewisse Menge an RAM vor dem Benutzer?

Ich habe ein neues Tablet gekauft, aber Android (2.3.1) zeigt an, dass es nur 150 MB von 256 MB frei hat und 512 MB haben sollte.

Ich habe die Datei /proc/meminfo, MemTotal-Informationen überprüft. Es werden nur 256 MB angezeigt. Besteht die Möglichkeit, dass Android 256 MB RAM vor dem Benutzer „versteckt“ hat?

Installieren Sie "Terminal Emulator" von Market und führen Sie diesen Befehl aus: free -m..
Das Einfügen des Modells könnte hilfreich sein.
Hallo, das Terminal kann den Befehl nicht finden. Tablet ist GoClever R93 - goclever.com/bg/en/tab_r93.html#specification

Antworten (3)

Dies ist in der Embedded-Welt keine Seltenheit. Prominentes Beispiel ist das Samsung Galaxy S , das mit 512 MB RAM beworben wird. Aber nur etwas 300 sind tatsächlich für das Betriebssystem verfügbar. Ich glaube, der andere Teil wird für die (starke) GPU verwendet.

Dies führt zu Effekten, bei denen ein ähnliches Gerät schneller ist. Zum Beispiel haben das HTC Desire/Nexus One beide 512 MB (576 MB für das Desire) und spielen insgesamt in der gleichen Liga wie das Galaxy S, aber IMHO sind sie in vielen Situationen schneller als das Galaxy S. Aber ich bin mir nicht sicher, ob es daran liegt des "beschissenen" Stock-ROM des SGS oder wegen des RAM-Unterschieds.

Nur neugierig, wo kann ich mehr darüber auf geräteunabhängige Weise lesen?
@Flow, es besteht eine gewisse Unsicherheit darüber, ob der versteckte RAM von der GPU oder dem Android-Kernel verwendet wird. Wie können wir das sicher wissen?

Android verbirgt keine gewisse Menge an RAM vor dem Benutzer.

zeigt, dass es nur 150 MB von 256 MB frei hat und 512 MB haben sollte.

Das ist bei billigen chinesischen Geräten durchaus üblich, zwei Szenarien fallen mir ein:

  1. Der Kernel ist mit einem zweigeteilten Speichermodell aufgebaut, die Hälfte davon wird vom Kernel belegt, die andere Hälfte wird von Android belegt, auch bekannt als 2G VMSPLIT, 2 GB Adressraum für Kernel, 2 GB Adressraum für Android und Benutzer-Apps.
  2. Der Chipsatz-Controller für den Zugriff auf das RAM ist "gesperrt". Es gibt Möglichkeiten, den Chipsatz-Controller zu "entsperren", aber leider ist es sehr schwierig, diese Informationen zu erhalten. Es gibt ein Tool, das, wie ich hinzufügen muss, sehr schwierig zu bedienen und auch nicht gerade freundlich ist, PSAS IIRC oder eine der Varianten davon.

Ich kann ein Mobilteil zitieren, das dieses Problem hat – Zte Blade, es gibt zwei Varianten davon, die chinesische Variante (mit 512 MB und nur 256 MB verfügbar, der Rest gesperrt) und die europäische Variante, die tatsächlich 512 MB hat – wenn auch begrenzt und abhängig davon die Region innerhalb Europas.

Leider können diese auf der Platine verwendeten Chipsätze aus unerfindlichen Gründen entweder mit dem Rest des RAM "gesperrt" renoviert werden oder sind ein billiger Klon des Originals.

Es gab verschiedene Berichte über Modaco darüber, als es versuchte, den Rest des RAM in den chinesischen (und einigen europäischen) Varianten des Zte Blade zu "entsperren", aber IIRC, es war nicht erfolgreich.

Das einzige, was getan werden kann, um dies zu kompensieren, ist entweder, Ihren eigenen Kernel mit VMSPLIT 3G zu rollen und ihn zu flashen, oder im Internet zu suchen, um herauszufinden, ob ihn jemand freigeschaltet hat und welche Schritte erforderlich sind, IIRC das verwendete Tool war PSAS, das tatsächlich mit dem Chipsatz kommunizieren kann - ich habe gehört, dass einige Hardcore-Hacker es benutzt haben, um das Mobilteil auf diese Weise zu modifizieren und zu verändern.

Gibt es einen Grund für den Hersteller, die Hälfte des Arbeitsspeichers zu sperren?

Sie können dafür GameGuardian verwenden . Root brauchen.

Registerkarte Speichereditor - Menü - Speicherauszug - Bereich und Ordner auswählen - OK drücken - auf Toast "Dump-Ende" warten.

Hier einige Videobeispiele, wie das geht: