优化软件seeder(2月24日更新)

楼主: 缘远怨鸳 浏览: 216 回复: 9 发布于: 2013-02-24 00:39:15
===============以下详解byneosecho================
根据xda作者的主帖,意思是这样的:
1.主要优化的内容有2项:
a.优化了RNG(随机数生成器)大略来说这里针对的Android系统迟滞是由于JVM和组件经常读取的dev/random设备(RNG)阻塞造成的(原文的blocking. entropy资源使用完后需要等待dev/random生成.而dev/random的优先级又很低,所以发生迟滞.).作者使用不会发生阻塞(blocking)的/dev/urandom来生成entropy,每秒钟填充一次/dev/random,来解决这个问题.猴机ICS以后,系统JVM和组件基本不再使用dev/random,所以情况相对不严重.但是ICS还是会由于其他程序消耗完entropy,可能需要等待entropy的生成.结论是a优化主要针对4.0之前的系统,4.0之后的系统在理论上效果比2.3小很多.但是据xda用户报告还是能有效减少迟滞.
b.增加了存储设备MMC的IO队列长度(主帖内说部分用户在大量IO操作时,明显改善性能).理论上可以优化Governor(调度器)的调度结果.合并重复的IO操作.
2.关于耗电原帖的主帖说现在的版本基本不影响耗电.原因有两点.
a.程序有一个默认开启的选项(第一个选项suspend RNG service while screen off),关闭屏幕的状态下,程序是休眠的.不起任何作用.
b.即便程序活动的时候,对资源的消耗也是非常少的.设计上来说不可能触发CPU的状态和频率变化.24小时的消耗小于2%.原文给的数据和说明:battery impact was negligible (less than 2% per 24h).It's unlikely that this would present enough load to trigger a CPU governor statechange at 10mhz.
3.程序的使用.系统首先要root.安装seeder后打开程序.On/Off打开程序.打开后,最下方的available entropy会增加到4096.下方3个选项分别是:Suspend RNG service while screen off(屏幕关闭时RNG程序休眠)Extend I/O queue(增加IO队列)Startautomatically on boot(系统
启动时,自动运行)程序只是一个GUI界
面,关闭不影响对系统的设置.实际运行
的RNGD是Linux进程,在Android的任
务列表中是看不到的.
更新一下后续使用中观察到的(基于自
有的三台设备,猴2.3/4.04/4.1):
1.能够体会到Seeder效果的大致是这
几方面:
a.系统UI响应,程序切换等(效果最明显
的部分,UI线程等待被阻塞的RNG导
致)
b.部分程序的加载速度,大量消耗RNG
生成的entropy的类型.(我测试了UC等
浏览器,Evernote,QQ,微信等均消耗大
量的entropy.另外游戏可能也是大量
消耗entropy的,个人不玩游戏,就试了
一个星战小鸟,消耗大量entropy)
c.WiFi,移动数据等.(根据
wikipedia,TCP/IP序列,WiFi加密,SSL使
用的加密等都需要使用RNG)如何观察
entropy消耗?打开Seeder程序,先设置
成Off.观察最下方available entropy
值.此时尝试开关WiFi或者打开程序,我
所观察到的entropy上限都是4096.开
关一次Wifi消耗掉1500-2000,一个
Evernote打开消耗掉1500-2000,打开
UC消耗掉500.按照数值来看的确是不
够用的.查了一下相关资料,如果没有
Seeder的话,dev/random的entropy的
生成来自于:
a.来自于用户和系统的交互,包括输入,
触摸来生成entropy.可以通过Seeder
的available entropy观察,摸一次+20
entropy.(训真猴...没事需要摸一摸)
b.来自于系统内部的噪声(查到的说法
有电路信号的白噪声,声卡底噪,网卡接
受数据等等.这个...有请真电工详解),
但是我的确是没观察到静止条件下
entropy有增长.
c.系统生成. entropy被消耗光以后,倒
也不是完全卡主. entropy消耗光了才
会加一点点(等真电工详解)
2.安装后没有明显效果,猜测的几种可
能.
a.不同的手机不同的ROM,还有第三方
补丁等.实际已经通过增加entropy上
限,或者内部已经定向使用/dev/
random到/dev/urandom的.
b.猴的新系统UI线程等已经不再受到
entropy阻塞的影响. 猴4.1引入的
Project Butter按照说明是已经提升了
UI响应的优先级.猜测可能UI上受阻塞
影响很小.
c.比较新的硬件相关的entropy生成速
度很快,RNG不再阻塞.
d.真功能机的用户...体验有限.
3.Seeder所解决的问题是Android所基
于的Linux问题.刚Google了一下,除了
Android以外,Linux包括服务器和桌
面,PHP,数据库,Web服务器,都受此影
响.(SSL加密等,WiFi,TCP/IP都会使用到
RNG,瓶颈,严重的计算甚至有说修改后
约500%提速的)Linux上 能找到许多相
关帖,Seeder是将之引入了Android条
件下.根据xda作者的原文,Linux是现
代操作系统中极少数使用会阻塞的
RNG(/dev/random)的...而坚持使用/
dev/random的原因在于,dev/random
相比dev/urandom生成的entropy数
据更随机.来确保加密的安全性.所以不
管安装后是否能感受到速度变
化,Seeder的确是解决了Android和
Linux体验的瓶颈之一.2.3/4.04/4.1均
受影响,从数据上看Seeder都是有明显
效果的.虽然程度不同.不管你有 没有
效果,反正我是奔跑着歌颂Seeder了.
肉身能够感受到猴机复活的心跳.
4.以上这些仅基于xda和google,总共
不到三小时的研究.其余有请D版众多
深藏的真电工详细研究.
× 预览
回复 🤍 0 📤 分享 收藏

回复 (9)

无力了,圆圆我路过
完全看不懂。英文太多
这只是一部分内容,还有没复制!反正我们不用弄清原理,会用就行了
都不知是啥软件\("▔□▔)/
后面有使用的效果,你可以看看
看到好资源果断进来留下支持的声音!尽管自己是塞班的!
小基基……晚安!
顺便顶下资源。
什么乱七八班的
— 已加载全部回复 —

发表回复