after playing with Andriod for a month, I found a way to speed up the Android system by creating loop devices, no data2sd required
no more lags, smooth scrolling/zooming in and out in default browser with a web page contains more than 170 images, much faster cache for browser, market and other apps retrieval and listing
here's how:
- create an empty file with dd (i chose -b 4096 -m 1)
- mount it to loopx and format it with ext2 (busybox)
- create mount points and create links, eg
mount -o rw,noatime,nodiratime /dev/loop0 /dbdata/dbdataimage
then mv files and folders to /dbdata/dbdatimage
so, instead of reading /dbdata/databases/com.1.2.3, it will be linked to /dbdata/dbdataimage/databases/com.1.2.3
- finally write a script to mount them on boot by replacing playlogos1
simply speaking, is to run on an ext2 file block in rfs, and that's all for the trick!!
WARNING:
- i did it for /cache, /dbdata and /data only
- empty files, folders, and sym links will be deleted by the system under /cache
- dont reboot the phone when u've temporarily moved /dbdata/databases to a slow partition like /data
personally, i moved /data/data and /data/dalvik-cache to /dbdata and moved browser and market cache files to /cache
it's not for the benchmark only, instead, it has very good effects on ur phone's io
for the loop device:
busybox mknod /dev/loop0 b 7 0
busybox losetup /dev/loop0 /dbdata/dbdata.img
busybox mkfs.ext2 /dev/loop0
then mount it
and, here's my mount output:
rootfs / rootfs ro 0 0
tmpfs /dev tmpfs rw,mode=755 0 0
devpts /dev/pts devpts rw,mode=600 0 0
proc /proc proc rw 0 0
sysfs /sys sysfs rw 0 0
/dev/block/stl6 /mnt/.lfs j4fs rw 0 0
tmpfs /sqlite_stmt_journals tmpfs rw,size=4096k 0 0
none /dev/cpuctl cgroup rw,cpu 0 0
/dev/block/stl9 /system rfs rw,vfat,llw,check=no,gid/uid/rwx,iocharset=utf8 0 0
/dev/block/mmcblk0p2 /data rfs rw,nosuid,nodev,noatime,nodiratime,vfat,llw,check= no,gid/uid/rwx,iocharset=utf8 0 0
/dev/block/stl10 /dbdata rfs rw,nosuid,nodev,noatime,nodiratime,vfat,llw,check= no,gid/uid/rwx,iocharset=utf8 0 0
/dev/block/stl11 /cache rfs rw,nosuid,nodev,noatime,nodiratime,vfat,llw,check= no,gid/uid/rwx,iocharset=utf8 0 0
/dev/block/stl3 /efs rfs rw,nosuid,nodev,vfat,llw,check=no,gid/uid/rwx,iocharset=utf8 0 0
/dev/loop0 /dbdata/dbdata1 ext2 rw,noatime,nodiratime,errors=continue 0 0
/dev/loop2 /cache/cache1 ext2 rw,noatime,nodiratime,errors=continue 0 0
/dev/loop2 /cache/market ext2 rw,noatime,nodiratime,errors=continue 0 0
/dev/loop2 /cache/browser ext2 rw,noatime,nodiratime,errors=continue 0 0
/dev/block//vold/179:1 /sdcard vfat rw,dirsync,nosuid,nodev,noexec,uid=1000,gid=1015,f mask=0102,dmask=0002,allow_utime=0020,codepage=cp4 37,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0
/dev/block//vold/179:9 /sdcard/sd vfat rw,dirsync,nosuid,nodev,noexec,uid=1000,gid=1015,f mask=0000,dmask=0000,allow_utime=0022,codepage=cp4 37,iocharset=iso8859-
1,shortname=mixed,utf8,errors=remount-ro 0 0
- no need to deal with /data
- the major thing is /dbdata/databases
- it wont have impact when u connect it to ur pc/kies since kies only deal with /sdcard and /sdcard/sd only, which both r out of my concern
- to see the improvement, simply do a dd and u'll see the difference
what suprised me is that, i found in one of the taiwan's forum, ppl called it "Hong Kong's Lag Fix" (香港版卡三爽)
more info (chinese)
more info
no more lags, smooth scrolling/zooming in and out in default browser with a web page contains more than 170 images, much faster cache for browser, market and other apps retrieval and listing
here's how:
- create an empty file with dd (i chose -b 4096 -m 1)
- mount it to loopx and format it with ext2 (busybox)
- create mount points and create links, eg
mount -o rw,noatime,nodiratime /dev/loop0 /dbdata/dbdataimage
then mv files and folders to /dbdata/dbdatimage
so, instead of reading /dbdata/databases/com.1.2.3, it will be linked to /dbdata/dbdataimage/databases/com.1.2.3
- finally write a script to mount them on boot by replacing playlogos1
simply speaking, is to run on an ext2 file block in rfs, and that's all for the trick!!
WARNING:
- i did it for /cache, /dbdata and /data only
- empty files, folders, and sym links will be deleted by the system under /cache
- dont reboot the phone when u've temporarily moved /dbdata/databases to a slow partition like /data
personally, i moved /data/data and /data/dalvik-cache to /dbdata and moved browser and market cache files to /cache
it's not for the benchmark only, instead, it has very good effects on ur phone's io
for the loop device:
busybox mknod /dev/loop0 b 7 0
busybox losetup /dev/loop0 /dbdata/dbdata.img
busybox mkfs.ext2 /dev/loop0
then mount it
and, here's my mount output:
rootfs / rootfs ro 0 0
tmpfs /dev tmpfs rw,mode=755 0 0
devpts /dev/pts devpts rw,mode=600 0 0
proc /proc proc rw 0 0
sysfs /sys sysfs rw 0 0
/dev/block/stl6 /mnt/.lfs j4fs rw 0 0
tmpfs /sqlite_stmt_journals tmpfs rw,size=4096k 0 0
none /dev/cpuctl cgroup rw,cpu 0 0
/dev/block/stl9 /system rfs rw,vfat,llw,check=no,gid/uid/rwx,iocharset=utf8 0 0
/dev/block/mmcblk0p2 /data rfs rw,nosuid,nodev,noatime,nodiratime,vfat,llw,check= no,gid/uid/rwx,iocharset=utf8 0 0
/dev/block/stl10 /dbdata rfs rw,nosuid,nodev,noatime,nodiratime,vfat,llw,check= no,gid/uid/rwx,iocharset=utf8 0 0
/dev/block/stl11 /cache rfs rw,nosuid,nodev,noatime,nodiratime,vfat,llw,check= no,gid/uid/rwx,iocharset=utf8 0 0
/dev/block/stl3 /efs rfs rw,nosuid,nodev,vfat,llw,check=no,gid/uid/rwx,iocharset=utf8 0 0
/dev/loop0 /dbdata/dbdata1 ext2 rw,noatime,nodiratime,errors=continue 0 0
/dev/loop2 /cache/cache1 ext2 rw,noatime,nodiratime,errors=continue 0 0
/dev/loop2 /cache/market ext2 rw,noatime,nodiratime,errors=continue 0 0
/dev/loop2 /cache/browser ext2 rw,noatime,nodiratime,errors=continue 0 0
/dev/block//vold/179:1 /sdcard vfat rw,dirsync,nosuid,nodev,noexec,uid=1000,gid=1015,f mask=0102,dmask=0002,allow_utime=0020,codepage=cp4 37,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0
/dev/block//vold/179:9 /sdcard/sd vfat rw,dirsync,nosuid,nodev,noexec,uid=1000,gid=1015,f mask=0000,dmask=0000,allow_utime=0022,codepage=cp4 37,iocharset=iso8859-
1,shortname=mixed,utf8,errors=remount-ro 0 0
- no need to deal with /data
- the major thing is /dbdata/databases
- it wont have impact when u connect it to ur pc/kies since kies only deal with /sdcard and /sdcard/sd only, which both r out of my concern
- to see the improvement, simply do a dd and u'll see the difference
what suprised me is that, i found in one of the taiwan's forum, ppl called it "Hong Kong's Lag Fix" (香港版卡三爽)
more info (chinese)
more info
ConversionConversion EmoticonEmoticon