wince的内存管理

ssssssss   2009-12-29 16:44 楼主
wince支持的最大物理内存是512MB,也就是如果我做一个硬件系统的话,使用SDRAM则最大是512MB,再大就不能用了(一般情况,不考虑通过特殊方法实现),但是wince 又说,低2GB的用户空间被分成64个32MB的slot,1~slot32保留给要加载的每个进程,最多支持32个进程,每个进程占用一个slot,也就是32MB。
这样我运行一个进程就占用32MB的内存吗?要是17个进程就是17*32=544MB 超过了512MB。难道这些线程不在内存中运行!!!?

512MB的内存和虚拟地址的0x80000000~0xC0000000(1024MB) 又是什么关系呢?

ARM寻址空间是4GB吧,用掉512MB,其他的只能用到ROM了 吗????
哎,这些问题,真难解啊!!

回复评论 (14)

进程只是在虚拟地址中啊,运行到了才会替换到内存中吧
你看内存映射表都是映射0x80000000以后的地址,0x80000000以前的应该就是低2GB的用户空间
点赞  2009-12-29 16:55
就像只有一个能放一本书的书桌,和能放N本书的书柜,书桌只有一个,你却能看所有的书。
书桌和书柜  就是物理内存和2GB的用户空间的关系吧
点赞  2009-12-29 16:59
楼主正解。

另外楼主还有疑问的话,就去下载下:
WindowsEmbedded从入门到精通系列课程40 深度探索Windows CE的内存管理机制.wmv ,讲得比较清楚;
下载地址为:
http://www.msdnwebcast.com/webcast/2006.aspx

点赞  2009-12-29 17:04
你的意思是,
比如我在wince中运行了一个word程序。
那么,wince先把word程序复制到ram中,然后,把slot0 指向这个地址运行。
如果我再运行一个贪吃蛇的游戏(word程序没有关闭),wince也会把贪吃蛇的程序复制到ram中,然后再把slot0,指向这个地址空间。
那这样word程序的ram空间和贪吃蛇的ram空间肯定是分开的。
如果我把word程序关闭,那么这块ram空间就可以重复利用,但是我不关闭的话就会占用ram。(这有个问题,占用的ram是32MB还是,小于32MB?)
但是如果在wince下打开17个不同的应用程序,那样不就内存不够了,17个还没有到wince支持的32个呢?
点赞  2009-12-29 17:08
我怎么感觉即使WORD不关闭,贪吃蛇程序也可能占用WORD占用的RAM空间呢
反正暂时也不用,用时再整过来不就行了  

纯属个人观点,我也讲不明白,哈哈。。。。

点赞  2009-12-29 17:27
引用: 引用 3 楼 kyzf 的回复:
楼主正解。

另外楼主还有疑问的话,就去下载下:
WindowsEmbedded从入门到精通系列课程40 深度探索Windows CE的内存管理机制.wmv ,讲得比较清楚;
下载地址为:
http://www.msdnwebcast.com/webcast/2006.aspx

这个不错。
点赞  2009-12-29 17:54
虚拟内存和物理内存的概念看一下就明白了
点赞  2009-12-29 18:18
up
点赞  2009-12-31 08:13
依然不懂啊
点赞  2010-1-7 16:56
Wince和Windows Mobile下的内存监控 http://www.cnblogs.com/procoder/archive/2009/04/01/1427187.html
点赞  2010-1-7 18:27
引用: 引用 3 楼 kyzf 的回复:
楼主正解。

另外楼主还有疑问的话,就去下载下:
WindowsEmbedded从入门到精通系列课程40 深度探索Windows CE的内存管理机制.wmv ,讲得比较清楚;
下载地址为:
http://www.msdnwebcast.com/webcast/2006.aspx


kyzf总是这么乐于助人,不赞不行啊。我顶顶顶
谢啦
点赞  2010-1-7 19:14
帮顶,应该就是物理空间与虚拟空间的映射的问题,进程运行在虚拟空间上面,同一片物理空间可以与不同的虚拟空间构成映射的。。。
点赞  2010-1-7 19:52
何宗键老师的windows ce 嵌入式系统一书中对wince内存管理说的还算详细,有可能拿来看看
点赞  2010-1-10 17:47
呵呵,这个2G啥的,指的是虚拟内存呢。不是物理内存。
点赞  2010-1-10 18:14
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复