有这种想法,当感觉有点迷惑,提出来供高手们探讨
1. 如果要抓取内存,必须通过自己写程序来实现,而这个运行起来的程序是一个进程,操作系统已经把它能范围的内存空间同其它进程隔离起来,访问操作系统全局内存空间是个问题;另一方面,在抓取内存的进程也要占用全局内存,它的启动会覆盖一部分内存。
2. Google了一下,找到一个IBM服务内存镜像的解决方案,它和磁盘Raid1差不多,有两块相同的内存,一块负责备份用。这种方案目前不能满足现在的要求
3. 操作系统的休眠机制,虚拟机的挂起机制,应该使用了把内存保存到文件的技术,但操作系统又是如何做到这一点的呢?
4. 有关虚拟内存,操作系统pagefile.sys是否有可直接分析方法?以上疑问提出来,但愿能够起到抛砖引玉的作用,供高手探讨

解决方案 »

  1.   

    写驱动应该可以实现。
    就像windows蓝屏时可以dump转存那样
      

  2.   

    vista上,任务管理器可以直接产生dump文件,可以选择内存dump
      

  3.   

    ReadProcessMemory  读内存
      

  4.   

    直接访问物理内存   
      http://www.csdn.net/develop/read_article.asp?id=22076
      

  5.   

    单个进程的dump 可以OpenProcess 然后热ReadProcessMemory,也可以使用window提供的调试工具windbg内核应该有接口函数
      

  6.   

    继续顶,物理内存如何dump出来?