文学城论坛
+A-

你是说context switch的时候paging问题吧?

flywhc 2011-05-26 16:24:06 ( reads)

 

symbian取决于版本,新版本的有DP, WDP等不同设计,WDP就像桌面系统的virtual memory了。也许我在诺基亚内部,我也不觉得symbian内核有啥牛X的,要不然诺基亚也不会放弃symbian了。毕竟是10年前的技术,补丁加补丁,怎么也不成了, 高效的内核都让TRAP、二次构造什么的古代设计模式浪费了

android延续linux的设计,也有swap区作为交换。其实android所用linux手机代码大都是nokia在做meamo的时候贡献的,这就是开源的弊端

Windows Mobile也是有类似的SWAP分区的

IOS我不知道有没有paging,但我知道它内核是free BSD的UNIX,当然是真多任务了。它所谓不支持多任务,只是限制后台程序而已,IOS4以前只有系统程序可以后台,IOS4第三方程序也能后台,这是个功能,而不是局限性。越狱后backgrounder破解这个限制就可以看出,OS本身是支持的,是故意这么设计的。

 

而Windows Phone则不支持paging,因此会有90MB前台,5MB后台的限制,而且一般程序到后台基本是立即结束,不在内存里保持,每次按图标会重新运行,如果按BACK键也不保证能恢复,需要程序代码从session甚至storage里装入状态,大概有最多10秒的时间恢复状态,一般要2秒,在屏幕上会显示“resume...”的样子。

 

其实在手机系统上,这个paging并不是好事。以我们做symbian WDP的经验,这个东西造成系统性能非常不稳定,因为闪存速度太慢,程序运行结果常常不可预料。其实内存不够了就直接杀了后台进程是更好的做法,至少前台程序流畅度保障了。

 

跟帖(3)

?ttу

2011-05-26 17:30:49

据说以前他们是自己写的,后来不灵,乖乖买的相关code

?ttу

2011-05-27 04:33:45

到后台杀死很多事情不能做,好比im - android的内存不够才杀死导致不少

flywhc

2011-05-27 04:49:23

要理解在iOS和WP下IM软件的实现机制