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
Related Posts
some reviews about my works
boot up Samsung Galaxy S I9000 in 19 seconds
increase browser font size mod RC1 (change text size)
new browser mod - set font size
remove battery fully charged notification icon and sound
getting bored with ur i9000 already? yet more to come!
JPY sms sent time fix works in JS5
freeNANDmod - get more space from NAND - PART IV
freeNANDmod - get more space from NAND - PART III
Free more available disk space from NAND - PART II