是否有任何库或软件或以任何方式将Windows中单个进程的状态保存到文件中,然后将正在运行的进程恢复到运行状态,以后所有内存都已加载?
我知道必须重新打开打开句柄,可能必须启动线程等,但是堆和单个线程堆栈是否至少可以恢复?
我看到了this question,但答案都是针对linux的,大多数人都认为无法完成。
我知道我可以将所有数据结构序列化并自己完成,但我想知道没有它是否可行。
答案 0 :(得分:6)
Raymond Chen(当谈到模糊的Windows知识时,他甚至可能会踢Jon Skeet的屁股)it isn't possible。
基本上,除非您的进程绝对不使用系统资源(例如任何类型的句柄),否则总会出现一些无法保存和恢复的操作系统状态。
解决此问题最实用的方法是创建一个运行另一个Windows实例的VM并在其中运行您的进程:
答案 1 :(得分:1)
>> •您可以使用nLite使客户操作系统尽可能轻量级。
添加到上述声明中 - Windows XP的官方轻量级版本是“XP Embedded”或“Windows Embedded Standard”。它是一个重度组件化的XP版本,可以让你将XP图像缩小到40 MB。
Windows 7的“轻量级”版本是Windows Embedded Standard 2011,目前处于测试版并可供下载(connect.microsoft.com/windowsembedded)
当然,与NLite不同,它不是免费软件。
谢谢,
SRIKANTH