|
本帖最后由 0cean 于 2011-9-17 18:52 编辑
+ T# t! o* O3 v3 t, {: e. q& Q, u* m# I L& _$ p
WebOS是一个以linux为核心的嵌入式操作系统,以下讨论建立在linux基础上。 F3 Y% I+ Z; W/ L' G) M4 V
Swap空间的作用可简单描述为:当系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到swap空间中,等到那些程序要运行时,再从swap中恢复保存的数据到内存中。这样,系统总是在物理内存不够时,才进行swap交换。
+ S+ X2 m+ ]) Q8 n关于linux下swap增大是否会让系统运行更流畅,网上看到的资料中,在一份讨论邮件中:" I5 J0 x, Y& ~4 T2 s4 e$ a/ E
Linus明确的说明了,在Linux2.4.x中,内存管理(MM)策略的改变。就如 Windows98向Windows2000转变一样,微软在内存和交换区中保存了更多的脏页,而不是及时回收内存,大幅提高了系统的效率。(见 Widnows核心编程第18章的论述)。 ) B% W* x @& @3 V
那么,swap是不是必须的?很多人认为是,其实,普通意义上所谓的swap是内存的2倍只是一个给新手使用的经验值,实际使用swap的大小是根据程序对内存使用状况需要调整的。如果机器在运行时对内存的需求量不大,就没有必要要swap。
- |) p# Z4 p' O; k1 ]( m Palm Pre的内存是256M,这点内存仅够加载系统,开机后即占用230M左右,即使通过精简掉一些程序也降低不了多少内存占用,所以swap空间对程序运行有很大影响。
2 S4 L* p) |* u2 w1 ]! v, @$ |" ] WebOS2.1官方rom的swap空间大小是106M,在palm pre上测试发现,在随意运行了七八个程序后,查看系统swap占用,可看到已使用70M,随后几分钟会达到swap最大值106M,接下来系统运行会非常缓慢,响应时间变长。2 e6 M' S* j4 z7 w' G
?- T% [# {, `8 I7 S7 s Swap空间越大越好吗?为什么官方开发人员没有把swap分区设置大一些?当然不是越大越好,太大的swap 空间会造成kernel 以为有巨大的内存空间而毫不节制的想要把数据捉进内存中,从而导致kernel 一直在做memory swap,拖慢系统。个人认为官方人员基于pre plus的512M内存的硬件制作的webOS2.1 rom,在pre plus内存较大的情况下可能更多的考虑的是swap过大会拖慢系统,而对于pre用户本身内存不足,系统运行缓慢的情况下,增大swap会对pre的运行速度有一定改善。$ w( Y! y! }6 W' x( T8 m
, X, E/ g5 B0 E
ps:来论坛多年了,一直作为潜水党和伸手党,无以回报无私分享的各位版主,论坛网友,在此感谢各位网友,版主, 寂夜清风,吹友吧,奔迈公司 ,惠普公司,中国电信,ccav。又矫情了一回 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?加入我们
×
|