2: 2011-07-26 (火) 08:12:27 yuji Attached file: 25Swap |
現: 2020-12-26 (土) 16:07:42 yuji Attached file: 25Zram |
||
---|---|---|---|
Line 2: | Line 2: | ||
**swapパーテーションの利用 [#e28a0791] | **swapパーテーションの利用 [#e28a0791] | ||
/sd-extが使えるように出来たんで,userinit.dの中に&ref(25Swap);を作成して,外部SDに作成してあるswapパーテーションをonしてみる。 | /sd-extが使えるように出来たんで,userinit.dの中に&ref(25Swap);を作成して,外部SDに作成してあるswapパーテーションをonしてみる。 | ||
- | + | #!/system/bin/sh | |
- | しばらく使ってみたんだけど,いろいろなところでスピードが遅くなるんで,swapパーテーションは使うのをやめた :-( | + | # |
+ | # use Swap Partition by Yuji Ueno | ||
+ | # | ||
+ | |||
+ | FindSwap () | ||
+ | { | ||
+ | LS_CMD=ls | ||
+ | SWAPON_CMD=swapon | ||
+ | SED_CMD=sed | ||
+ | SWAPPINESS=20 | ||
+ | MMC=/dev/block/mmcblk1 | ||
+ | if [ ! -b "$MMC" ]; | ||
+ | then | ||
+ | mknod ${MMC} b 179 8 | ||
+ | chmod 600 ${MMC} | ||
+ | for i in 9 10 11;do | ||
+ | mknod ${MMC}p${i} b 179 $i | ||
+ | chmod 600 ${MMC}p${i} | ||
+ | done | ||
+ | fi | ||
+ | if [ "`$SED_CMD -n '$=' /proc/swaps`" -gt "1" ]; | ||
+ | then | ||
+ | echo "Swap appears to be already setup, skipping checks" | ||
+ | return | ||
+ | else | ||
+ | for isitswap in ` $LS_CMD /dev/block/mmcblk1p*` ; do | ||
+ | $SWAPON_CMD $isitswap 2>/dev/null | ||
+ | if [ "$?" = "0" ]; | ||
+ | then | ||
+ | echo "$isitswap is swap" | ||
+ | echo $SWAPPINESS > /proc/sys/vm/swappiness | ||
+ | break | ||
+ | else | ||
+ | echo "$isitswap is not swap" | ||
+ | fi | ||
+ | done | ||
+ | fi | ||
+ | return | ||
+ | } | ||
+ | FindSwap | ||
+ | しばらく使ってみたんだけど,いろいろなところでスピードが遅くなるんで,swapパーテーションは使うのをやめた :-( アクセススピードが速いMicroSDじゃないからかもしれないなぁ。 | ||
compcacheの方が,SC-02Bの場合はCPUパワーがあるので,あっているかもしれない。 | compcacheの方が,SC-02Bの場合はCPUパワーがあるので,あっているかもしれない。 | ||
+ | |||
+ | **zramを使ってみる [#g19578c4] | ||
+ | HT-03Aの時はcompcacheって言ってたのが,zramに変わったらしい。zram(compcache)はメインRAMの一部を仮想メモリに割り当てて,その部分を圧縮・解凍しながら使用するシステムで,パーテーションSwapと同様に,見かけ上のRAMを大きく出来る仕組み。~ | ||
+ | だいぶ前にKernelをzramを使えるようにしたんだけどこの機能を試していなかった。で,この機能を試してみる。~ | ||
+ | とりあえず,/sd-ext/userinit.d/&ref(25Zram);を以下のような内容で作成。 | ||
+ | #!/system/bin/sh | ||
+ | |||
+ | insmod /lib/modules/lzo_decompress.ko | ||
+ | insmod /lib/modules/lzo_compress.ko | ||
+ | insmod /lib/modules/zram.ko num_devices=1 | ||
+ | /sbin/zramconfig /dev/block/zram0 --disksize_kb 262144 | ||
+ | /sbin/zramconfig /dev/block/zram0 --init | ||
+ | mkswap /dev/block/zram0 | ||
+ | swapon /dev/block/zram0 | ||
+ | setprop persist.tweak.vm.swappiness disabled | ||
+ | echo 60 > /proc/sys/vm/swappiness | ||
+ | これで,RAMの256Kbyteを圧縮Swapに割り当てる。~ | ||
+ | swapパーテーションに比べて,CPUパワーがあるためかそんなに全体に速度を損なうことなく見かけ上のRAMを増やすことが出来た。いままで自動的にKillされていたアプリもKillされなくなった。これはなかなかいいかも :-) |