Dump memory

Sephil 2004-03-26 05:03:14
大家都知道,Windows的休眠功能其实就是将整个内存都dump到一个文件中
下次启动是再将数据从文件取出来dump回内存
那么我们怎么将某个进程中所有的数据都dump到一个文件中
又怎么从文件中把数据dump回来呢???

注意,是整个进程的所有内存哦!
...全文
110 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
serafini 2004-04-01
  • 打赏
  • 举报
回复
ding!
Sephil 2004-03-30
  • 打赏
  • 举报
回复
up
shadowstar 2004-03-29
  • 打赏
  • 举报
回复
gz
Sephil 2004-03-29
  • 打赏
  • 举报
回复
jiangchun_xn 2004-03-26
  • 打赏
  • 举报
回复
Haha ,不要忘了,进程的持久性可不一定磁盘能搞的定,比如在等待某个事件,把这个内核对象保存到磁盘似乎没有什么意义
zihan 2004-03-26
  • 打赏
  • 举报
回复
至于我们想自己保存一个进程的所有内容,我认为还是有可能的,可是怎样把保存的数据全部载入内存作为一个进程可能会麻烦一点,因为我们不知道它具体的运行细节.
还有重新载入的时候由于内存地址变了,那么它原来记录的地址可能都无效了,虚拟内存中就更加麻烦

反正就是想不通.
zihan 2004-03-26
  • 打赏
  • 举报
回复
///我一直没搞明白,休眠时dump文件大小和RAM内存一样,但是虚拟内存部分呢?放在哪儿了?
一个进程的虚拟内存是4GB,dump一遍?ReadProcessMemory

这个你应该不用担心,因为虚拟内存正好已经在硬盘上面了,只要关机的时候不要删除就可以了啊,所以只需要Dump物理内存的就可以了.

如果读取内存当中的数据,看来只要windows能区做了,或者我们自己做dll跨进每个进程.
Sephil 2004-03-26
  • 打赏
  • 举报
回复
up
chifengwatch 2004-03-26
  • 打赏
  • 举报
回复
up
jiangchun_xn 2004-03-26
  • 打赏
  • 举报
回复
你在应用层做不到这个把

一般的操作系统的替换中是页面交换(一般使用 LRU),长期不用得被当前使用的替换到磁盘上,使用的时候在替换回来。
NowCan 2004-03-26
  • 打赏
  • 举报
回复
我一直没搞明白,休眠时dump文件大小和RAM内存一样,但是虚拟内存部分呢?放在哪儿了?
一个进程的虚拟内存是4GB,dump一遍?ReadProcessMemory。

1,221

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧