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