你是说context switch的时候paging问题吧?
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的经验,这个东西造成系统性能非常不稳定,因为闪存速度太慢,程序运行结果常常不可预料。其实内存不够了就直接杀了后台进程是更好的做法,至少前台程序流畅度保障了。
?ttу
2011-05-26 17:30:49据说以前他们是自己写的,后来不灵,乖乖买的相关code