Archive for September 27th, 2006

Practical Foundations of Debugging

Wednesday, September 27th, 2006

HTML version of selected lecture materials from my forthcoming book is available on my personal web site:

http://www.dumpanalysis.org/blog/index.php/foundations-of-debugging-x86/

Topics available online include:

  • Memory, registers and simple arithmetic 
  • Number representations and pointers
  • Bytes, words, double words and pointers to memory
  • Instruction pointer and disassembling a program with pointers
  • Memory and stacks
  • Frame pointer and local variables
  • Function parameters
  • Function pointer parameters
  • Virtual memory, processes and threads
  • Arrays and structures in memory

In addition to x86 (32-bit) the book covers assembler, C/C++ and crash dump analysis on the following platforms: 

  • x64 Windows
  • Windows Mobile (ARM processors)

It will include an educational version of x86/x64/ARM4 assembler and interpreter written using modern C++ and STL (including UML diagrams of all classes and components) and much more! Although all this bonus stuff is still under development it is actually working, compiling, loading and executing/interpreting small assembly language programs.

I’m also planning to publish an Internet version of this assembly language interpreter to run small educational assembly language programs anytime, anywhere. The latter Citrix-like goal is actually the part of my Masters degree project. 

- Dmitry Vostokov -