x86架构常用寄存器及汇编指令
x86架构作为个人计算机和服务器领域的主流计算架构,其汇编语言是理解计算机底层运行机制、进行逆向工程、性能优化及嵌入式开发的核心基础。本文将系统梳理x86架构中的常用寄存器和常用汇编指令,并结合实际应用场景说明其作用。
x86架构作为个人计算机和服务器领域的主流计算架构,其汇编语言是理解计算机底层运行机制、进行逆向工程、性能优化及嵌入式开发的核心基础。本文将系统梳理x86架构中的常用寄存器和常用汇编指令,并结合实际应用场景说明其作用。
Visual Studio 的断点系统远不止”在代码行上点击左侧边栏”那么简单。掌握其高级功能可以彻底改变你的调试体验,让你能精准定位问题,而不是在无尽的代码执行中盲目搜索。本文将带你全面了解 Visual Studio 断点系统的各项高级功能。 条...
Windbg 是 Microsoft 公司推出的免费的、带 GUI 的调试器,支持 Source 和 Assembly 两种模式的调试。 Windbg 不仅可以调试应用程序,还可以进行系统内核调试,Windbg 支持的平台包括 X86、IA64、AMD64。
一. 显示堆栈信息k*命令 1234[~Thread] k[b|p|P|v] [c] [n] [f] [L] [M] [FrameCount][~Thread] k[b|p|P|v] [c] [n] [f] [L] [M] = BasePtr [FrameCount][~Thread] k[b|p|P|v] [c] [n] [f] [L] [M] = BasePtr StackPtr InstructionPtr[~Thread] kd [WordCount]
本文通过一个实例来讲解如何使用WinDbg来调试Windows CriticalSection死锁的问题。 一. 演示示例这里有一个关键区锁死问题的程序,运行之后依次点击“CS锁死”按钮、右上角退出按钮,程序就会卡死。 对于眼下的这个问题,界面完全失去响应,这说明负责消息处理的UI线程阻塞了。 对于几乎所有的windows GUI程序,编号为0的初始线程就是UI线程,windows发现该界面一段时间没有消息响应之后就会在标题后面加上“(未响应)”。
本文通过一个实例来讲解如何使用WinDbg来调试Windows Mutex死锁的问题。
本文记录一个由错误使用StringCchVPrintf等格式化函数所导致的崩溃问题。
一、启动GDBgdb -tui:分屏显示源代码gdb -q:不显示开始的提示信息 可以在.bashrc中加入别名: 1alias gdb="gdb -q -tui"