如何在Windows Mobile上增加进程的可用内存?
How can I increase the available memory for a process on Windows Mobile?
我的进程可用的虚拟内存量是32MB,尽管实际RAM要多得多。是否有一种方法(例如函数调用或项目属性)可以增加此限制?我发现极限非常....有限。
我正在通过调用GlobalMemoryStatusEx查看使用情况。如果有什么东西可以设置dwTotalVirtual
成员,那就很有帮助了。
谢谢!
不,没有办法增加。Windows CE 5.0和更早的版本对任何支持的32个并发进程都有32MB的虚拟内存限制。它是内核的一部分。
现在值得一提的是,并不是所有的分配都来自这32MB。从文档(和经验):如果你调用VirtualAlloc, dwSize>= 2mb, flAllocationType设置为MEM_RESERVE, flProtect设置为PAGE_NOACCESS,它会自动保留共享内存区域的内存。这保留了每个进程的虚拟内存。
这意味着您可以VirtualAlloc大区域并使用它,而不会影响32MB插槽限制。
相关文章:
- 是否可以通过C++扩展强制多个python进程共享同一内存
- 可以读入进程内存的最大块大小是多少?
- 如何读取特定地址的进程内存?
- 如何删除列出的"QGraphicsPathItem"对象以控制进程内存使用情况?
- 如何使用带有矢量的 winapi 读取进程内存从另一个进程读取缓冲区?
- 进程间通信堆内存
- Directx 12 :在两个进程之间共享图形内存
- 子进程更新共享 mmap 内存,但父进程没有更改
- 读取进程内存多级指针(DLL 注入)
- 读取进程内存作弊引擎值
- 检测到由于操作系统内存不足而导致子进程终止
- 提升进程间共享内存open_or_create每次都会引发异常
- 获取进程内存信息失败,错误 6 句柄无效
- c++ 读取进程内存基址 + 偏移量不起作用
- 使用加速进程间创建消息队列 - 内存访问冲突
- 如何编辑受保护的进程内存?
- 内核模式驱动程序可以在任何进程上执行读取进程内存吗?
- Boost.进程间内存位置
- 从内存进程中获取信息
- 共享内存进程间通信