| 
			 
					阅读:1365回复:7
				 
				如何对指定的进程\"存点\"?
					请教各位大虾:
 
							有没有办法在一个进程运行到某个时候时把它的\"状态\"进行一次\"存点\",使得这个进程可以在某个时候能回到这个状态重新运行?就像游戏里面的存点一样?多谢了。  | 
	|
| 
			 沙发# 
								发布于:2005-03-12 09:29				
			
					游戏里面的存点是因为它自己知道哪些是可变数据,仅存这些就可以了
 
							你要存任何程序的,只能是暂停该进程,将其这个模块module在内存中所有数据都保存才可以  | 
	|
					
						
  | 
	
| 
			 板凳# 
								发布于:2005-03-12 10:42				
			游戏里面的存点是因为它自己知道哪些是可变数据,仅存这些就可以了 说起来容易,做起来难......  | 
	|
					
						
  | 
	
| 
			 地板# 
								发布于:2005-03-12 11:40				
			
					要suspend一个线/进程倒是不难,SuspendThread()可以suspend用户态的代码。但是要保存一个线程的“状态”,就没有思路了。到底要保存些什么呢? :(				 
							 | 
	|
| 
			 地下室# 
								发布于:2005-03-12 11:42				
			
					对的。。而且游戏的存点也不那么容易。而且如果有图形界面的话,可能不光是内存,,还有显存的相应内容呢!				 
							 | 
	|
| 
			 5楼# 
								发布于:2005-03-12 11:50				
			要suspend一个线/进程倒是不难,SuspendThread()可以suspend用户态的代码。但是要保存一个线程的“状态”,就没有思路了。到底要保存些什么呢? :( PE加载到内存,基本跟PE的文件相同,.text节区基本不用保存,.data节区必须保存,堆和堆栈必须保存,还有文件中的未初始化但在内存中要初始化的,忘了是什么节区了,看PE文件格式就知道了。  | 
	|
					
						
  | 
	
| 
			 6楼# 
								发布于:2005-03-12 14:45				
			
					线程调度的时候,根本就不调度这个线程呢?				 
							 | 
	|
| 
			 7楼# 
								发布于:2005-03-13 17:03				
			线程调度的时候,根本就不调度这个线程呢? 不行去在系统高端找这个进程对应的页目录桢  | 
	|
					
						
  |