|
各位前辈好!
目前在对于在CE6.0的ce.bib调试理解上遇到了一些困难,希望各位能解答一下....
我查看ce.bib里面的配置
NK 80220000 009E0000 RAMIMAGE (约10MB)
RAM 80C00000 01000000 RAM (约16MB)
得知了在虚拟内存 static mapped cached 里面0x80220000 位址开始配置 NK区的内存范围
也从此得知NK.bin的大小为26B
经查询MSDN及板上各位的文章,
略知 RAMIMAGE :为专用于保存镜像的内存区域
RAM :运行所有进程的内存区域
可是问题来了,在使用KITL载入CE后,开启 Remote Process Viewer查看
发现 只有 NK.exe kernel.dll kitl.dll的base address在上述设定的 NK 区
其余的有如 filesys ioctrl皆在C000 0000以后的Kernel XIP DLLS区
这个结果让我搞不清楚 RAMIMAGE 和 RAM 区的用意何在??
目前我的想法是,当开机后,会将NK.bin 解压缩 映射到static mapped cached 区 然后开始startup()
中间并把kernel space 所会使用到的所有dll从"NK区" 拷贝到 "Kernel XIP DLLS区",
user space 会用到的dll 则从 "NK区" 拷贝到 "user dll区(0x4000 0000以上)"
上述是我的疑问和目前的想法,有任何思考错误或答案,真的要麻烦高手们解答了!
|
|