-
-
关于跟踪内存变化的问题
-
发表于:
2005-9-28 10:24
6702
-
跟踪每一步机器指令引起的内存变化,把它记录下来,可以用于以后的数据流反向跟踪。
我试验了一下,用singleStep来运行一个程序,在AMD2400+,512M内存情况下,在响应SingleStep调试事件处理函数中,什么都不作,仅仅统计运行过的指令数,1分钟可以运行200万行代码。
估计如果在SingleStep中,加上相应的反汇编,内存记录,大概一分钟最多只能运行50万行。
对“计算器”这个小程序来说,从启动到可以看到界面显示,要200万行。
而对一些游戏来说,比如从登录的OnOk到recv得到数据包,至少要几千万行吧,这样的量对SingleStep跟踪是不合适的,1是速度太慢,2占用硬盘太大,3可能会让服务器觉得你超时,根本就不理你了。
如果做成进程内的Trace,速度可能会快,但占用硬盘的问题恐怕还是没解决。
大家有什么考虑吗?
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)