【问题标题】:How to change clock frequency in Android?如何在 Android 中更改时钟频率?
【发布时间】:2011-05-13 10:38:19
【问题描述】:

我是 Android 软件开发的新手。

我想制作一个像SetCPU 这样可以在Android 中操纵CPU 频率的应用程序。

但我找不到一些相关的 API 或资料。

我真诚地想知道以下两件事。

  1. 是否有 API 可以更改 Android 中的 CPU 频率?
  2. 如果没有,Linux 中是否有一些 API?

【问题讨论】:

  • 如果你不知道怎么做,亲爱的上帝,请不要这样做。

标签: android linux cpu frequency


【解决方案1】:

ADB 中的一些命令

设置总督:

adb shell echo "userspace" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

以 KHz 为单位设置频率:

adb shell su -c "echo "702000" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed"
//min frequency
adb shell su -c "echo "384000" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq"  
//MAX frequency
adb shell su -c "echo "384000" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq" 

获取当前CPU频率:

adb shell cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq

显示可用的调控器:

adb shell su -c "cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors"

禁用覆盖cpu在线文件的服务:

adb shell su -c "stop mpdecision" 

必须在启用或禁用核心之前执行此操作。如果系统重新启动,则 mp 决定是否重新启动。

禁用核心:

adb shell su -c "echo "0" > /sys/devices/system/cpu/cpu3/online"

如果这不起作用:

& chmod 444 /sys/devices/system/cpu/cpu1/online 

【讨论】:

  • 在 nexus 5X、Google Pixel 和 Nexus 6P 上没有像 mpdecision 这样的服务。您是否还知道在这些设备上覆盖 CPU 频率的等效服务是什么。
【解决方案2】:

没有用于更改 Android 设备频率的 Java API。做到这一点的唯一方法是弄脏内核。

【讨论】:

    【解决方案3】:

    看来你需要root你的设备

    http://www.pokedev.com/setcpu/

    【讨论】:

      猜你喜欢
      • 2014-10-09
      • 1970-01-01
      • 2010-10-15
      • 1970-01-01
      • 1970-01-01
      • 2017-04-30
      • 2013-05-18
      • 2016-07-03
      • 2019-02-09
      相关资源
      最近更新 更多