前回MediaPad T2 7.0 Proを高速化する最終版のガイドを書いたが、Amazon Fire (5th gen)に関する説明も簡単にしておく。
どうやったらMediaPad T2 7.0 Proを使い物にできるのか【最終版その1】
どうやったらMediaPad T2 7.0 Proを使い物にできるのか【最終版その2】
Amazon Fire (5th gen)にはカスタムROMがあるので、それを導入することで最小限のシステムを作ることができる。お勧めはinit.dが使えるggow氏版のLineageOS 12.1。以下はこのROMを使って、高速化の解説をする。
(TWRPを使う場合は、こちらを参照)
ROMとOpen GAPPSのNano版をインストールし、MediaPadと同様に不要なアプリや重複アプリを/system/appと/system/priv-appから削除する。
Fireは内部ストレジが少なく、MediaPad T2 7.0 Proのようにユーザーアプリを積極的にRAMから解放しないので、Playストアからインストール後、/system/appに移動させたのは以下の最低限のGoogleアプリのみ。
com.android.chrome
com.google.android.apps.docs
com.google.android.apps.photos
com.google.android.calculator
com.google.android.calendar
com.google.android.gm
com.google.android.inputmethod.latin
com.google.android.keep
com.google.android.music
com.google.android.youtube
Fireの/cacheパーティションは242.1MBで、やはり使われていないので、今度もスワップファイルに活用する。Low Memory Killの設定はMediaPad T2 7.0 Proと同じ。FireのCPUは4コアでかなり遅いので、ガバナーはperformance、常時最大周波数1.3MHzで動作させる。
LineageOS 12.1には起動時にユーザースクリプトを実行する/system/etc/90userinitというスクリプトがある。今回はこれを書き換える。書き換え後の内容は以下の通り。以上。
#!/system/bin/sh
#### 追加部分 ####
#200MBのスワップファイルの設定
swapoff /dev/zram0
dd if=/dev/zero of=/cache/swapfile bs=$((1024 * 1024)) count=200
chmod 644 /cache/swapfile
mkswap /cache/swapfile
swapon /cache/swapfile
sysctl -w vm.swappiness=10
#60秒間待機
sleep 60
#設定ファイルの所有権・権限を設定
chmod 644 /sys/module/lowmemorykiller/parameters/minfree
chmod 644 /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
chmod 644 /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
chmod 644 /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor
chmod 644 /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor
chmod 644 /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
chmod 644 /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq
chmod 644 /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq
chmod 644 /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq
chown root:root /sys/module/lowmemorykiller/parameters/minfree
chown root:root /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
chown root:root /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
chown root:root /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor
chown root:root /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor
chown root:root /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
chown root:root /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq
chown root:root /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq
chown root:root /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq
#Low Memory Killの設定
echo "6400,8960,14080,17920,25600,30720" > /sys/module/lowmemorykiller/parameters/minfree
#CPUガバナーの設定
echo "performance" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
echo "performance" > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
echo "performance" > /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor
echo "performance" > /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor
#CPUコアの最低動作周波数を設定
echo "1300000" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
echo "1300000" > /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq
echo "1300000" > /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq
echo "1300000" > /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq
#### 追加部分終了 ####
#### オリジナルの部分 ####
# call userinit.sh if present in /data/local
if [ -e /data/local/userinit.sh ];
then
log -p i -t userinit "Executing /data/local/userinit.sh";
/system/bin/sh /data/local/userinit.sh;
setprop cm.userinit.active 1;
fi;