XPerfHelper —— XPerf的Windows命令行脚本生成工具 2013-12-01 Debugging 使用过XPerf的应该都知道,写一个XPerf的命令行是多么的麻烦,如果不太熟悉,需要反复的查看帮助里的参数。所以一般情况下,大家会把命令写到一个cmd或者bat的脚本中,这样就可以双击来使用XPerf,只需要第一次费点心思写脚本罢了。但是我还是觉得,即使是只用写一次脚本,也还是...
使用ETW对程序进行监控和分析 2013-11-17 Debugging ETW(Event Tracing for Windows)是Windows提供的对程序进行事件记录,跟踪,使用的机制。我们可以利用这个机制对程序进行调试和性能分析。从Windows Vista开始,ETW已经非常好的融合在Windows内核之中了,在Windows 7开始,这一...
Windbg script中获得调试环境的基本信息 2013-11-01 Debugging 今天继续来玩Windbg script。在写复杂的脚本的时候,可能需要根据调试的环境,指定不同的脚本代码来运行。而Windbg貌似没有提供很好的方式,让脚本得知调试环境。还好,我们可以用一些其他的方式获得这些信息,例如:写一个扩展程序来设置这些信息到Aliase上,0cchext...
Windbg script的notepad++语法高亮配置文件 2013-10-15 Debugging 经常写复杂的windbg脚本的程序员肯定知道,windbg脚本的宏替换的执行方式,让人非常的不舒服。另外windbg的脚本也没有一个好用的语法高亮编辑器,所以让脚本写起来更加痛苦。前者看来是已成定局,很难解决了。不过后者还是有机会改善的,闲暇之余,写了一个notepad++上的w...
Windbg内核调试查看窗口句柄信息的脚本 2013-10-07 Debugging 十一长假瞬间就结束了,整一周都在玩,也没有研究什么好玩的东西,这里就分享一个以前写的windbg脚本吧。通途是内核调试查看窗口句柄信息。用法很简单,例如 $$>a<hwnd.wds 000207B8。运行结果如下图: $$ Convert HWND to tagWn...
解析youku视频地址的python脚本 2013-09-28 Tips 几个月前写的东西,偶然翻出来发现还能用,就贴出来吧。非专业python程序员,代码比较乱 :-( ''' Created on 2013-3-6 @author: nightxie ''' import sys import urllib.request import ur...
Floppy Disk Controller编程 2013-09-21 MiniKernel 看的没错,这篇文章将描述一些关于Floppy Disk Controller的编程知识。我们知道,在当今的计算机硬件体系中,软盘驱动器是一个已经完全被淘汰的设备,那么为什么还要有这样一篇文章?原因很简单,如果想构建自己的操作系统,必须有相应的存储介质,而软盘正是这样一个好的存储...
使用Windbg Logexts监控程序API调用 2013-09-14 Debugging 在我们调试BUG和逆向程序的时候,往往需要监控一些API的调用。这个时候我们可以借助调试器和第三方工具完成这样的任务。例如调试器可以下断点查看栈状态得到相关信息,或者使用第三方工具如API Monitor可以方便的监控API的调用。不过,这篇文章中想说的是另一个工具,Windbg...
Windows7下控制单个进程音量的小技巧 2013-09-10 Tips 如上图所示,Windows7下有一个很有趣的功能,就是可以给单独的进程调节音量。出于好奇,在网上翻了下资料,原来这个功能要归功于Windows7上新的音频接口——Core Audio APIs。这套API是用COM写,各种接口也比较多。但是如果我们的目的只是控制单个进程的音量,...
使用PCI IDE Controller读写硬盘 – 2 2013-08-31 MiniKernel 上一篇文章简单介绍了用PIO的方式读写硬盘数据,那么这篇文章就来介绍另一种数据传输的方式——DMA。 DMA全称是Direct memory access,以下依旧是wiki上的一段简短的介绍:“直接存储器访问(Direct Memory Access,DMA)是计算机科学中的...