 |
|
SQL Server Tips by Burleson |
The debug toolbar
When in debug mode the debug toolbar will show up and it is more
intuitive than using the menus from the IDE. The toolbar has the
following options:
The “Registers” button opens a window with the current values of the
machine registers (in Assembly language, registers are similar to
variables but there is a limited number of them and some have very
specific uses). For the examples in this section only three
registers are worth considering:
ESP Stack Pointer EBP base pointer EIP Instruction Pointer Table
24.1 – registers to consider for the next examples
A brief description of the registers involved in managing call
stacks:
The ESP register contains the address of the top of the stack. Each
element in the stack is 32-bits and the last inserted element is the
first to be removed (LIFO structure). When an element is inserted
(pushed) the ESP register will point to that element in memory and
the same thing will happen when removing (popping) as element.
The EBP register points to the top of the stack when the function
call starts. The stack will store both function parameters passed to
the function and local variables. This particular stack location is
known as SFP (Saved Frame Pointer). When a function ends, ESP will
get the EBP value and EBP will get the value previously stored in
the stack.
The EIP register points to the current memory position where an
Assembly language instruction is under execution.
The above book excerpt is from:
Super SQL
Server Systems
Turbocharge Database Performance with C++ External Procedures
ISBN:
0-9761573-2-2
Joseph Gama, P. J. Naughter
http://www.rampant-books.com/book_2005_2_sql_server_external_procedures.htm |