探究Windows RT的系统内存占用

众所周知,Windows 8在推出之时有若干版本,其中就包括了针对ARM平台的Windows RT系统。ARM平台相比于PC平台就有些限制,这里就看看内存的占用量如何。

我这里使用的是华硕TF600T的RT平板,虽然不是Surface RT,但是两者使用的都是类似的硬件配置,系统也都是Windows RT,所以内存的占用也同样有可参考性。

首先我们来看一下系统开机时候的内存:

image

可以看出,系统自身带有了2G的内存,刚开机的时候占用不到500M内存,还是比较少的占用量。下面我们就打开一部分应用来进行测试。Windows 8和Windows RT当中有一个比较奇特的地方,就是置顶情况下的任务管理器在各种应用上面都可以看到,按照上图就可以设置了。

下面依次打开部分应用,首先打开的是地图应用。由于地图应用主要包含了各种图片,所以系统内存上升的比较快,大约为100M。

image

如果你查看“进程”标签页当中的地图应用的话,那么就会发现它占用的内存远小于100M,如图:

image

这里显示的就是程序的专用内存,一个程序跑起来不仅需要自己专用内存,而且系统对于这个程序的管理也是消耗内存的,所以就导致了两者显示内存用量的差别。

之后我们再打开其他的应用,限于篇幅,这里不进行详细的说明了,我将其录制到了一个视频当中,有兴趣的可以在这个地址查看(http://v.youku.com/v_show/id_XNTQ5NTExNzAw.html)

这里主要来说说使用当中遇到的情况:

第一点,就是系统内存不会再应用关闭的时候立即释放。由于商店应用采用的开发框架基于.Net或者HTML5,因此基本就是系统来进行内存调配和回收,这就导致了在应用关闭的若干秒之内,出现系统内存仍然居高不下的情况。比如关闭了地图应用之后,内存使用量没有明显变化,待约5秒过后才会释放出来,释放的大小大约为100M。也就是说待系统回收之后内存的使用量才回落。

第二点,系统内存占用有一个上界,不论打开应用个数的多少。Windows RT的后台机制很好的实现了这一点。

imageimage

如以上两张图所示,不论是横屏还是竖屏状态,使用的时候最多在侧边栏看到6个应用处于停靠的状态。如果当前应用刚切出去则不会立即停止,而是在约15秒之后才会进入挂起状态。当打开更多应用的时候,只保留6个后台应用,从而保证了系统总物理可用内存不会无限制减少。你可以关注任务管理器当中“已提交”这一项,这一项总共4G,为2GB的物理内存+2GB的页面文件(C:\Pagefile.sys)应用打开的时候这一项在增,除非关闭应用,否则这一项不减。系统是自动的将那些不常用的应用的内存移至页面文件当中,待需要使用的时候才调回来。

第三点,就是在体验方面了,就拿切水果来说,载入场景会卡顿,可能是因为要突然加载各种素材导致的,在进入之后就顺畅了。在整个过程中内存并没有明显的变化,因此应该是与处理器的性能有关。

所以总的来说,Windows RT系统对于内存还是友好的,而且使用过程当中内存也并不是一个瓶颈,不用担心因打开应用过多而导致的内存不足的问题。

posted @ 2013-04-28 21:14  Shi Daochen  阅读(470)  评论(0编辑  收藏  举报