基于BTS 的 cpuwhere修改版本-支持多核心CPU,支持指定进程BTS
基于BTS 的 cpuwhere修改版本。首先如果不知道什么是BTS的话,自己去GOOGLE.
看雪上也有相关的介绍,可以参考
http://bbs.pediy.com/showthread.php?t=66975
程序是在张银奎先生的基础上修改的,他那个我下来运行直接重启,没办法,自己修改吧。
目前我只在INTEL 的CORE 2 DUO E5400,CORE 2 QUAD Q8300和CORE I5 M450机器上测试通过。
支持环境WINXP ,WIN7 32位。
还有要说明的是,VMWARE不支持BTS的模拟,所以在VMWARE里无法运行,必须在真实机器上跑。还有在真机里面跑的
时候也不要运行VMWARE,否则黑屏重启(连蓝的机会都没,直接黑了重启)。
用法的话,和原来的早期版本差不多。不过因为是多核心了。所以会记录每个CPU中的指令执行流程。记录会相当之多。
比如MAX RECORD如果设为5000的话,在双核上显示5000*2,4核上显示5000*4条记录,会相当的慢,建议自己设置的小点。
在原来的基础上除了对多核心的支持,还增加了只显示RING0,或RING3的记录,可以根据需要选择,默认是都不选,即都显示。
还有就是增加了对指定进程的BTS.BTS默认是CPU的概念,没有进程的概念,通过结合WINDOWS系统的进线程管理,我们可以用来只显示
指定进程的BTS.
如果默认PID为0,则对系统所有的操作,都进行BTS记录。而且会在多个CPU核心上进行显示。
如果设定了要处理的 PID,的话,可以把下面默认的bid to CPU1 选上,这样可以让指定的进程只在CPU 1上运行,便于观察,
否则的话,可能执行的指令会随机的分布于各个CPU核心上,导致分析起来比较困难。
至于能有什么用,你就自己想吧。
反正对我来说基本垃圾,只是用来复习下BTS而已。
最后要说的是,这玩意高度依赖硬件,稳定性是大问题。测试的时候最好有随时重启的准备。哈哈
附带VS2008运行库,以免没安装运行不了程序。
给你置顶推荐一下... 等待BTS完整版、{:301_997:} 使用可以参考
http://advdbg.org/books/swdbg/t_cpuwhere.aspx 邵哥V5 ! 好帖子呀!支持一个先! 虽然看不懂但还是 支持了 {:1_931:}CPU调试软件?牛人的作品啊{:1_932:} 支持楼主的分享