[MOD] CrossBreeder - Lag-/Entropy+/DNS+/Tether+/Ads-/Censors-/.bit support!!

latest uninstall ZIP

What is CrossBreeder?

rngd from Seeder and qrngd are not compatible with this mod

Code: getprop net.dns1

Code: tail /etc/CrossBreeder/dnrd_root/master

Code: su -c /system/etc/CrossBreeder/REMOVE_TETHER_BOOST

Code: su -c /system/etc/CrossBreeder/INSTALL_TETHER_BOOST

Code: su -c /system/etc/CrossBreeder/REMOVE_DNS_CLIENT

Code: su -c /system/etc/CrossBreeder/INSTALL_DNS_CLIENT

Code: su -c /system/etc/CrossBreeder/DISABLE_ADBLOCK

Code: su -c /system/etc/CrossBreeder/ENABLE_ADBLOCK

Code: su -c "/system/etc/CrossBreeder/zzCrossBreeder FORCE"

Code: su -c /system/etc/CrossBreeder/CHECK_PROCS

Code: su -c /system/etc/CrossBreeder/DISABLE_CROSSBREEDER

Absolutely no guarantees. I'm not responsible or liable for anything that arises out of the use of this, including you out of your chair.

'This software is being distributed with the Aware license. Please allow it to be brought to your kind awareness that buying lesser devices could possibly have a direct positive socio-political impact in some countries where the components are sourced from.If you like this work please help your friends become aware of this too.' - http://forum.xda-developers.com/show....php?t=2521266 ----28/10/2013 -Hi guys,Uploaded the current version with development as it was. Should be very usable with some noticeable usability improvements in the process and services ionice and renice and cgroup ( iffy ) space.Uploaded source of the binaries.License is BSD unless inherited from GPL.Sorry for the terrible coding. Maybe some programmer can take it up and do something good with it.Idcrisis-----QUICK LINKS TO FLASH:- NOTE - Installer clears dalvik cache!It's lightweight and won't consume battery. Users have reported drastic improvements in usability and battery life. It will show noticeable improvements.All you need to try it is custom recovery. It is for all Android devices. ( not x86 ones ).1. It's a big new feature,. A lot of the lag in a lot of apps, apart from the GUI lag, is due to slow DNS querying, specially on the mobile network.CrossBreeder now runs aon the device. So now most of your DNS queries will be served from the cache and if not found, the query will be sent inand the quickest reply will be served to you, hot and transparently. You can read the rationale for this approach - http://ma.ttwagner.com/make-dns-fly-...q-all-servers/ This speeds up network access and networked apps, like Browsers of course, and Tapatalk, Gmail and thousands of others drastically. And removes a lot of the lag where it was due to DNS querying. This will not increase your network or download speed but pages will load much faster.This will future proof your devices as more and more apps start using HTML5 and/or reside completely as web pages or the like.CrossBreeder. Client devices to your device will take advantage of the new DNS. Hence their usage is also improved! In many cases this update might even fix a broken tethering feature on your phone. So if your ROM doesn't have a working tethering support, you an try and install this update. It might magically start working!CrossBreederin an efficient manner by blocking access to the host. It does this using a static block list of known ad sites and behaving as an authoritative DNS server for these sites and redirecting them to a dummy address. CrossBreeder runs a simple web server serving empty images and pages, so ads completely disappear instead of showing an ugly Page/Image Not found error.You can update this block list from an external specialised tool like Adaway if you need. Here is a guide ( http://forum.xda-developers.com/show...php?p=42711244 CrossBreeder now includes thefunctionality. This allows you to circumvent DNS based censors as used by most authoritarian countries. This basically works by bypassing your ISP's DNS servers and querying the 2 Google DNS servers and 2 L3 DNS servers only. These are usually faster anyway, more so due to the caching and parallelizing nature of the query. Thus if your ISP is blocking websites without telling you, you have a way out if this. You can enable it using the following command:su -c "/system/etc/CrossBreeder/ENABLE_BYPASS_ISP"and rebooting. You can read this for some more info ( http://forum.xda-developers.com/show...postcount=2748 You can also choose your custom DNS servers by updating the /etc/CrossBreeder/REMOTE_DNS file with each custom DNS server in a separate line.NOTE: CrossBreeder DNS (Boost/Adblock/Censor Bypass) will not work (as in it won't be used ) if your ISP APN contains an entry for a proxy server. Do edit the APN and remove the proxy entry and see if you can browse fine. That will allow CrossBreeder DNS to work.CrossBreeder also renames any existing /etc/hosts file on your device. Testing has proven that keeping a system wide /etc/hosts file as is used by most other Ad blocking software actually slows down your system. So it is recommended to use this method instead. Check this out for the demonstration of the slowdown and how to test it yourself - http://forum.xda-developers.com/show...php?p=41877518 In order to achieve all this DNS related functionality, CrossBreeder relies on the excellent open source utilities -and2.for lag reduction ala Seeder. The whole OS reads either /dev/random or /dev/urandom and both need entropy. However this mod uses a completely different, lightweight and efficient random number generator called. This sharply reduces cpu consumption and corresponding battery life loss compared to Seeder. It also does a better job at keeping entropy levels high hence your device is more responsive. It doesn't run in a CPU intensive loop either. The extend queue functionality has also been added to CrossBreeder. See here for another rationale favouring Havege compared to Rngd - ( http://code.google.com/p/csrng/ - Look for the limitations.)3.specially the wakeup threshold ones so read blocks are released instantly and writes never wake up as we have an external entropy generator. And a host of other fail safe and working tweaks from the community for each key subsystem. ( one can look inside /etc/CrossBreeder/zzCrossBreeder ).4.. Link it to non-blocking /dev/urandom. Since /dev/random is blocking and designed to protect us from Quantum alien cryptographers with mathematical certainty and urandom is non blocking pseudo-random device that most apps and OSs are using anyway and with Haveged running, is as secure anyway as it's very difficult to empty the entropy pool faster than Havege can replenish it. Pre ICS devices have a lot to gain with this but ICS+ devices show visible gains too.5.- CrossBreeder now supports linking both your random devices to the extremely fast alternative - Frandom ( http://billauer.co.il/frandom.html ). This module is orders of magnitude (10-50 times) faster than the standard character devices ( Check this out - http://forum.xda-developers.com/show...&postcount=134 ). The erandom character device also installed by Frandom doesn't use up system entropy at all on top of being fast. You will need to ask your ROM developer to develop the kernel module for you and then place it in /system/lib/modules. CrossBreeder will then try and load it and if successful, make all the necessary adjustments so that both /dev/random and /dev/urandom are pointing to /dev/frandom and /dev/erandom respectively. The speed benefits are to be seen to be believed. But since each ROM requires a unique kernel module, this option is left optional ( but auto detect ). Advanced users can even try and load the frandom module built for other kernels if they don't have one readily available for their own kernel version using the Punchmod utility. Read this: http://forum.xda-developers.com/show...5#post41920265 Your thoughts and experiences welcome and actively solicited.- If you want to install it automatically please flash the attached file in recovery. That's it. You're done!*** WARNING - Other entropy reduction apps like rngd standard and. In case you have Seeder running please disable it. You can run the app to see the entropy levels though. This mod blocks all other rngs so Seeder may not run. The nature of the /dev/random device is now faster non blocking link to urandom and different to what these apps expect. They would otherwise go into a CPU consumption loop at 60-70% cpu usage. There is no loss of functionality by disabling other rngs as this is a replacement and an improvement***1. VALIDATION and TROUBLESHOOTING:You can check your DNS boost functionality by running the following command:It should report 0.0.0.0Then to verify Adblock you can select any one host from the blocked hosts file using the command:Pick one from there and browse to it in your browser. You should get a blank spaceIf you're experiencing any issues with your tethering, then you can first try and disable the tethering using:and rebooting.You can re-enable it with:and rebooting.Similarly if you're getting any issues with browser not reaching pages etc. then you can try and disable the entire DNS speedup functionality using:and rebooting.You can re-enable it with:and rebooting.Also of note is the. CrossBreeder now uses it's own Adblock file in /etc/CrossBreeder/dnrd_root/master ( NOTE - CHANGED FROM PREVIOUS VERSION). It also serves up these blocks in aso you don't get an ugly 'Page not found' error instead of every ad. This is quite unique. If you want to disable Adblock to save around 3 MB of RAM on low end devices, you can run the command:You can re-enable it with:The biggest improvements are in general usability of apps, both local and network based.2. You can check your entropy values with this tool:or use this method for more fine grained graphs: http://forum.xda-developers.com/show...php?p=38509664 You should get values moving to 4000 regularly with this mod.Also of some use is this Lag Test app: Lag Test http://db.tt/eBHYJWYn ( Thanks MW86 ). This is for generally testing the CPU based GUI rendering functionality. The aim is to approach 60 fps, but there isn't a guaranteed correlation with CrossBreeder and your FPS result as of now. It is mostly related to your Governor but CrossBreeder certainly helps.2. If for some reason, your entropy values aren't hovering around 4096 then the app most probably didn't start automatically. You can try and run it manually using:If the entropy values go up to around 4096 and stay there, it's working. CrossBreeder is now in it's separate directory and not dependent on your init.d support. You can make it run automatically on boot using an app like SManager from the Play store, just remember to check both 'BOOT' and 'ROOT' for the execution.3. If you're still getting issues, you can run the collection script:(if it hangs you can close the window and run it again) and post the resultantfile here in this thread or anywhere else and post here pointing to it please. I will try to find a solution or post a bugfix soon.You can also disable CrossBreeder if you have any problems using:4. If you tried (2) and (3) above and it still doesn't work for you or you would still like to uninstall the mod, then please flash the CrossBreeder_Uninstall.zip.1. It is recommended to disable all animations in your System settings and Launcher settings ( or keep them at 0.5 ). Also recommended is to disable haptic feedback and keypress sounds in your system, launcher and keyboard ( especially on low memory phones).Some software recommendations include the Holo Launcher as a launcher replacement, HoloWeb Browser ( version 1.4 only) or Naked browser and exDialer as a dialer replacement.These recommendations are general in nature and are not required for normal CrossBreeder functionality.Please feel free to include CrossBreeder in your ROM/kernel. Do include a link to this thread in your credits. The best way to include it has not been given much thought so I'd like to recommend that you install it as the last thing and then package /system completely. If you are distributing files alone, then I guess the best way would be to include (from a ROM with CrossBreeder installed) :1. /system/etc/CrossBreeder - The entire directory structure with perms intact2. /system/bin/dnsmasq3. /system/bin/dnsmasq_dhcp4. /system/xbin/haveged5. /system/etc/hosts6. /system/bin/debuggerd7. /system/xbin/debuggerd8. /data/rngd.pid ( as a directory with permissions intact. Important or the device will crawl if your user installs Seeder/RNGD ).9. Remove any /system/[x]bin/*rngdAlso do make sure that the debuggerd entry exists in /init.rc and before the zygote/system_server entry.And it is a very very strong recommendation to use a CrossBreeder version after 6.30.13. Earlier versions just don't cut it. You and your users deserve better.Credits:1. This software is dedicated to the entire Open Source community.2. DNRD3. DNSMasq ( http://thekelleys.org.uk/dnsmasq/doc.html 4. Havege ( http://irisa.fr/caps/projects/hipsor/ 5. Seeder. ( http://forum.xda-developers.com/show...php?p=33999592 ). Thunderbolt tweaks for I/O tweaks and governor tweaks ( http://forum.xda-developers.com/show...php?p=23827087 6. V6 Supercharger for network buffer size tweaks and always for a general idea of what to do ( http://forum.xda-developers.com/showthread.php?t=991276 ).7. Pixelserv ( Thanks Fivefour and Wonderwoofy for the referrals)