Ich nähere mich gerade der Smartphone- und Android-Welt und habe ein paar Zweifel:
Welche Module (und SW oder FW?) Legen die Richtlinien fest, mit denen eine Komponente des Smartphones, die dies benötigt, mit Strom versorgt wird?
Außerdem
Sind Energieverwaltungsmodule auf Smartphones im Android-Betriebssystem oder in einer speziellen Firmware implementiert?
Natürlich muss die Energieverwaltung auch funktionieren, wenn das Betriebssystem noch nicht geladen ist, aber wer ist dafür verantwortlich?
Und inwieweit kann ich die Energieverwaltung mit einer Anwendung ändern, die innerhalb des Betriebssystems ausgeführt wird?
(Ich hoffe, diese Fragen sind nicht Off-Topic. Können Sie mich bitte an die richtige Stack-Exchange-Site weiterleiten?)
quelle
If you have root access you can change the governor and the allowed CPU clock speeds
: Sie sagen also, dass ein einfacher Prozess mit Root-Rechten entscheiden kann, die CPU zu verlangsamen und die DSP-Spannungen zu ändern? Wenn Sie Zeit haben, können Sie bitte eine etwas strukturiertere Antwort geben? Vielen Dank im Voraus, ich brauche wirklich Ihre Hilfe!Beim Stöbern in Foren und Websites habe ich die folgenden Antworten auf meine Zweifel gefunden. Ich bin nicht ganz zufrieden, aber es hat geholfen, mehr zu verstehen.
Die Energieverwaltung jedes Geräts hängt von einigen
suspend
/resume
Richtlinien ab, die in der Firmware implementiert sind, die das jeweilige Gerät steuert.Dies ist sehr geräteabhängig: Wie und wann sich jedes Gerät ausschaltet (anhält) und aufwacht (wieder aufnimmt), hängt von den HW-Spezifikationen ab. Sie müssen die Datenblätter lesen, um zu verstehen, welche bestimmten Register manipuliert werden müssen, um es anzuhalten / fortzusetzen.
Sie können dieses Material über eine Software in den Treibern der Geräte im Quellcode des Kernels steuern, indem Sie auf einige Funktionen im Formular
<something>_suspend
und zugreifen<something>_resume
.ZB aus dem Quellcode des Kernels des Emulators "Goldfisch":
in Datei
drivers/video/goldfishfb.c
(der Treiber, der für den Bildspeicher verantwortlich ist)Das
early_suspend
schreibt also eine 1 in das RegisterFB_SET_BLANK
, um den Bildschirm auszuschalten, oder eine 0, um ihn wieder einzuschalten.Daher scheint es mir, dass ein Prozess in der Anwendungsausführungsumgebung auf die Gerätetreiber zugreifen und diese beschädigen muss, um die böswillige Energieverwaltung eines Geräts zu manipulieren.
quelle