Entropy pool lag reducer (tweak) - Sony Tablet S

http://forum.xda-developers.com/showthread.php?t=1987032
just found this over in one of the other forums. It seriously reduces lag and also pretty much gets rid of screen flicker and the reloading of apps everytime you go to the homescreen. ABSOLUTELY awesome.
Heres the post so you know what it does click the link to goto the original post and dl files.
Hey everyone,
So, I was experiencing significant lag as we all do from time to time, and decided I was going to get to the bottom of it.
After tracing and debugging for hours, I discovered the source of 90% of Android's lag. In a word, entropy (or lack thereof).
Google's JVM, like Sun's, reads from /dev/random. For all random data. Yes, the /dev/random that uses a very limited entropy pool.
Random data is used for all kinds of stuff.. UUID generation, session keys, SSL.. when we run out of entropy, the process blocks. That manifests itself as lag. The process cannot continue until the kernel generates more high quality random data.
So, I cross-compiled rngd, and used it to feed /dev/urandom into /dev/random at 1 second intervals.
Result? I have never used an Android device this fast.
It is literally five times faster in many cases. Chrome, maps, and other heavy applications load in about 1/2 a second, and map tiles populate as fast as I can scroll. Task switching is instantaneous. You know how sometimes when you hit the home button, it takes 5-10 seconds for the home screen to repopulate? Yeah. Blocking on read of /dev/random. Problem solved. But don't take my word for it .. give it a shot!
Update! I've built a very simple Android app that bundles the binary, and starts/stops the service (on boot if selected). I'll be adding more instrumentation, but for now, give it a shot! This APK does not modify /system in any way, so should be perfectly safe.
This is my first userspace Android app, so bear with me!
Note that this APK is actually compatible with all Android versions, and all (armel) devices. It's not at all specific to the Captivate Glide.
Caveats
There is a (theoretical) security risk, in that seeding /dev/random with /dev/urandom decreases the quality of the random data. In practice, the odds of this being cryptographically exploited are far lower than the odds of someone attacking the OS itself (a much simpler challenge). This may adversely affect battery life, since it wakes every second. It does not hold a wakelock, so it shouldn't have a big impact, but let me know if you think it's causing problems. I can add a blocking read to the code so that it only executes while the screen is on. On the other hand, many of us attribute lag to lacking CPU power. Since this hack eliminates almost all lag, there is less of a need to overclock, potentially reducing battery consumption.
If you try it, let me know how it goes.
ROM builders - feel free to integrate this into your ROMs (either the .apk / application, or just the rngd binary called from init.d)!
If anyone's interested, I've launched a paid app on the Play store for non-xda users. As I add features I'll post the new versions here as a thanks to you guys (and xda community at large for being such a great resource). But if anyone's interested in the market's auto-update feature, just thought I'd mention it.
Sent from my Sony Tablet S using xda app-developers app

Related

[APP][WVGA-VGA-WQVGA-VGA][28.09.09]PocketNoise 1.0.1

The noise in your pocket. This app features:
- a desk bell
- a double buzzer
- a single buzzer
- a gong
- a horn
- a doorbell
- the D-Day cricket
- the nuke button
A note for the gong: pressing the center the sound stops.
A note for the nuke: don't stop at first press...
CHANGELOG:
1.0 – First release
1.0.1 - Released all resolutions
Small cosmetics
Executable compressed with UPX
DOWNLOAD:
Download PocketNoise from 1800PocketPC.com
Special version for HTC HD2
I ask you people not to mirror the files elsewhere: if you want to spread the app, please link to 1800pocketpc download url above
IF YOU LIKE THIS APP, DONATE!
Donations received so far: Saijo 10€, Antonín 5€ thanks guys! Thank you very much!
and yes ofcourse, qvga would be great
aibonlengket said:
and yes ofcourse, qvga would be great
Click to expand...
Click to collapse
I had the intention to release for this app the VGA-WQVGA-QVGA versions as well, but this means a lot of work, since all the graphics have to be resized and the code to be optimized for these screen resolutions.
But...
But. I've released three apps so far (FakeBadge, Walk of Fake and Pocket Noise). In total, almost 8.000 downloads. And a single donation (for WoF). This means, i guess, people is not interested in my apps. Or, at least, not that much interested.
So, if my piggybank continues to stay empty, i'll go on to releas freeware apps. But only in resolution that fits my device (so, in other words, i'll share what i do for me): it's a nonsense to spend many hours working on other res for nothing, isn't it?
VGA version please???
bbonzz said:
I had the intention to release for this app the VGA-WQVGA-QVGA versions as well, but this means a lot of work, since all the graphics have to be resized and the code to be optimized for these screen resolutions.
But...
But. I've released three apps so far (FakeBadge, Walk of Fake and Pocket Noise). In total, almost 8.000 downloads. And a single donation (for WoF). This means, i guess, people is not interested in my apps. Or, at least, not that much interested.
So, if my piggybank continues to stay empty, i'll go on to releas freeware apps. But only in resolution that fits my device (so, in other words, i'll share what i do for me): it's a nonsense to spend many hours working on other res for nothing, isn't it?
Click to expand...
Click to collapse
i feel low, i'm sorry i hadn't donate yet. i think you deserve one though. so please people, donate for this fun apps.
good stuff .. beer coming your way.. plz check ur PM
other resolutions on the go: gimme a couple of days. And thanks to people that supports me donating
bbonzz said:
I've released three apps so far (FakeBadge, Walk of Fake and Pocket Noise). In total, almost 8.000 downloads. And a single donation (for WoF). This means, i guess, people is not interested in my apps. Or, at least, not that much interested.
Click to expand...
Click to collapse
Don't take it personally, but all three are really bling-bling or kiddy apps. Nothing productive, whereas Your programming skills could be put to use for coding something that's actually useful - for example, there isn't currently a single sms/e-mail app on the market that's finger-friendly, functional and has many options. So there's Your empty piggybank. I think if You'd write something that's actually useful, You'd get donations from at least hundred members, not 1. Think about that.
aiiro said:
Don't take it personally, but all three are really bling-bling or kiddy apps. Nothing productive, whereas Your programming skills could be put to use for coding something that's actually useful - for example, there isn't currently a single sms/e-mail app on the market that's finger-friendly, functional and has many options. So there's Your empty piggybank. I think if You'd write something that's actually useful, You'd get donations from at least hundred members, not 1. Think about that.
Click to expand...
Click to collapse
You could be right. Of course i don't take it personal, but what you say brings me to some thoughts. So, i say "could" for 4 reasons:
1. i know my apps are stupid toys. But why people download them, then? Eight hundred downloads in 10 days tell me that people like my apps, stupid or not. And download them.
2. How many "intelligent" apps have you seen for iPhone? Not so much, i think (if you've seen what i've seen). Despite this, the more an app is stupid, the more it sells on AppStore. And have you seen how many people here complain since such apps are for iPhone and not for WM? How many ask to port iPhone apps to WM? see how many did ask for iBoobs port, for example.
3. Some developers, here, develop "intelligent" apps. See, for example, Chainfire, Mitonioes, Blezalex, only to say a few. They should have become rich, if what you say is true. But i don't think so. See Mitonioes donation log for iPhoneToday: i think he is about 150 bucks: not exactely a big amount of money for such a long waited app...
4. Have you seen where G-Alarm is gone, and why? It was free, at beginning. then ageye has seen that, despite his efforts to make the app better and better, and despite the fact that it was one of the most (if not the most) downloaded WM apps, his pigybank as well was always empty. And so decided to make his app a pay one.
This to say that, for me as for other people that release free apps here: we do this without forcing anyone to give us a single cent, and saying that IF one likes the app, he CAN make a small donation to send his appreciation. But if people thinks that "someone else will donate, so why bother? After all it's free", this behaviour leads to the situation where almost the whole developer community has gone to iPhone, where apps are rewarded. Or, as i stated in 3rd post, one develops for himself, and if the apps is ok for you well, otherwise who cares? After all one does this for free and none cares to give him a sign of appreciation.
wow, it was a long OT. but i hope you understand why, if you could be half right, i too can be right the other half
cheers
So You did take it personally OK, just kidding. I see Your point... But I wouldn't go so far to call iPhoneToday an "intelligent" app as it (as far as I know):
1) Simply is a launcher, for which we have like at least 20 alternatives to everyone's liking,
2) It is an attempt to mimic an interface of a system on another system to look like the first system. It's like I would skin my ubuntu to be a mac. Pointless to my mind, no real productivity gain in that.
If You take a look at Iconsoft PhonEx for example, there is an app that has a really well-thought UI, options, intuitive usability etc etc, it's like a perfect example of what my point was, as it completely replaces the useless WM stock dialer and contacts. So I got myself a license, even tho it's 25$. I am willing to pay for great stuff.
G-Alarm does too many things (general mistake that every developer makes is that he thinks when his app has tons of features it makes it greater - it does not, rather on the contrary) to be a simple alarm/timer/stopper, for which 200-300KB is enogh, not 2,5MB.
For me it's all about:
1) Is there real comfort, usability or productivity gain in it for me?
2) Is it small and fast and doesn't have useless features?
For the rest of qualities, I really don't give a s..t.
But, if You are interested in developing something useful, take a look at this - http://forum.xda-developers.com/showthread.php?t=520689. It has been half a year and nothing much has been going on. Like I said, there really isn't a good sms/e-mail app outthere
My point ver 1.5 - the third half
aiiro said:
My point ver 1.5 - the third half
Click to expand...
Click to collapse
About the s2s, i'm not skilled enought, at present time, to interact with system. Maybe in future
updated to 1.0.1: all resolutions now
Thank You very much, will be donating soon
it locks up bad on my lg incite .. ideas?
btw same issue with your badge app and you never replyed on that bug report either
xhozt said:
btw same issue with your badge app and you never replyed on that bug report either
Click to expand...
Click to collapse
since you are the only one (out of 9 hundreds downloads) reporting this behaviour, i'd not call it a "bug". I'd not even call yours a "report", since it's similar to "doesn't work", that says nothing.
Anyway: i really don't know why your device locks up. Are you using the right version? For what i know it's a WQVGA device. Have you error messages? Do you hears sounds? Do you see something or nothing at all? What happens?
after clicking it , it gets to the main screen and hangs the device requireing a soft reset . no errors .
nice idea for a app but for now gotta stick with flaxbox ;-(
Was looking for such a fun app.
At first it works fine, but only at first as there are no seconds!
It runs fine after a reset, but is t able to start it up again after this first run!
I can press the button all I want but nothings happens no error message, nor no trace of the program in memory
Installed on HTC -HD2, storage card (do not want in in main memory).
Any idea's?
Note: Your Fakebadge app, also does not start after this app has run!
Note:2 Run first Fakebadge = ok 2nd =ok run PockedNoise = NOK
That's a realy strange behaviour, Pandor, but i cannot replicate it in any way, so i really don't know what's going on on your device... I too use the app from SD card, so that's not the problem.
I had a similar behaviour only once, when the app was still in beta: but that was because i had so little resources left (only 20% free memory) that the app didn't succeed to load all its resources and crashed. But i had it in memory (spotted via MemMaid).
So, if you have not it in memory, i guess the problem is somewhere else: maybe you've something running in background that leds to this. Don't know, sorry: as now you're the only one out of 15.000+ downloads reporting this behaviour
So I installed Memmaid, as the taskmanagers, did not show any programs running.
Here I saw that eighter Fakebadge or Pockednoise was remaining as a running process. Close the process and indeed it runs fine again!
I close the app with the Close button.
Note I have 200mb of memory left!

[REF][3/31/11] GizmoDroid Braindump or "Ideas for a Fascinating Tomorrow"

Topics Covered in this Thread So Far (or "potential areas for investigation/improvement")
USB modes confusion, CD-ROM mounting bug, and how to make it useful
Hunting for buried treasure in system apk's
EFS backups
GPS
Wifi
Stuff About CDROM/USB Device Protocols
More Stuff About CDROM/USB Device Protocols
Stuff On EFS
Stuff On Hidden Options
GPS power toggle from Drop Down Menu
EVRC-B Phone Voice Codec
Background Noise Cancellation during call
Disabling of debugging stuff and additional code checking
PNG/ogg optimization and Zipaligning
libdvm.so Optimization
Battery Service Polling
RAM management
Disk Scheduler
A more complete nandroid solution
A better voodoo implementation
About scripting
Sleep of Death
Phone.apk mods
More EFS partition info
Info about other partition backups (backing up kernel and others)
Wakelocks/Timekeeping issues and fixing it at the kernel level
Partition mounting tweaks (noatime and such), power management, vm writeback time
More VM tweaks
SD card cache tweak
Reclaiming the Preinstall partition
So I'm going to be out of town for a week or so, and I know that with hacking, that means I could come back and nothing will have changed... or I could come back and everything will have changed (source, anyone?)
EDIT: I'm back... and everyone got thunderbolts! I swear, I leave for one week...
Unfortunately, I myself am a jack-of-all-trades (king of none, sadly), so I've got about 50 different little things I've been working on researching, and won't make much progress on if I keep on trying to do them all at once, since every single project requires that I learn an entirely new set of principles that I never knew about before. Because of this, I have decided to do a brain dump. Hopefully this is welcomed. Some of it will be stuff you already know, some will be dead leads that don't apply, but I hope that there are some nuggets of goodness that will inspire someone to investigate further.
Basically, I go hunting for things that catch my eye, and mark them to investigate later. Unfortunately, later on, I can't find it, so I have to find it again. Therefore, I'll try to present the most I can re-find about a given topic. Also, my memory is very shoddy, so beware of inaccuracies. I am not stating this as a gospel truth, but as a jump off point to maybe catch your interest to go investigate something further. I welcome any discussion, but if you take an idea and make it your own, feel free to start a new thread about it.
Part I:
USB modes confusion, CD-ROM mounting bug, and how to make it useful
Samsung integrates several different USB devices into that one little plug. I count the following:
1. UMS - Mass Storage Mode (looks like a jump drive)
2. MTP - For use with media players to transfer music/videos/pics (looks like a media player)
3. CDFS - Mounts an image onto a virtual device (looks like CD-ROM drive)
4. DUN - Used for Dial-up-networking (looks like a modem)
5. COM port - Used for programming using low level tools like QPST (looks like a serial port)
6. ADB bridge - communicate over adb to the phones through a terminal
With the possibility of TV-out over usb, USB On The Go, or USB Host, then there are probably more.
There is a lot of weirdities that happen because there are different parts of the phone that activates different "modes" which are usually a combination of the above. Try rebooting into CWM and then select to mount the USB. Depending on your set up, you will probably find your SD-drive mounted to the virtual CD-ROM device. Is it the kernel or recovery that's not set to the right usb mode? I don't know.
There are so many different areas that can change the USB device, so it can be confusing to know why you are seeing a certain thing, even though you have it set as something else from the menu. Just a few examples: In the Settings, you have Debugging, which will turn on UMS, CDFS and the ADB. Depending on what Settings.apk you use, there is an accessible Dial-up networking option to enable the modem. There are dialer codes that affect the enabled devices(**usbii which accesses the PhoneUtil.apk, **debug which allows you to change the port map, and toggle DUN). There is a persistent ADB property that can be stored in "/data/property/persist.service.adb.enable". There are system settings that can be added to the .prop files that load on boot, or set by "setprop somepropertyhere" using a terminal or script.
Have you ever plugged in your phone and gotten an autorun prompt that says something about verizon? On the stock roms, there is an ISO that is stored at "/system/etc/verizon_i500.iso". It contains the samsung usb drivers and a couple other things. When it works properly, this would let you install everything you need to get your phone connected to a new computer, without going through the hassle of finding the files. This is especially helpful if you only have internet access through your phone and cannot obtain the drivers elsewhere. All this seems to be handled by the kies service manager, which does really weird quirky things. For instance, you can manually mount the iso onto this virtual cd-rom device, but kies will unmount it after 15 seconds or so. This is why sometimes, if your sdcard gets mounted as a cd-rom, you can actually read the contents for a little while before it disappears.
Why does this matter to anyone? Well for one thing, it explains a lot of the bugs. There are so many different devices, that sometimes they get mixed up in scripts. This is especially true when porting from other software, or mixing and matching kernels and OS's and recoveries. If they aren't all in agreement, weird things will happen.
Secondly, it opens up a cool built in feature that could easily be utilized: emulated cd-rom drives! I haven't isolated the properties (but it doesn't seem too hard to figure out using the logs and such), but I have successfully mounted the memtest boot iso to the virtual CD-rom drive. Think about it: you have a 16gb sdcard in there. Throw on a live-linux iso, and if the computer was made in the last 5-10 years, it should be able to boot from it (not tested yet).
Right now, you can quickly verify this works by making a symlink from /system/etc/verizon_i500.iso to the iso on your sd card. Then, if you know how, enable the virtual cd-rom (I can't remember the exact variable but its as easy as "setprop cdfs.something enable"). There you go! Instant Virtual CD-ROM drive. You can use it to install stuff on your netbook that didn't come with one, or turn your local library PC into a hacking command center (that's a joke... don't do that).
Now obviously, this could be easily packaged up into a neat little apk that would enable the right USB mode, and then allow you to pick the ISO you want to mount. This would be the ultimate goal, not this dirty little demo. Even easier to implement would be to call it from a script, using a script shortcut program.
Part II
Hunting for buried treasure
There are a lot of things hidden in the OS. Almost all of the APK's, if decompiled, have things that are hidden. Sometimes, the full code is there, but the ability to access it has been removed. To make it visible, you may only need to add the info to the layout xml, or remove a line of smali code (look for things like "removePreference" and such).
Other times, it's just a stub of the information. The great thing is, there are so many variations of our phone, almost anything missing can be inserted again if you can find it another device's code. Sometimes, this is a huge pain, because the dependencies can be spread over multiple files, requiring quite a bit of persistence and dedication. Other times, it's as simple as copy and pasting a line, or an entire method.
The i9000, Mesmerize, Captivate and Vibrant seem to have lots of our missing goodies, but a lot of them need to have the code adjusted, and I don't know what to work on first, since some of the easy stuff is worthless, and some of the valuable stuff is impossible. Here are just a few of the screen shots I've taken (yes, I realize a lot of them are probably not portable, but just showing you how much stuff can be hidden in an APK):
http://www.dropbox.com/gallery/22143517/1/Settings?h=7cc415
There are a lot of little APK's that can only be accessed by dialer codes or through a shortcut program. The useful features sometimes are very small and could either be hacked into the main Settings.apk, or called from it, or added into SpareParts.apk. There are a lot of dangerous things in there ("You want me to format your phone and your SD card?" "Nnnn-" "FORMATTIN YO SDCARD YEAAAAAY") so be careful exploring.
Which brings me to another big issue: EFS backups.
One night, before going to bed, I was poking around in a hidden menu (yep). I don't remember actually changing anything, but I lost a setting. Of course, I have no idea what the correct settings are, so I didn't know what to look for, and for 12 hours straight, my data connection would connect and disconnect every minute. I learned a lot about how poorly the os/radio/kernel/something handles the data connection, but I also learned about the EFS partition, and how this could have easily been fixed if I had a backup, and also how it could have been much, much worse.
If you wander through the i9000 forums, there are multiple warnings to backup your efs folder before messing with any settings. If you corrupt certain files, your phone will lose the ability to regenerate its EFS data, and you will lose your IMEI number. Meaning, your phone will not be activate-able. Meaning, your phone will have to be shipped to Samsung to get it fixed, so... good luck with that. If you think you are smart enough to avoid this, if I remember right, supercurio lost a device to this while trying to figure out the secret audio settings stuff.
It's simple to backup the entire partition using your favorite terminal command (I used dd to copy the efs dev/block device to the sdcard, don't know if this is the best method or not). However, it is virtually impossible to get it back once it is gone, if you don't have a backup. (There is someone charging for this service for i9000 phones).
My theory is that i9000's being used on different carriers causes lots of more people to play around with the EFS data, causing more people to corrupt it. Since the Fascinate is mostly only getting used on Verizon, then there aren't as many cases. However, one mistake in a mounting script in a recovery/kernel/os, and you're toast. Not only that, if you have a working backup and you go messing with the radio settings, then you will always have a backup that doesn't require you to activate another phone and then reactivate your's in order to get your phone working again. (All the while, watching in horror as your logcat fills with a continuous stream of data connection failures).
This is something I'd love to hear more from by someone who knows about it, and if it's as valid of a concern as it is on the i9000, then I'd really like to see more publicity about it's importance.
Part III
Is supposed to be about GPS and wifi, but dang, that is a crazy amount of stuff to write. I hope that a little bit of info, along with a link dump will be okay. And to be honest, I'm getting tired of typing now. I keep thinking of more stuff, but I haven't even fully fleshed out what I've posted so far. Hopefully, I'll be able to do some more later (and even more hopefully, there comes some good from it).
GPS
Most promising is the Captivate GPS work. This thread is a little bit old, but it contains good info. There might be newer information available as well:
http://forum.xda-developers.com/showthread.php?t=881941
The i9000 GPS dev has some good posts as well, explaining it very well. Again, there might be newer information, but this is what I have bookmarked:
http://forum.xda-developers.com/showthread.php?t=842694
It talks about using the "LbsTestMode.apk" for testing. I have no idea if it works for actually configuring the files (I was told it doesn't), but I am providing it here for the possible testing it can do:
LbsTestMode.apk
http://dl.dropbox.com/u/22143517/Android/LbsTestMode.apk
This is just a quick (and not very entertaining) video of setting up a shortcut to access it instead of using a dialer code, then running through the menus real quick so you can see what is available.
http://dl.dropbox.com/u/22143517/Android/lbstestmodedemo.mp4
From a cold boot, in google maps, I can get a lock down to 2 meters in 3-5 seconds with wifi off and GPS standalone enabled when I'm outside. Inside, usually 10-20 meters at first, then drops to 5 after a few more seconds. So I don't know if it's something I've done, or if I just got lucky with a good chip, but I have a hard time testing GPS fixes because I don't have problems (but things can always be better, right?)
I highly recommend checking into the app "GPS aids" if you like the idea of assisted gps. I find that AGPS hinders my GPS performance, but after using GPS aids, it's about as good as normal. So for someone with bad standalone GPS performance, maybe it would help them out using AGPS.
Wifi
Oh boy... I don't know where to start with this. It completely ignores the system property wifi.supplicant_scan_interval. There are files spread across /system and /data that relate to wifi. The binary 'wpa_supplicant' is a source of hackery on other systems, but I don't know if anyone has attacked it on the Fascinate side of things. Want to see ad-hoc networks? This is the file that they usually hack to do that. Other devices have hacked the ability to enable infrastructure mode for wifi tethering. I don't know if this has been done yet for SF.
There are a lot of hidden wifi, wps, and tethering options in the Settings menu. Several system settings properties relating to wifi, several .conf files for the messing, wlan services for the playing, and a nice engineering mode when calling WlanTest.apk that says it's loading a different driver (I can't remember what all neat stuff is in that).
Stuff About CDROM/USB Device Protocols:
My thoughts exactly, the cdrom driver is useful, maybe more so.
The issue as to what starts when is configurable, Eclair had a hard limit of 2 usb modes at any given time, if I recall correctly Froyo supports 4 and that maybe a hard limit by the device. So what is running has to be carefully chosen, with mtp, virtcd, virtcom, ums, adb, acm, usb-otg, tvout, wired tether you hit 4 quick. This is an issue on my table but of low prority, as without a fully working kernel these amenities become mute.
I intend to make the cdrom driver configurable to select various isos from sd and switchable on command, I feel it would be more useful in that state, and I plan to give the user more control over what usb modes are selected using a sysfs setup, the defaults are in about 6 profiles that barely cover my needs without slowing me down.
Edit, More Stuff About CDROM/USB Device Protocols:
I have never tried to get all of the devices working simultaneously, but I do know that if you enable the virtual com port for EFS editing that DUN support is disabled, and that if you enable UMS(USB MassStorage)/SDcard that UMS/VirtCD is disabled, and if you enable UMS/VirtCD that UMS/SDcard is disabled, and I don't use MTP (think syncing your music from WindowsMediaPlayer to Android) so I'm not 100% sure about this one, but I think MTP is disabled if ADB is enabled. At least this is how stock is anyway.
Stuff On EFS:
The I9000 EFS stuff is a little out of my department, but I would love the ability to edit EFS reliably within the OS, unfortunately unlike with the I9000 our devices do not mount an EFS partition, and I have not ventured to attempt looking for it. I imagine it would be just as easy for us to edit it in device as it is for the I9000 people, however if it is due to the way the radios are handled this may not happen, as we are still trying to figure out where the Fascinate keeps it's modem, it would make sense that the EFS partition and the modem code would rest in the same area or partition, if we could only for certain identify it. I think the FSR and FSR_STL drivers obscure our view of it, no fear, I will be attempting to import Gingerbreads MTD work into the my WIP Froyo to hopefully solve this issue once I get the radio working reliably. If and once we do have access to EFS, we could technically copy and replace or edit our Verizon EFS information live, flash from one network to another, and update tower information possibly without even restarting the phone....that is IF we have access to the EFS partition, and logic says we should have access to it ( as every other CDMA Verizon and Alltel device I have used does have one ) and it is programmable from within the Samsung device setup APKs.
Stuff On Hidden Options:
As for the special hidden stuff....it just boggles my mind the amount of crap they hide (or did they forget about this stuff?!?) from us, most of it doesn't work, most of it has no warnings for the DANGEROUS stuff it can do without prompting for a confirmation (ie complete factory reset and yes sdcard formatting) I think this crap should have been jammed into a single engineering menu accessible via a fixed passcode rather than scattered from A to Z in 20 different APKs with little more indicator of what an option does than some cryptic function name and a report of what someone else may have experienced only after executing the command. At the very best it's an unorganized, inefficient, undocumented, unreliable, low level, factory device configuration menu set that even most experts do not know how to fully utilize.
SirGatez said:
My thoughts exactly, the cdrom driver is useful, maybe more so.
The issue as to what starts when is configurable, Eclair had a hard limit of 2 usb modes at any given time, if I recall correctly Froyo supports 4 and that maybe a hard limit by the device. So what is running has to be carefully chosen, with mtp, virtcd, virtcom, ums, adb, acm, usb-otg, tvout, wired tether you hit 4 quick. This is an issue on my table but of low prority, as without a fully working kernel these amenities become mute.
I intend to make the cdrom driver configurable to select various isos from sd and switchable on command, I feel it would be more useful in that state, and I plan to give the user more control over what usb modes are selected using a sysfs setup, the defaults are in about 6 profiles that barely cover my needs without slowing me down.
Click to expand...
Click to collapse
Glad to see you in here, as I think the whole issue is very much best implemented/fixed from the kernel with the OS just facilitating from there. Also interesting that someone else was thinking about this while I was. With the little amount of knowledge I have, trying to hack around the different usb profiles at the OS layer is a pain. ("let me mount this" "NO, STOP IT!" "come onnnn let me turn that on")
I know I personally have had UMS, CDFS, DUN, Serial, and ADB all showing up in windows device manager at the same time, by manually toggling them on. That was as far as my test went, so I have no idea if they were accessible at the same time. But it's interesting to watch the device ids change as it switches modes. I have very little driver knowledge, so actually doing much digging was over my head.
Ok, I think I'm done for the night. Sorry for the quality of info, I'll try to work on it more sometime soon.
I feel like we are all just holding our breath for froyo source, but a lot of profitable work can be done in the meantime. Really, a lot has already been done that we can just kang from other devices. We just need to look outward at our foreign cousins.
For instance, supercurio did a lot of work on hacking the sound before they had kernel access. Using his methods from back then might give us some improvements in the meantime.
Things like GPS and Wifi will probably continue to be an issue even after we have source, so they can be done without fear of being completely forgotten about as soon as source drops.
Lots of mods and tweaks that are widespread across other devices don't seem to be discussed. Build.prop hacks are cheap and easy things that don't get much action around here (though not all of them are applicable/or even helpful). Someone brought up the FuguTweaks thing the other day from the Captivate forum. More of these cross-device discussions would be awesome.
God, my brain just exploded.
This is actually quite interesting, though. Now, on Part II: certain Sammy .apk's have hidden usage? Could we combine that into a massive super-settings app?
Samsung Fascinate, Verizon
EB01 Superclean 2.4
Kenesis' TransMyst GBKB (EPIIIIIC)
Mob87's Honeycomb Theme
Stock Kernel
obsidianchao said:
God, my brain just exploded.
This is actually quite interesting, though. Now, on Part II: certain Sammy .apk's have hidden usage? Could we combine that into a massive super-settings app?
Click to expand...
Click to collapse
That's the idea. CM has a lot of this kind of thing, but we aren't there yet. There are also a bunch of testing apks that I didn't mention built right into the stock ROM.
There are even some super mega apps (some available on the market) that are somewhat compatible (be careful with these, especially for low level stuff). "Sysinfo" reveals a lot of... system info that you normally have to go digging around for. So does "Under the Hood". "Tuxility" doesn't really have much, but could be an easy start for the basis of a SF compatible utility. "SuperPower" gives a lot of control over power options. "SpareParts" from other Galaxy variants have had lots of options added. There are some other SGS specific tools that half work, as well, but their names are slipping me now. One allows you to flash a kernel from the OS. Also, I wonder if Development.apk from the emulator might have some use?
There are tons of things that could easily be added to the SpareParts app too, if you didn't want to add it to the Settings app.
So much stuff to kang.... so little time.
Dude. This is... amazing. Can you mentor me on this stuff? XD
Now, Spare Parts is that app in SC that shows the battery info and stuff, no?
Edit: and what all could you drag to spare parts? Could it access those hidden .apk's and utilize the secret functions?
This is so cool.
Samsung Fascinate, Verizon
EB01 Superclean 2.4
Kenesis' TransMyst GBKB (EPIIIIIC)
Mob87's Honeycomb Theme
Stock Kernel
Part 4
GPS power toggle from Drop Down Menu
The GPS option from the drop down menu is essentially broken and needs to be fixed. I recall a similar problem on a different device with the wifi. With that device, on observation, I noted that on powering up wifi from the settings menu, I would be connected within 5 seconds, but from the power widget, it would take a full minute. After doing some investigating, the power widget was basically trying to control the wifi device directly. I found a different widget that essentially emulated the same method used in the system settings menu, and it starting connecting immediately. My guess is that the GPS power code on the pull down menu could be modified using the same examination/modification needs to be adapted in the same way.
EVRC-B Phone Voice Codec
Switching to the EVRC-B codec improves call quality substantially, for both parties of the call. If anyone knows of a way to set it that doesn't involve going into service mode and manually changing it, then please let me know.
Background Noise Cancellation during call
Also, I'd love to find a fix for the mic during calling. It's a frequent occurrence for the person I'm calling to be like "Who are you talking to?" because they hear someone talking in the next room away from me. Or a very light sound on my end, elicits a response of "WHAT IS THAT NOOOISSSE??!" from the person I'm talking to. So obviously an issue of background noise cancellation. I'm hoping its a software fixable problem.
I've seen this build.prop edit to mess with the noise cancellation for disabling noise reduction for the voice recorder (Say you are trying to record something like music, or something at a concert, the noise filter would hinder your ability).
Code:
media.a1026.nsForVoiceRec=0
media.a1026.enableA1026=1
Two things about this:
1. I've only seen this kind of property on other devices that have two mics that work in combination for noise cancellation. I'm guessing the SF only has one, and any attempted noise cancellation is done at the hardware level or in software.
2. This would assume that the noise shield actually exists, but the stock Fascinate behavior is to not have it enabled for calling... which is pretty dumb. Given some of their other decisions, this may be true, but I have my doubts. If it's parameters are accessible, and it's merely only needing some tweaking, then I will be happy.
I wonder if supercurio knows much about the noise cancellation, since he's worked with so much of the sound stuff?
Disabling of debugging stuff and additional code checking
Debugging stuff is essential for figuring out problems, but for the 99% of the time, isn't it probably slowing us down? I don't know what would be the best way to easily disable any additional debugging routines that might be affect performance.
As for disabling code checking, I used to run these build.prop edits on an older device. I have no idea if they still apply:
Code:
ro.kernel.android.checkjni=0
dalvik.vm.checkjni=0
dalvik.vm.verify-bytecode=false
Maybe you are the kind of person that needs their phone fully stable at all times (no you're not, because you are on a forum that is made to push your device to the limits). I, however, keep everything backed up, so if disabling this extra "security" might slightly increase risk of data loss, then I'm okay with that (not saying that this is an actual danger, but just in general). The only problem I have is if the increase is negated by a large rise in errors that actually hinder performance, or if it becomes significantly more risky (doubt that's the case, but it's always a possibility).
Somewhat related, we currently keep the dalvik heapsize at 48mb's. Is this the best match for our device, or just the default?
PNG/ogg optimization and Zipaligning
I recently took a superclean rom, and dropped 16MB losslessly just from throwing the pngs through PNGOUTWIN and deflopt (didn't touch the *.9.png files). Free RAM right there. Not to mention that some of those APK's have ridiculous extra resources that can be reduced by cutting color depth or taken out entirely (giant HTML based tutorial files stored in the apk... why?) Also, all of the ogg files can be slammed down using a sox script or an equivalent.
In compression, it's also important to know when its a free and harmless, or when it will reduce stability. You can zip up an APK nice and tight... but aapt is a better method. The files might be bigger, but they will run better (also, learn how to treat *.9.png files, or don't touch them at all).
I've adapted the script from Bugless pete's automatic, on-phone zipaligning utility (just had to change a couple lines). A lot of times there are apk's that slip through the cracks in the ROM's that aren't zipaligned (especially in themes and patches). Again, just free performance that isn't hard to obtain.
libdvm.so Optimization
Has our libdvm.so been optimized to run on on our processor? I know this was a huge boon for older devices, but couldn't find any info on ours.
Battery Service Polling
Ever watched the logcat even when your device is nearly at idle? Ya... that battery is always updating. How do we change this habit? I often wonder how much extra juice would we gain by increasing the length in between battery polls.
GizmoDroid said:
Ok, I think I'm done for the night. Sorry for the quality of info, I'll try to work on it more sometime soon.
I feel like we are all just holding our breath for froyo source, but a lot of profitable work can be done in the meantime. Really, a lot has already been done that we can just kang from other devices. We just need to look outward at our foreign cousins.
For instance, supercurio did a lot of work on hacking the sound before they had kernel access. Using his methods from back then might give us some improvements in the meantime.
Things like GPS and Wifi will probably continue to be an issue even after we have source, so they can be done without fear of being completely forgotten about as soon as source drops.
Lots of mods and tweaks that are widespread across other devices don't seem to be discussed. Build.prop hacks are cheap and easy things that don't get much action around here (though not all of them are applicable/or even helpful). Someone brought up the FuguTweaks thing the other day from the Captivate forum. More of these cross-device discussions would be awesome.
Click to expand...
Click to collapse
Your gonna hold your breath a long time if you're waiting for froyo source.
If anyone needed proof that Quadrant scores aren't good indicators of real performance, this is a real, unedited screen shot from my phone running EB01:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
I dropped the link in IRC for giggles and a couple of people lost their minds, accusing me of lying. Sorry fellahs, I got better things to do.
You can boost your quadrant scores this high with a couple easy steps that provide absolutely no performance boost outside of quadrant (it's is similar to why voodoo enabled systems score so high, but only perform somewhat better). So for the hold-outs that still think that quadrant is a reliable benchmark... be aware of it's major flaw.
GizmoDroid said:
If anyone needed proof that Quadrant scores aren't good indicators of real performance, this is a real, unedited screen shot from my phone running EB01:
I dropped the link in IRC for giggles and a couple of people lost their minds, accusing me of lying. Sorry fellahs, I got better things to do.
You can boost your quadrant scores this high with a couple easy steps that provide absolutely no performance boost outside of quadrant (it's is similar to why voodoo enabled systems score so high, but only perform somewhat better). So for the hold-outs that still think that quadrant is a reliable benchmark... be aware of it's major flaw.
Click to expand...
Click to collapse
I have been trying to convince people of this flawed benchmark app for months when using Blazed Eclair, it scores almost normal but runs the same voodoo other kernels do plus lots of other tweaks on kernel side. Very few believed me and switched from Blazed JUST for higher quadrant benchmark scores
Sent from my SCH-I500 using Tapatalk
SirGatez said:
I have been trying to convince people of this flawed benchmark app for months when using Blazed Eclair, it scores almost normal but runs the same voodoo other kernels do plus lots of other tweaks on kernel side. Very few believed me and switched from Blazed JUST for higher quadrant benchmark scores
Click to expand...
Click to collapse
Maybe I should make a HOWTO tutorial on how to get ridiculously high quadrant scores on any OS/kernel, then people would be free from using it to influence their thinking and instead would base it on real world results.
The cynical side of me says that they would just find a new benchmark and do the same thing with it.
Meh, we know the truths, so sure make a howto, maybe quadrant will fix their flaws (yeah...i'm not sure about that one...) people on the otherhand will flock like you say without our intervention, but for the rest of us this could prove helpful in building roms/kernels that do not allow benchmarks to succumb to the same flaws that most current ones do
Sent from my SCH-I500 using Tapatalk
SirGatez said:
Meh, we know the truths, so sure make a howto
Click to expand...
Click to collapse
[HowTo] Release the most downloaded ROM of all time:
Take stock rom.
Insert the following line into a boot script:
Code:
mount -o rw -t tmpfs tmpfs /data/data/com.aurorasoftworks.quadrant.ui.standard
Upload ROM to host of your choice.
Post screenshots of Quadrant scores with download link.
Great Success.
There are lots of ways to inflate quadrant scores... but this is the funniest method because it makes it ridiculously obvious how voodoo can achieve inflated quadrant scores without gaining a similar amount of performance (they both write cache to memory, therefore inflating the I/O scores ridiculously high).
Adding more to the noise cancellation issue, I found some more info out tonight:
Jamezelle pointed out a property that is set in res/values/bool.xml in the Phone.apk "has_noise_suppression" and it's set to false. After digging around, I found that this shows up in the PhoneUtils class if you decompile Phone.apk. It reveals two options: "noise_suppression=auto" and "noise_suppression=off". Some realworld testing needs to be done, but if the fascinate has the noise surpression ability and its just turned off, then this could be turned on again by adding to build.prop, or by modding the options menu to have this show up as an option.
Its very possible that it's hidden because it's not implemented, but other Galaxy S phones have some type of noise cancellation, so it might just not be implemented in the software.
Don't know if you were still looking for how to change EVRC to EVRC-B, but dial **72, the spc code is 000000, press down on the directional button arrow until you see Svc mode nam 1 end of basic nam exit. Press the right directional key once, you will see EXIT change to more, hit enter, press down once and you will see HomePage VoiceSO and EVRC, push the right button to change to EVRC-B. Hit ok and phone will reboot. Sorry for the sloppiness, at work and trying to be quick.
Edit: Ah, nevermind, you didn't want service mode, sorry!
Sent from my SCH-I500 using XDA Premium App
Dread This Day said:
Don't know if you were still looking for how to change EVRC to EVRC-B, but dial **72, the spc code is 000000, press down on the directional button arrow until you see Svc mode nam 1 end of basic nam exit. Press the right directional key once, you will see EXIT change to more, hit enter, press down once and you will see HomePage VoiceSO and EVRC, push the right button to change to EVRC-B. Hit ok and phone will reboot. Sorry for the sloppiness, at work and trying to be quick.
Edit: Ah, nevermind, you didn't want service mode, sorry!
Sent from my SCH-I500 using XDA Premium App
Click to expand...
Click to collapse
Yeah, this way does work, and I have used it multiple times. But it resets itself every time you reactivate, and its near dangerous settings, so its not something I would recommend to newbies.
If there was a less dangerous way to set it (say from a script or an apk) then this could lead to it being more widely recommended. It really does provide substantial improvement of call quality.
If my gf calls using her bluetooth headset, which has mediocre sound quality, the further compression of EVRC makes her very hard to understand. With EVRC-B, I can understand her plain as day.
Dread This Day said:
Don't know if you were still looking for how to change EVRC to EVRC-B, but dial **72, the spc code is 000000, press down on the directional button arrow until you see Svc mode nam 1 end of basic nam exit. Press the right directional key once, you will see EXIT change to more, hit enter, press down once and you will see HomePage VoiceSO and EVRC, push the right button to change to EVRC-B. Hit ok and phone will reboot. Sorry for the sloppiness, at work and trying to be quick.
Edit: Ah, nevermind, you didn't want service mode, sorry!
Sent from my SCH-I500 using XDA Premium App
Click to expand...
Click to collapse
Thanks, working great! But you posted incorrect dial code. Let me correct you. **772

[MOD] Seeder entropy generator to provide significant lag reduction

Hey guys,
I came across this in teh portal and am not sure if it actually works on my prime (Stock rooted OTA JB). I would love to see how it fares for the rest of you. Here is the information from the OP. All credit to OP lambgx02 and Ryuinferno.
Instructions: FOLLOW THE INSTRUCTIONS IN THE SECOND QUOTED POST IF YOU CANNOT FLASH FILES FROM RECOVERY OR ARE ON STOCK FIRMWARE
Here is the OP:
lambgx02 said:
Hey everyone,
So, I was experiencing significant lag as we all do from time to time, and decided I was going to get to the bottom of it.
After tracing and debugging for hours, I discovered the source of 90% of Android's lag. In a word, entropy (or lack thereof).
Google's JVM, like Sun's, reads from /dev/random. For all random data. Yes, the /dev/random that uses a very limited entropy pool.
Random data is used for all kinds of stuff.. UUID generation, session keys, SSL.. when we run out of entropy, the process blocks. That manifests itself as lag. The process cannot continue until the kernel generates more high quality random data.
So, I cross-compiled rngd, and used it to feed /dev/urandom into /dev/random at 1 second intervals.
Result? I have never used an Android device this fast. :good:
It is literally five times faster in many cases. Chrome, maps, and other heavy applications load in about 1/2 a second, and map tiles populate as fast as I can scroll. Task switching is instantaneous. You know how sometimes when you hit the home button, it takes 5-10 seconds for the home screen to repopulate? Yeah. Blocking on read of /dev/random. Problem solved. But don't take my word for it .. give it a shot!
Update!
I've built a very simple Android app that bundles the binary, and starts/stops the service (on boot if selected). I'll be adding more instrumentation, but for now, give it a shot! This APK does not modify /system in any way, so should be perfectly safe.
This is my first userspace Android app, so bear with me!
Note that this APK is actually compatible with all Android versions, and all (armel) devices. It's not at all specific to the Captivate Glide.
Caveats
There is a (theoretical) security risk, in that seeding /dev/random with /dev/urandom decreases the quality of the random data. In practice, the odds of this being cryptographically exploited are far lower than the odds of someone attacking the OS itself (a much simpler challenge).
This may adversely affect battery life, since it wakes every second. It does not hold a wakelock, so it shouldn't have a big impact, but let me know if you think it's causing problems. I can add a blocking read to the code so that it only executes while the screen is on. On the other hand, many of us attribute lag to lacking CPU power. Since this hack eliminates almost all lag, there is less of a need to overclock, potentially reducing battery consumption.
If you try it, let me know how it goes.
ROM builders - feel free to integrate this into your ROMs (either the .apk / application, or just the rngd binary called from init.d)!
If anyone's interested, I've launched a paid app on the Play store for non-xda users. As I add features I'll post the new versions here as a thanks to you guys (and xda community at large for being such a great resource). But if anyone's interested in the market's auto-update feature, just thought I'd mention it.
Cheers! :highfive:
Click to expand...
Click to collapse
Here is another informational post from TODAY with installation instructions that worked for me (unlike the APK in the OP).
Ryuinferno said:
First things first I am not the OP but things need to be sorted out...Ok...this thread is starting to get more and more attention, which is good because with more people to test things out, the more feedbacks and the more improvements can be done...however, the thread is now cluttered by tons on unhelpful posts, like "how to use this", "do I need root" etc...useful posts get pushed wayyy behind, until it is hard for people who are really trying to discuss to keep track...so I am here to answer the basic questions:
Do you need root for the app?:
Yes
Can it work on xxx device?:
Yes, as long as your device is arm based
Where to download the app?:
Here: http://forum.xda-developers.com/attachment.php?attachmentid=1477944&d=1352786461
Or search Play Store for a donate version...
The other 2 attachments are the rngd binary and a diff patch, which are not really required for end users...
How to check whether it is working or not?:
In terminal emulator, type
Code:
watch -n 1 cat /proc/sys/kernel/random/entropy_avail
You should get values around 3000++ to 4000++...
Set on boot does not work?:
It does, just that the app does not show it properly...it is a known bug...to really confirm, use the terminal emulator method above...
Do I have a risk of bricking my device?
No because the app won't modify system files at all...anything just uninstall...
For the zip, it only adds files to your system partition...does not modify any, so if you want to stop using this, you can disable it via the extended menu script...
It does not do anything/It is placebo/I see no improvements/It is awesome!/Wow!:
Well, this is not constructive or helpful...NOT AT ALL...keep in mind that this is still a WIP...research and discussions are still going on...if it is not working or you feel no change or a great improvement, please describe more and explain...which a lot of others are already doing so......keep it up!
For more answers, read this post by my pal pepoluan...
http://forum.xda-developers.com/showpost.php?p=36234571&postcount=444
And for those who prefer to run this via a script and init.d, read on...
=======================================================================================================================
UPDATE: Seeder_v6 is out, I improved the detection of whether rngd is running or not (the previous method was not that accurate), and I removed unnecessary lines...previous users can just flash over...
Download and flash: http://www.androidfilehost.com/?fid=9390248398092764097
How to use this script?:
After flashing, launch terminal emulator and type
Code:
su
seeder
You will get a menu like this:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
NOTE: There will be NO app after flashing! This only installs the necessary binaries and scripts...
For those who cannot install via recovery:
You get a status 0 error -> replace the update-binary in Seeder_v6.zip with one from another zip that works with your device
OR
Use the new installation method!
Instructions:
1. Download Seeder_v6_non-CWM.zip from here: http://www.androidfilehost.com/?fid=9390248398092764098
2. Extract the zip, you will get a folder named "install"
3. Place the folder in the root of your sdcard (/sdcard)
4. Launch terminal emulator, type:
Code:
su
cd /sdcard/install
sh install.sh
5. Ignore any error messages (those are only warnings, only happens to current users)
6. You are done! The script will auto-delete the "install" folder as it is not required anymore...
Sample output:
NOTE: Please quote this post if you want to answer someone's question or share it elsewhere, so that people can get sufficient info and repeated answers do not have to be posted...thank you...
Click to expand...
Click to collapse
Personally, it installs for me, but I'm unable to get the init.d stuff to install (no support for this on Asus' stock rom). When running the terminal command line to monitor it, I get total values of 3000-4000. I'm not actually sure if it made a difference in my TFP performance.
What are your guys' experience?
Running aw1.5, I don't seem to find any difference in performance whilst the app is running it seems to drain battery life regardless of the screen being off or on, causes my prime to heat up overnight, causing 20-30% drainage
There's a simpler way to get the effects of the application. Bring up a terminal, and do something like:
cd /dev
mv random random.bak
ln -s urandom random
This will have the same effect - apps trying to read from /dev/random will get data from /dev/urandom instead - but it doesn't require any extra CPU time or kernel mods or anything. It does require root, but so does the original app.
Note 1: You may have to do this again if you reboot, or else add the above commands to a startup script. I'm not sure how the /dev directory is typically managed on Android.
Note 2: This (or the Seeder app) will degrade network security somewhat. Things like SSL depend on high-quality, unpredictable random numbers. The /dev/random interface guarantees these, but can be slow. The /dev/urandom interface doesn't guarantee cryptographically secure random numbers. If you do this, it's probably best not to use your table for, say, banking transactions, shopping, or other operations where you'd be in real trouble if people were snooping on your network connections.
That said, the odds of a cryptographic hack are, so far as I can see, fairly low. In general, attacks on Android would tend to be malicious trojan apps or such. But you should be aware of the risk.
I don't know yet if this change makes a real difference. I did it on my original Droid, but haven't evaluated it for long enough to be sure of anything. My TPrime isn't rooted (yet) so I can't implement it there.
sorceror171 said:
There's a simpler way to get the effects of the application. Bring up a terminal, and do something like:
cd /dev
mv random random.bak
ln -s urandom random
This will have the same effect - apps trying to read from /dev/random will get data from /dev/urandom instead - but it doesn't require any extra CPU time or kernel mods or anything. It does require root, but so does the original app.
Note 1: You may have to do this again if you reboot, or else add the above commands to a startup script. I'm not sure how the /dev directory is typically managed on Android.
Note 2: This (or the Seeder app) will degrade network security somewhat. Things like SSL depend on high-quality, unpredictable random numbers. The /dev/random interface guarantees these, but can be slow. The /dev/urandom interface doesn't guarantee cryptographically secure random numbers. If you do this, it's probably best not to use your table for, say, banking transactions, shopping, or other operations where you'd be in real trouble if people were snooping on your network connections.
That said, the odds of a cryptographic hack are, so far as I can see, fairly low. In general, attacks on Android would tend to be malicious trojan apps or such. But you should be aware of the risk.
I don't know yet if this change makes a real difference. I did it on my original Droid, but haven't evaluated it for long enough to be sure of anything. My TPrime isn't rooted (yet) so I can't implement it there.
Click to expand...
Click to collapse
This amazes me! A knowledgeable person who hasn't rooted their Prime?!?! Good god man!
seeknom said:
This amazes me! A knowledgeable person who hasn't rooted their Prime?!?! Good god man!
Click to expand...
Click to collapse
Mine's working well enough for me (haven't had the horrible problems others report, just occasional ANRs on the browser), and I want to retain warranty coverage just in case. Plus, I have other hack targets like a Raspberry Pi and such. Once the warranty expires, I will certainly unlock and play around with it.
---------- Post added at 12:29 PM ---------- Previous post was at 11:34 AM ----------
Update: see the Google developer thread here: https://code.google.com/p/android/issues/detail?id=42265
The symlink trick may not work on versions of Android past Gingerbread, except on some specific applications (Google Maps appears to be one). Looks like the Dalvik VM on Android doesn't read from /dev/random itself; but some of its operations may end up calling get_random_bytes() in the kernel. So seeding the entropy pool would be necessary in that case, and the symlink trick doesn't do that.
I actually ended up disabling it again and I didn't notice any change in performance. Didn't seem to do anything for me.
Sent from my HTC One X using xda app-developers app
Can you please add another option to your poll: "DON'T KNOW/CAN'T TELL"?
I'm running it on my Prime and my Note 2 with what seems to be at least a slight increase in responsiveness. The Note 2 is dang snappy by itself, and I'm running Energy on my Prime, which is a lot smoother than stock. I would be interested to see how it works with older, laggier devices. I may boot up an old handset and see how it works on there.
Sent from my Transformer Prime TF201 using xda app-developers app
It's working for me, my prime used to have that annoying 2-3 seconds lag when returning to Apex Launcher from apps (even with HB 1.5), but that's almost 90% gone with Seeder running. Not to mention my Gallery loads much faster
placebo.
It works on my M600 Zio quite well. On my Prime, I can't truly say. It seems a little more responsive but I've never really had lag on the Prime unless I was writing large files to the internal storage and trying to do something else at the same time (rarely ever happens anymore with clemsyn's kernel).
i prefer crossbreader. the rng they us is a bit more efficient, and it comes with a couple more mods. i havent used on my prime but i have noticed measurable improvements on my note 2 (i multi task a LOT of apps a LOT of the time). for now its only a cwm install and uninstall zip, but they plan on making an installation apk soon. another benefit of this is that it doesnt run every 5 seconds like seeder does. this one is set to 30, and still maintains entropy levels of 3700-4096, hovering mainly at the 4000 mark (at least for me and many users)
http://forum.xda-developers.com/showthread.php?t=2113150
thanks, a great tool.
does it really work
enkyll said:
does it really work
Click to expand...
Click to collapse
give it a try your self, no harm in trying~

Which system parameters (kernel/sys/anything) rule automatic suspending of cores?

Hello.
I think my problem is a general Android question, although - in my particular case - it is dedicated to Samsung Galaxy Note 3 (SM-N9005).
I would like to learn, which system parameters rule automatic suspending of single cores in runtime. This question is NOT deep sleep - related, I have no problems with that. My problem consists in cores not going offline, even if nothing is happening in the system (I wanted to post a link to a screenshot but I'm not allowed to). Imagine an Idle system - my phone has 4 cores, 3 of them should go offline. And that's what happens, when the system is in a "good" state. But after some time something is changed (I don't know what, yet) and even if completly nothing is running, all the cores stay online and they operate at their lowest speed (which is 300MHz in my case). I know, that it improves responsivenes, but, at the same time, increases power consumption. And it's not how it should work.
So, I'm looking for what triggers such behavior. Not for the initial cause (it must be one of the applications), but for the "intermediate" result. I believe that there are kernel parameters, probably available via the /sys/ subsystem, which may be checked and adjusted here.But... which of them? What to look for?
My phone is rooted, I'm quite fluent in bash programming and I'm not affraid of it. I also know Linux itself (I'm not a hacker, but I have few machines which I administrate). But I don't know Android-specciffic issues. Can anyone help me here?
Thanks in advance

How to Focus by Removing Distractions from Android

Hi,
I've been experimenting with removing low quality technology time from my day to day to improve well being and simply make more time for other things! I find it easy to end up on youtube or browsing for hours aimlessly.. especially when I am burnt out after a days work.
I previously put my laptop and cellphone in the garage and that worked fairly well but also cut me off from phone calls which was the trade off. I found this great, especially if I did it the night before.
The main sources of distraction I see are a result of Data. If I don't have data I can't browse, I also can't go on YouTube. Yet I still have the benefit of using maps (offline), journaling, evernote (offline), photos, alarm clock, music player.
I've tracked my time on my cell phone weekly and I think I waste somewhere between 9 - 18 hours browsing or watching youtube. My issue isn't the time, but the fact that none of that left a mark on me as something I loved doing.. and that I think is a sign of life truly lost!
I thought if I put my SIM into a non-smart phone I can still call and text and use my smart phone for all the benefits I listed above. My only concern is WiFi... having a simple on-off switch on wifi makes it too easy to use. Do you have any idea of how I create more barriers to WiFi?
For my laptop I've uninstalled the wifi driver and keep it on my screen in a zip file for re-installation if needed. (it's too much work if I'm lazy... and yes this does work.
My goal is to increase the barriers to doing the lazy short term gratifying activities (which I don't enjoy but do out of shear habit) and to make it easier to do the things I value- friends, family, cooking, reading, ect... I find I enjoy these activities once I get into them, it's just the initial barrier.
I don't know if I am the only one that has these thoughts, if you do and have ideas for solutions please share!
Thanks.
Format your system partition by using a custom recovery
I have a custom recovery installed already, what would that let me do?

Categories

Resources