[TouchPad Development] show-p1984:
##DISCLAIMER##

Though this is tested and I am using this, and nothing evil happened until now, it might slap you so hard in your face that not even google is able to find you anymore.

No kidding: !Experimental! This does not fix one bug of CM9 nor does it attempt to do so. So don't b*t*h me about that. This is meant as a test for KSM, to see if any problems arise and how much use (performance gain / more free ram) this gives on Android. (theoretically it should be very useful)

For everyone who wants to give it a try:

Bricked-CM9Kang v4

based on AOSP

CM9 #Kangified

:P

What does it give you:

Everything from CM9 + Touchscreen fixes (Dees_Troy27) + KSM (Kernel Samepage Merging) + fixed init.d script autoexecution on bootup (turl)

Bricked v0.4 with KSM support, Default clocks @ 1566/192 ondemand

- OC up to 1914Mhz, Voltage Control via sysfs (SystemTuner, etc), etc, etc.... Look here.

Install:

Do you want a fresh install? Wipe data/factory reset & just flash from recovery.

Already on cm9 and don't want to loose your data? Just flash over your current install without wiping (don't forget to reinstall gapps afterwards).

Download:

v4

ROM + Kernel:

mediafire.com: Click Me

http mirror: Click me

SHA1: 14db526c93962359995ea260c80d2811ba32eaae

Gapps: Click Me

SHA1: 1d277d2d7e802eb13975757df46c09afbaafcd2c

Gappsfixer: Click Me

This removes bad <shared-user> elements from packages.xml and lets android regenerate them. This fixes a problem with gapps signatures. (Just flash it after gapps, there can nothing go wrong)

SHA1: 5b66a2e160922626d67b30b459b5323deb8f549d

#cyanogenmod-touchpad Readme and Gapps:

http://ergh.org/cmtp/

Mirror (Folder by jassycliq):

mediafire.com, adfree: Click Me

What is KSM - Kernel Samepage Merging?

From Wikipedia, the free encyclopedia

Kernel SamePage Merging (KSM) (also: Kernel Shared Memory, Memory Merging) lets system share identical memory pages amongst different processes or virtualized guests. This is done by scanning through the memory finding duplicate pages. The duplicate pair is then merged into a single page, and mapped into both original locations. The page is also marked as "copy-on-write", so the kernel will automatically separate them again should one process modify its data.[1]

KSM was originally intended to run more virtual machines on one host by sharing memory between processes as well as virtual machines. Upon implementation, it was also found to be useful for non-virtualized environments where memory is at a premium [2][3]. An experimental implementation of KSM by Red Hat found that 52 virtual instances of Windows XP with 1GB of memory, could run on a host computer that had only 16GB of RAM [4].

KSM first appeared in the version 2.6.32 Linux operating system kernel [2]. To be effective, the operating system kernel must find similar memory pages held by different processes. As well it needs to decide whether the pages are going to update infrequently enough that SamePage Merging would be an efficient use of processor resources [3]. When first proposed, there were concerns that this feature could be exploit as a security vulnerability (this concern has since been addressed). Another concern is that although memory usage is reduced, CPU usage is increased, thus negating potential increases in performance [1].

References

^ a b "Home Page". lwn.net. kernel.org. Retrieved 2010-08-21.

^ a b "Home Page". IBM DeveloperWorks. IBM. Retrieved 2010-08-21.

^ a b "Home Page". kernel.org. kernel.org. Retrieved 2010-08-21.

^ "Home Page". kernelnewbies. kernelnewbies. Retrieved 2010-08-21.

more to KSM: http://bitcube.co.uk...merging-and-kvm

How to see the Magic happening?

cat /sys/kernel/mm/ksm/full_scans
cat /sys/kernel/mm/ksm/pages_shared
cat /sys/kernel/mm/ksm/pages_sharing
cat /sys/kernel/mm/ksm/pages_to_scan
cat /sys/kernel/mm/ksm/pages_unshared
cat /sys/kernel/mm/ksm/pages_volatile
cat /sys/kernel/mm/ksm/run
cat /sys/kernel/mm/ksm/sleep_millisecs

or just:

cat /sys/kernel/mm/ksm/*

to get all at once.

Check your RAM stats with:

free

Source for KSM implementation:

Android source modifications: Click Me

Kernel source modifications: Click Me

(ofc KSM must be enabled in your kernel config)

Source for Bricked:

Click Me

Thanks to everyone who ever contributed anything (even only a whitespace) to any of the used software.