[文章标题]:VC利用调试寄存器实现硬件断点源码 [文章作者]:yhswwr(SilenceRet) [作者QQ]:3412259 [编写语言]:C++ [使用工具]:VS2008.VC++9 [本文链接]:http://bbs.pediy.com/showthread.php?p=1122838 [参考链接]:http://bbs.pediy.com/showthread.php?t=107515 [作者声明]:只是感兴趣,没有其他目的.失误之处敬请诸位大侠赐教!(当前行剽窃自justhxy)…
调试寄存器 原理与使用:DR0-DR7 下面介绍的知识性信息来自intel IA-32手册(可以在intel的开发手册或者官方网站查到),提示和补充来自学习调试器实现时的总结. 希望能给你带去有用的信息. (DRx对应任意的一个调试寄存器.LENn对应任意一个长度.Ln对应任意一个局部置位) DR0-DR7可以直接被读写操作(MOV 指令之类的,DRx可以是源操作数也可以是目的操作数) 但是,DRx的访问是需要一定权限的.比如你用MOV操作的话,你需要在实地址模式,系统管理模式(smm)或者在保…
下面介绍的知识性信息来自intel IA-32手册(可以在intel的开发手册或者官方网站查到),提示和补充来自学习调试器实现时的总结. 希望能给你带去有用的信息. (DRx对应任意的一个调试寄存器.LENn对应任意一个长度.Ln对应任意一个局部置位) DR0-DR7可以直接被读写操作(MOV 指令之类的,DRx可以是源操作数也可以是目的操作数) 但是,DRx的访问是需要一定权限的.比如你用MOV操作的话,你需要在实地址模式,系统管理模式(smm)或者在保护模式(CPL设0).如果权限不够,将会…
Windows程序调试系列: 使用VC++生成调试信息 ZhangTao,zhangtao.it@gmail.com, 译自 “Generating debug information with Visual C++”,Oleg Starodumov 出处: http://www.cnblogs.com/itrust/archive/2006/08/17/479603.aspx 引子 当我们使用调试器来调试程序时,我们希望能够单步调试到源代码中,在代码中设置断点,观察变量的值(包括用户自定义的复…
利用CMD查看系统硬件信息对于在windows下查看系统信息大家一定不陌生了,我现在说几个最常用的方法,对命令感兴趣的朋友看看,(给菜鸟看的,老手就不要笑话我了,大家都是从那个时候过来的,^_^).一.图新Shell下:1. 最直观的:(在运行里面输入CMD,以下命令都是在CMD下输入的:)输入 sysdm.cpl, 系统属性. 2. 输入dxdiag 3.输入 start msinfo32,winmsd系统信息 3. 输入 devmgmt.msc,设备管理: 4. 输入 taskmgr (或按…
最近一直在研究Linux下利用GPU进行硬件加速转码的方案,折腾了很久,至今没有找到比较理想的硬加速转码方案.似乎网上讨论这一方案的文章也特别少,这个过程中也进行了各种尝试,遇到很多具体问题,以下便对之前所作的一些工作做一些总结和分享,省的时间长了自己也忘记了,也希望后来者能少走弯路,并找到适合自己的最佳方案. 背景: 项目需要在指定的linux服务器上对视频源进行转码存储,以节省存储空间.操作系统必须是Linux,用来硬加速转码的GPU是nViDIA的GT440. 方案1: 由于nViDIA的…
转自:http://www.cnblogs.com/txw1958/p/phpqrcode.html HP QR Code是一个PHP二维码生成类库,利用它可以轻松生成二维码,官网提供了下载和多个演示demo,查看地址: http://phpqrcode.sourceforge.net/ 下载官网提供的类库后,只需要使用phpqrcode.php就可以生成二维码了,当然您的PHP环境必须开启支持GD2. phpqrcode.php提供了一个关键的png()方法,其中参数$text表示生成二位的的…
简介 让我们从我写这篇文章的原因开始.一天,一个同事让我帮他调试他遇到的问题.所以我看着他在输入代码,这时我注意到下面一行: int test = GetLastError(); 他这样做是因为他想知道错误代码,如果之前的函数失败了.他每次想知道错误代码就加上这一行.我建议他删除所有这些行并在他的监视窗口中使用@ERR伪寄存器.他不知道这是什么,在办公室里到处打听,很多人都不知道,所以我为从来没有听说过伪寄存器的人写了这篇文章. 什么是伪寄存器? 伪寄存器不是当前的硬件寄存器,而是像硬件寄存器一…
转载:https://blog.csdn.net/zfs_kuai/article/details/43646665 转载:https://blog.csdn.net/i_chaoren/article/details/81453142 一.什么是PDB文件 1. PDB文件是"程序数据库" Program Data Base的简称,包含的程序的代码信息 2.通过这个文件我们可以查看对应断电的位置,堆栈信息等内容 3.使用PDB使得我们无需代码也可以掌握程序的堆栈运行状态 二.PDB文…
MEX文件对应的是将C/C++文件语言的编写之后 得到的相关文件加载到Matlab中运行的一种方式, 现对于Matlab 中的某些程序运行效率而言, C/C++ 代码某些算法的领域上面执行效率很高,若能够将两者结合起来使用, 将会使程序运行速率提高很多倍的. 由于MEX的实质在windows的下面就是dll 即动态链接库,因而可以采用 VC++来作为开发和调试 MEX文件的工具. 下面是具体的使用VC++ 6.0 生成一个 可以由Matlab 软件可以运行的MEX的 操作步骤, 1. 首先,通过…